Skip to content

Releases: rescript-lang/rescript

10.1.2

29 Jan 20:25
13b9572
Compare
Choose a tag to compare

🐛 Bug Fix

  • Fix an issue where error messages related to duplicate props were displayed without a loc and were unclear rescript-lang/syntax#728

10.1.1

05 Jan 16:40
92c23e8
Compare
Choose a tag to compare

💥 Breaking Change

  • Parse the attributes of labelled argument to the pattern attributes of argument instead of function. rescript-lang/syntax#722
  • The prop names duplicated to keyword are not mangled automatically in JSX v4.
    • Use @as instead

🚀 New Feature

  • Add support for empty inlined record literal {} for inlined records where all fields are optional #5900

🐛 Bug Fix

  • Prevent inlining of async functions in additional cases #5860
  • Revert to ubuntu-18.04 in CI to support Linux versions with older glibc #5868
  • Fix build error where aliasing arguments to _ in the make function with JSX V4. rescript-lang/syntax#720
  • Fix parsing of spread props as an expression in JSX V4 rescript-lang/syntax#721
  • Fix dropping attributes from props in make function in JSX V4 rescript-lang/syntax#723

10.1.0

27 Nov 09:38
192bbd8
Compare
Choose a tag to compare

🐛 Bug Fix

  • Fix issue where no error was reported when ? was used for non-optional fields. #5853
  • Fix issue where optional fields in inline records were not supported and would cause type errors #5827

10.1.0-rc.5

09 Nov 14:24
2f41b75
Compare
Choose a tag to compare
10.1.0-rc.5 Pre-release
Pre-release

🐛 Bug Fix

  • Prevent inlining of async functions in last stage of the compiler when the functions are not exported (not in interface file or shadowed) #5790

10.1.0-rc.4

05 Nov 06:37
b34dbd0
Compare
Choose a tag to compare
10.1.0-rc.4 Pre-release
Pre-release

🚀 New Feature

  • Support format check with rescript format -check. #5760

🐛 Bug Fix

  • Fix issue where the last line of rescript format --help usage was being swallowed #5760
  • Specialize the printing of the rhs of a record field assignment for optional values {x: ? e} rescript-lang/syntax#714

10.1.0-rc.3

31 Oct 16:19
344a3b7
Compare
Choose a tag to compare
10.1.0-rc.3 Pre-release
Pre-release

🚀 New Feature

🐛 Bug Fix

💅 Polish

10.1.0-rc.2

16 Oct 14:27
dca052b
Compare
Choose a tag to compare
10.1.0-rc.2 Pre-release
Pre-release

🐛 Bug Fix

  • Fix issue with changes not being applied with React Native's Metro bundler for files with warnings #5738
  • Fix emitting unary minus for floats in case of negative constants #5737
  • Fix issue where a spread ...x in non-last position would not be reported as syntax error rescript-lang/syntax#673
  • Fix issue where the formatter would delete async in a function with labelled arguments.
  • Fix several printing issues with async including an infinite loop rescript-lang/syntax#680
  • Fix issue where certain JSX expressions would be formatted differenctly in compiler 10.1.0-rc.1 rescript-lang/syntax#675
  • Fix issue where printing nested pipe discards await rescript-lang/syntax#687

10.1.0-rc.1

13 Oct 11:04
Compare
Choose a tag to compare
10.1.0-rc.1 Pre-release
Pre-release

💥 Breaking Change

  • Deprecate DOM element attributes in JsxDOM.domProps: begin_, end_, to_
    • Use begin, end, to instead.
  • Emit an error when a @string or @int attribute is used in a V4 component #5724

🚀 New Feature

  • Add extra variants for output filename suffixes in bsconfig.json: .bs.mjs and .bs.cjs are allowed #5631
  • Safe promises: t-first Js.Promise2 bindings, and remove warning for nested promises #5709

🐛 Bug Fix

  • Fix issue where uncurried async functions were emitted without async #5718
  • Fix location issue in error messages with JSX V4 where the multiple props types are defined rescript-lang/syntax#655
  • Fix location issue in make function in JSX V4 that breaks dead code elimination rescript-lang/syntax#660
  • Fix parsing (hence pretty printing) of expressions with underscore _ and comments.
  • Fix printing of comments inside JSX tag rescript-lang/syntax#664
  • Fix issue where formatter erases tail comments inside JSX tag rescript-lang/syntax#663
  • Fix issue where the JSX prop has type annotation of the first class module rescript-lang/syntax#666
  • Fix issue where an empty record literal {} expected to have a non-record type would type check #5729

👓 Spec Compliance

  • Functions with consecutive dots now print as multiple arrow functions like in JavaScript.

💅 Polish

  • Add loading, aria-* DOM element attributes in JsxDOM.domProps: ariaCurrent, ariaInvalid, ariaAutocomplete, etc.
  • Change the internal representation of props for the lowercase components to record. rescript-lang/syntax#665

10.1.0-alpha.2

23 Sep 18:08
Compare
Choose a tag to compare
10.1.0-alpha.2 Pre-release
Pre-release

🚀 New Feature

  • Fix pretty printer where it would print doc comments on the same line as other attributes rescript-lang/syntax#642
  • Propagte "jsx" configuration to dependencies #5661
  • Add support for empty record literal {} for records where all fields are optional #5658
  • Add support for empty record type (e.g. type empty = {}) #5658

🐛 Bug Fix

  • Fix issue in formatting JSX spread props rescript-lang/syntax#644
  • Fix location issue in error messages with JSX V4 where the body of the component is an application rescript-lang/syntax#633
  • Fix printing of type declarations in error message where they would be considered recursive by default
  • Fix issue where the printer would omit attributes for -> and |> rescript-lang/syntax#629
  • Fix printing of optional fields in records #5654

💅 Polish

10.1.0-alpha.1

10 Sep 09:12
95429e5
Compare
Choose a tag to compare
10.1.0-alpha.1 Pre-release
Pre-release

💥 Breaking Change

  • Vendor genType, which does not need to be installed separately anymore. Only TypeScript back-end supported.
  • Pipe -> does not support a code block on the right-hand side e.g. x->{ open A; get("test") }

🚀 New Feature

  • Experimental support for for async/await #5537

  • Make promise a built-in type #5650

  • Initial support for JSX V4 including genType, still work in progress.

    • 💥 when V4 is activated, at most one component is allowed for each module.
  • Add placeholder types for ES6 collections: Set, Map, WeakSet, and WeakMap #5630

🐛 Bug Fix

  • Fix issue with arrays and creation of recursive values #5640
  • Fix issue where characters such as newlines would be escaped in a template string expression #5638
  • Fix issue where pipe -> processing eats up attributes #5581
  • Fix issue where cancelling rescript build would leave the .bsb.lock file behind and block future builds

💅 Polish

  • Print patterns in warnings using rescript printer #5492