|
10 | 10 | > - :house: [Internal]
|
11 | 11 | > - :nail_care: [Polish]
|
12 | 12 |
|
13 |
| -# 11.0.0-alpha.1 |
14 |
| - |
15 |
| -#### :rocket: New Feature |
16 |
| - |
17 |
| -- Introduce experimental uncurried by default mode. Can be turned on mid-file by adding standalone annotation `@@uncurried`. For experimentation only. https://github.com/rescript-lang/rescript-compiler/pull/5796 |
18 |
| -- Adding `@@toUncurried` to the file and reformat will convert to uncurried syntax https://github.com/rescript-lang/rescript-compiler/pull/5800 |
19 |
| -- Add support for unary uncurried pipe in uncurried mode https://github.com/rescript-lang/rescript-compiler/pull/5804 |
20 |
| -- Add support for partial application of uncurried functions: with uncurried application one can provide a |
21 |
| -subset of the arguments, and return a curried type with the remaining ones https://github.com/rescript-lang/rescript-compiler/pull/5805 |
22 |
| -- Add support for uncurried externals https://github.com/rescript-lang/rescript-compiler/pull/5815 https://github.com/rescript-lang/rescript-compiler/pull/5819 |
23 |
| - |
24 |
| -#### :boom: Breaking Change |
25 |
| - |
26 |
| -- Remove support for the legacy Reason syntax. Existing Reason code can be converted to ReScript syntax using ReScript 9 as follows: |
27 |
| - - `npm i -g rescript@9` |
28 |
| - - `rescript convert <reason files>` |
29 |
| -- Remove obsolete built-in project templates and the "rescript init" functionality. This will be replaced by the create-rescript-app project that is maintained separately. |
30 |
| -- Parse the attributes of labelled argument to the pattern attributes of argument instead of function. |
31 |
| -- 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. |
32 |
| -- 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 }`. |
33 |
| -Also, `(. int) => string => bool` is not equivalen to `(. int, string) => bool` anymore. |
34 |
| -These are only breaking changes for unformatted code. |
35 |
| -- Distinguish between uncurried type `(. ()) => int`, whch takes 0 arguments, and `(. unit) => int` which takes 1 argument of type `unit` https://github.com/rescript-lang/rescript-compiler/pull/5821 |
36 |
| - |
37 |
| -#### :bug: Bug Fix |
38 |
| - |
39 |
| -- Fix issue where uncurried was not supported with pipe https://github.com/rescript-lang/rescript-compiler/pull/5803 |
40 |
| -- Fix printing of nested types in uncurried mode https://github.com/rescript-lang/rescript-compiler/pull/5826 |
41 |
| -- Fix issue in printing uncurried callbacks https://github.com/rescript-lang/rescript-compiler/pull/5828 |
42 |
| - |
43 |
| -#### :nail_care: Polish |
44 |
| - |
45 |
| -- Syntax: process uncurried types explicitly in the parser/printer https://github.com/rescript-lang/rescript-compiler/pull/5784 https://github.com/rescript-lang/rescript-compiler/pull/5822 |
46 |
| -- Syntax: process uncurried function declarations explicitly in the parser/printer https://github.com/rescript-lang/rescript-compiler/pull/5794 |
47 |
| -- PPX V4: allow uncurried `make` function and treat it like a curried one [#5802](https://github.com/rescript-lang/rescript-compiler/pull/5802) [#5808](https://github.com/rescript-lang/rescript-compiler/pull/5808) [#5812](https://github.com/rescript-lang/rescript-compiler/pull/5812) |
48 |
| - |
49 | 13 | # 10.1.0-rc.6
|
50 | 14 |
|
51 | 15 | #### :bug: Bug Fix
|
|
0 commit comments