You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+20-17Lines changed: 20 additions & 17 deletions
Original file line number
Diff line number
Diff line change
@@ -26,10 +26,12 @@
26
26
- Compact output for anonymous functions. https://github.com/rescript-lang/rescript-compiler/pull/6945
27
27
28
28
#### :bug: Bug Fix
29
+
29
30
- Fix issue where long layout break added a trailing comma in partial application `...`. https://github.com/rescript-lang/rescript-compiler/pull/6949
30
31
- Fix incorrect format of function under unary operator. https://github.com/rescript-lang/rescript-compiler/pull/6953
31
32
- Fix incorrect incorrect printing of module binding with signature. https://github.com/rescript-lang/rescript-compiler/pull/6963
32
33
- Fix incorrect printing of external with `@as` attribute and `_` placholder (fixed argument). https://github.com/rescript-lang/rescript-compiler/pull/6970
34
+
- Disallow spreading anything but regular variants inside of other variants. https://github.com/rescript-lang/rescript-compiler/pull/6980
33
35
34
36
#### :house: Internal
35
37
@@ -262,7 +264,7 @@
262
264
263
265
#### :rocket: New Feature
264
266
265
-
- Experimental support of tagged template literals, e.g. ```sql`select * from ${table}```. https://github.com/rescript-lang/rescript-compiler/pull/6250
267
+
- Experimental support of tagged template literals, e.g. ``sql`select * from ${table}``. https://github.com/rescript-lang/rescript-compiler/pull/6250
266
268
- Experimental support for generic/custom JSX transforms. https://github.com/rescript-lang/rescript-compiler/pull/6565
267
269
-`dict` is now a builtin type. https://github.com/rescript-lang/rescript-compiler/pull/6590
268
270
@@ -442,7 +444,7 @@ No changes compared to rc.9.
442
444
443
445
#### :boom: Breaking Change
444
446
445
-
- Stop mangling object field names. If you had objects with field names containing "__" or leading "_", they won't be mangled in the compiled JavaScript and represented as it is without changes. https://github.com/rescript-lang/rescript-compiler/pull/6354
447
+
- Stop mangling object field names. If you had objects with field names containing "\__" or leading "_", they won't be mangled in the compiled JavaScript and represented as it is without changes. https://github.com/rescript-lang/rescript-compiler/pull/6354
446
448
447
449
#### :bug: Bug Fix
448
450
@@ -497,7 +499,7 @@ No changes compared to rc.9.
497
499
498
500
#### :rocket: New Feature
499
501
500
-
- Introduced a new `%ffi` extension (*experimental* - not for production use!) that provides a more robust mechanism for JavaScript function interoperation by considering function arity in type constraints. This enhancement improves safety when dealing with JavaScript functions by enforcing type constraints based on the arity of the function. https://github.com/rescript-lang/rescript-compiler/pull/6251
502
+
- Introduced a new `%ffi` extension (_experimental_ - not for production use!) that provides a more robust mechanism for JavaScript function interoperation by considering function arity in type constraints. This enhancement improves safety when dealing with JavaScript functions by enforcing type constraints based on the arity of the function. https://github.com/rescript-lang/rescript-compiler/pull/6251
501
503
- Extended untagged variants with function types. https://github.com/rescript-lang/rescript-compiler/pull/6279
502
504
503
505
#### :boom: Breaking Change
@@ -575,14 +577,14 @@ No changes compared to rc.9.
575
577
576
578
#### :bug: Bug Fix
577
579
578
-
- Fix broken formatting in uncurried mode for functions with _ placeholder args. https://github.com/rescript-lang/rescript-compiler/pull/6148
580
+
- Fix broken formatting in uncurried mode for functions with \_ placeholder args. https://github.com/rescript-lang/rescript-compiler/pull/6148
579
581
- Fix issue where spreading record types with optional labels would not have their labels preserved as optional. https://github.com/rescript-lang/rescript-compiler/pull/6154
580
582
- Fix error location to be the type with the spreads when spreading record types with duplicate labels. https://github.com/rescript-lang/rescript-compiler/pull/6157
581
583
- Disable warning on `@inline` attibute on uncurried functions. https://github.com/rescript-lang/rescript-compiler/pull/6152
582
584
- Support doc comments on arguments of function types. https://github.com/rescript-lang/rescript-compiler/pull/6161
583
585
- Fix issue with record type coercion and unboxed. https://github.com/rescript-lang/rescript-compiler/issues/6158
584
586
- Fixed subtype checking for record types with "@as" attributes: The subtype relationship now takes into account the compatibility of "@as" attributes between corresponding fields, ensuring correctness in runtime representation.
- Add error message to private extension. https://github.com/rescript-lang/rescript-compiler/pull/6175
588
590
@@ -611,7 +613,6 @@ No changes compared to rc.9.
611
613
612
614
- Special case generation of uncurried functions with 1 argument of unit type so they don't take a parameter. https://github.com/rescript-lang/rescript-compiler/pull/6131
613
615
614
-
615
616
# 11.0.0-alpha.1
616
617
617
618
#### :rocket: Main New Feature
@@ -622,16 +623,16 @@ No changes compared to rc.9.
622
623
#### :rocket: New Feature
623
624
624
625
- Add support for uncurried mode: a mode where everything is considered uncurried, whether with or without the `.`. This can be turned on with `@@uncurried` locally in a file. For project-level configuration in `bsconfig.json`, there's a boolean config `"uncurried"`, which propagates to dependencies, to turn on uncurried mode.
625
-
Since there's no syntax for partial application in this new mode, introduce `@res.partial foo(x)` to express partial application. This is temporary and will later have some surface syntax.
626
-
Make uncurried functions a subtype of curried functions, and allow application for uncurried functions.
627
-
The `make` function of components is generated as an uncurried function.
628
-
Use best effort to determine the config when formatting a file.
Since there's no syntax for partial application in this new mode, introduce `@res.partial foo(x)` to express partial application. This is temporary and will later have some surface syntax.
627
+
Make uncurried functions a subtype of curried functions, and allow application for uncurried functions.
628
+
The `make` function of components is generated as an uncurried function.
629
+
Use best effort to determine the config when formatting a file.
- Customization of runtime representation of variants. This is work in progress. E.g. some restrictions on the input. See comments of the form "TODO: put restriction on the variant definitions allowed, to make sure this never happens". https://github.com/rescript-lang/rescript-compiler/pull/6095
- Add support for unary uncurried pipe in uncurried mode https://github.com/rescript-lang/rescript-compiler/pull/5804
633
634
- Add support for partial application of uncurried functions: with uncurried application one can provide a
634
-
subset of the arguments, and return a curried type with the remaining ones https://github.com/rescript-lang/rescript-compiler/pull/5805
635
+
subset of the arguments, and return a curried type with the remaining ones https://github.com/rescript-lang/rescript-compiler/pull/5805
635
636
- Add support for uncurried externals https://github.com/rescript-lang/rescript-compiler/pull/5815https://github.com/rescript-lang/rescript-compiler/pull/5819https://github.com/rescript-lang/rescript-compiler/pull/5830https://github.com/rescript-lang/rescript-compiler/pull/5894
636
637
- Parser/Printer: unify uncurried functions of arity 0, and of arity 1 taking unit. There's now only arity 1 in the source language. https://github.com/rescript-lang/rescript-compiler/pull/5825
637
638
- Add support for default arguments in uncurried functions https://github.com/rescript-lang/rescript-compiler/pull/5835
@@ -653,12 +654,12 @@ subset of the arguments, and return a curried type with the remaining ones https
653
654
-`rescript convert <reason files>`
654
655
- Remove obsolete built-in project templates and the "rescript init" functionality. This is replaced by [create-rescript-app](https://github.com/rescript-lang/create-rescript-app) which is maintained separately.
655
656
- Do not attempt to build ReScript from source on npm postinstall for platforms without prebuilt binaries anymore.
656
-
- Made pinned dependencies transitive: if *a* is a pinned dependency of *b* and *b* is a pinned dependency of *c*, then *a* is implicitly a pinned dependency of *c*. This change is only breaking if your build process assumes non-transitivity.
657
+
- Made pinned dependencies transitive: if _a_ is a pinned dependency of _b_ and _b_ is a pinned dependency of _c_, then _a_ is implicitly a pinned dependency of _c_. This change is only breaking if your build process assumes non-transitivity.
657
658
- Curried after uncurried is not fused anymore: `(. x) => y => 3` is not equivalent to `(. x, y) => 3` anymore. It's instead equivalent to `(. x) => { y => 3 }`.
658
-
Also, `(. int) => string => bool` is not equivalen to `(. int, string) => bool` anymore.
659
-
These are only breaking changes for unformatted code.
659
+
Also, `(. int) => string => bool` is not equivalen to `(. int, string) => bool` anymore.
660
+
These are only breaking changes for unformatted code.
660
661
- Exponentiation operator `**` is now right-associative. `2. ** 3. ** 2.` now compile to `Math.pow(2, Math.pow(3, 2))` and not anymore `Math.pow(Math.pow(2, 3), 2)`. Parentheses can be used to change precedence.
661
-
- Remove unsafe ``` j`$(a)$(b)` ``` interpolation deprecated in compiler version 10 https://github.com/rescript-lang/rescript-compiler/pull/6068
662
+
- Remove unsafe `` j`$(a)$(b)` `` interpolation deprecated in compiler version 10 https://github.com/rescript-lang/rescript-compiler/pull/6068
662
663
- Remove deprecated module `Printexc`
663
664
-`@deriving(jsConverter)` not supported anymore for variant types https://github.com/rescript-lang/rescript-compiler/pull/6088
664
665
- New representation for variants, where the tag is a string instead of a number. https://github.com/rescript-lang/rescript-compiler/pull/6088
@@ -707,19 +708,21 @@ These are only breaking changes for unformatted code.
707
708
# 10.1.4
708
709
709
710
#### :bug: Bug Fix
711
+
710
712
- Fix implementation of directives https://github.com/rescript-lang/rescript-compiler/pull/6052
711
713
- Fix issue if the `lib` dir is included in the sources of bsconfig.json https://github.com/rescript-lang/rescript-compiler/pull/6055
712
714
- Fix issue with string escape in pattern match https://github.com/rescript-lang/rescript-compiler/pull/6062
713
715
- Fix issue with literal comparison of string constants https://github.com/rescript-lang/rescript-compiler/pull/6065
714
716
715
717
#### :rocket: New Feature
718
+
716
719
- Add support for toplevel `await`https://github.com/rescript-lang/rescript-compiler/pull/6054
717
720
718
721
#### :nail_care: Polish
719
722
720
723
- Better error message for extension point https://github.com/rescript-lang/rescript-compiler/pull/6057
721
724
- Improve format check help https://github.com/rescript-lang/rescript-compiler/pull/6056
0 commit comments