Tags:
- 💥 [Breaking Change]
- 👓 [Spec Compliance]
- 🚀 [New Feature]
- 🐛 [Bug Fix]
- 📝 [Documentation]
- 🏠 [Internal]
- 💅 [Polish]
- Emit an error when a
@string
or@int
attribute is used in a V4 component rescript-lang/rescript#5724
-
Add surface syntax for
async
/await
rescript-lang#600 -
Initial support for JSX V4, still work in progress.
- 💥 when V4 is activated, at most one component is allowed for each module.
-
Add support for empty record literal
{}
for records with only optional fields, and type definition of empty record (e.g.type empty = {}
) rescript-lang#632 -
Support the use of spread anywhere in list creation (e.g. `list{...x, 1, ...y, ...z}). rescript-lang#692
-
Add support for the argument of
@react.component
to set a props type from the outside. rescript-lang#699
- Fix issue in formatting JSX spread props rescript-lang#644
- Fix pretty printer where it would print doc comments on the same line as other attributes rescript-lang#642
- Fix location issue in error messages with JSX V4 where the body of the component is an application rescript-lang#633
- Fix issue where the printer would omit attributes for
->
and|>
rescript-lang#629 - Fix printing of optional fields in records rescript-lang/rescript#5654
- Fix printing of comments inside empty blocks rescript-lang#647
- Fix location issue in error messages with JSX V4 where the multiple props types are defined rescript-lang#655
- Fix location issue in make function in JSX V4 that breaks dead code elimination rescript-lang#660
- Fix parsing (hence pretty printing) of expressions with underscore
_
and comments. - Fix printing of comments inside JSX tag rescript-lang#664
- Fix issue where formatter erases tail comments inside JSX tag rescript-lang#663
- Fix issue where the JSX prop has type annotation of the first class module rescript-lang#666
- Fix issue where a spread
...x
in non-last position would not be reported as syntax error rescript-lang#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#680 - Fix issue where certain JSX expressions would be formatted differenctly in compiler 10.1.0-rc.1 rescript-lang#675
- Fix issue where printing nested pipe discards await rescript-lang#687
- Fix issue where the JSX key type is not an optional string rescript-lang#693
- Fix issue where the JSX fragment without children build error rescript-lang#704
- Fix issue where async as an id cannot be used with application and labelled arguments rescript-lang#707
- Treat await as almost-unary operator weaker than pipe so
await foo->bar
meansawait (foo->bar)
rescript-lang#711
- Functions with consecutive dots now print as multiple arrow functions like in JavaScript.
- Change the internal representation of props for the lowercase components to record. rescript-lang#665
- Change the payload of Pconst_char for type safety. rescript-lang/rescript#5759
- Specialize the printing of the rhs of a record field assignment for optional values
{x: ? e}
rescript-lang#714
- Fix printing for inline nullary functor types #477
- Fix stripping of quotes for empty poly variants #474
- Implement syntax for arity zero vs arity one in uncurried application in #139
- Fix parsing of first class module exprs as part of binary/ternary expr in #256
- Fix formatter hanging on deeply nested function calls #261
- Remove parsing of "import" and "export" which was never officially supported.
- Fix parsing of poly-var typexpr consisting of one tag-spec-first in #254
- Implement new syntax for guards on pattern match cases in #248
- Implement intelligent breaking for poly-var type expressions in #246
- Improve indentation of fast pipe chain in let binding in #244
- Improve printing of non-callback arguments in call expressions with callback in #241
- Fix printing of constrained expressions in rhs of js objects #240
- Improve printing of trailing comments under lhs of "pipe" expression in #329
- Improve printing of jsx children and props with leading line comment in #236
- Improve conversion of quoted strings from Reason in #238
- Print attributes/extension without bs prefix where possible in #230
- Cleanup gentype attribute printing fe05e1051aa94b16f6993ddc5ba9651f89e86907
- Implement light weight syntax for poly-variants f84c5760b3f743f65e934195c87fc06bf88bff75
- Fix bug in fast pipe conversion from Reason. 3d5f2daba5418b821c577ba03e2de1afb0dd66de
- Improve parsed AST when tilde is missing in arrow expr parameters. e52a0c89ac39b578a2062ef15fae2be625962e1f
- Improve parser diagnostics for missing tilde in labeled parameters. a0d7689d5d2bfc31dc251e966ac33a3001200171
- Improve printing of uncurried application with a huggable expression in c8767215186982e171fe9f9101d518150a65f0d7
- Improve printing of uncurried arrow typexpr outcome printer in 4d953b668cf47358deccb8b730566f24de25b9ee
- Remove support for nativeint syntax in 72d9b7034fc28f317672c94994b322bee520acca
- Improve printing of poly variant typexprs with attributes in bf6561b
Released in https://github.com/rescript-lang/syntax/releases/tag/v8.4.2 as part of https://github.com/rescript-lang/rescript-compiler/releases/tag/8.4.2