Skip to content

Commit 7fa2f3a

Browse files
committed
Merge all alpha/beta changes into one, and cleanup.
1 parent 64756da commit 7fa2f3a

File tree

1 file changed

+28
-42
lines changed

1 file changed

+28
-42
lines changed

CHANGELOG.md

Lines changed: 28 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -26,73 +26,59 @@
2626

2727
# 10.0.0-beta.3
2828

29-
#### :bug: Bug Fix
30-
31-
- Fix issue with compiler log not terminated that causes problems with editor extension not clearing issues when fixed [#5545](https://github.com/rescript-lang/rescript-compiler/issues/5545)
32-
33-
# 10.0.0-beta.2
34-
35-
##### :nail_care: Polish
36-
37-
- Changed Linux build to depend on GLIBC 2.28 again for compatibility with Debian 10.
38-
39-
# 10.0.0-beta.1
29+
**Compiler**
4030

4131
#### :boom: Breaking Change
4232

4333
- `bsconfig.json` does not support `// line` comments anymore.
4434
- Example: `"suffix": ".bs.js" // determine the suffix`
4535
- Fix: remove the comment and use standard json.
46-
- Externals without `@val` annotations do not work anymore, and externals with `= ""` give an error.
47-
- Example: `external setTimeout: (unit => unit, int) => float = "setTimeout"` is not supported anymore.
48-
- Fix: use `[@val] external setTimeout: (unit => unit, int) => float = "setTimeout"` instead.
49-
- Example2: `[@val] external setTimeout: (unit => unit, int) => float = ""` is not supported anymore.
50-
- Fix2: use `[@val] external setTimeout: (unit => unit, int) => float = "setTimeout"` instead.
51-
- String constants don't need escaping anymore.
52-
- Example: `let blockCommentsRe = %re("/\\/\\*([^*]|[\\r\\n]|(\\*+([^*/]|[\\r\\n])))*\\*+\\//g")`.
53-
- Fix: use `let blockCommentsRe = %re("/\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\//g")` instead.
54-
55-
#### :bug: Bug Fix
56-
57-
- Fixed crash in `rescript build` on Windows [#5516](https://github.com/rescript-lang/rescript-compiler/pull/5516)
58-
- Fixed `rescript init` command not working [#5526](https://github.com/rescript-lang/rescript-compiler/pull/5526)
59-
60-
# 10.0.0-alpha.1
61-
62-
**Compiler**
63-
64-
#### :boom: Breaking Change
65-
66-
- `@bs.send.pipe` is now removed. Earlier it was deprecated.
67-
- Missing labels in function application is now an error (https://forum.rescript-lang.org/t/ann-more-strict-checks-in-missed-labels/2117).
68-
- Example: `let f = (x, ~z) => x + z; f(1, 2)`
69-
- Fix: do `let f = (x, ~z) => x + z; f(1, ~z=2)` instead
7036
- Changed return type of `Js.String.match_` as it was wrong. [#5070](https://github.com/rescript-lang/rescript-compiler/pull/5070)
7137
- Example: any use of `Js.String.match_` and `Js.String2.match_`
7238
- Fix: follow the type errors
7339

7440
#### :rocket: New Feature
7541

42+
- New records with `@optional` fields e.g. `type opt = {x: int, ?y: string}` were added as an experimental feature [#5423](https://github.com/rescript-lang/rescript-compiler/pull/5423) [#5452](https://github.com/rescript-lang/rescript-compiler/issues/5452) [New Syntax](https://github.com/rescript-lang/syntax/pull/589/files)
7643
- Add support for `@new @variadic` (see https://github.com/rescript-lang/rescript-compiler/pull/5364)
77-
- New records with `@optional` fields [#5423](https://github.com/rescript-lang/rescript-compiler/pull/5423) [#5452](https://github.com/rescript-lang/rescript-compiler/issues/5452)
7844

7945
#### :bug: Bug Fix
8046

8147
- Classify bigint correctly [#5351](https://github.com/rescript-lang/rescript-compiler/pull/5351)
48+
- Fixed crash in `rescript build` on Windows [#5516](https://github.com/rescript-lang/rescript-compiler/pull/5516)
49+
- Fixed `rescript init` command not working [#5526](https://github.com/rescript-lang/rescript-compiler/pull/5526)
50+
- Fix issue with compiler log not terminated that causes problems with editor extension not clearing issues when fixed [#5545](https://github.com/rescript-lang/rescript-compiler/issues/5545)
8251

83-
#### :house: [Internal]
52+
##### :nail_care: Polish
53+
54+
- Changed Linux build to depend on GLIBC 2.28 again for compatibility with Debian 10.
8455

8556
- Proper M1 support (CI now supports M1 native builds)
8657

8758
**Syntax**
8859

8960
#### :boom: Breaking Change
9061

91-
- Remove parsing of "import" and "export" which was never officially supported https://github.com/rescript-lang/syntax/pull/597 https://github.com/rescript-lang/syntax/pull/599
92-
- Example: `export type t = int`
93-
- Fix: `@genType type t = int`
94-
- Example2: `import realValue: complexNumber => float from "./MyMath"`
95-
- Fix2: `@genType.import("./MyMath") external realValue: complexNumber => float = "realValue"`
62+
- `@bs.send.pipe` is now removed. Earlier it was deprecated.
63+
- Missing labels in function application is now an error (https://forum.rescript-lang.org/t/ann-more-strict-checks-in-missed-labels/2117).
64+
- Example: `let f = (x, ~z) => x + z; f(1, 2)`
65+
- Fix: do `let f = (x, ~z) => x + z; f(1, ~z=2)` instead
66+
- Externals without `@val` annotations do not work anymore, and externals with `= ""` give an error.
67+
- Example: `external setTimeout: (unit => unit, int) => float = "setTimeout"` is not supported anymore.
68+
- Fix: use `[@val] external setTimeout: (unit => unit, int) => float = "setTimeout"` instead.
69+
- Example2: `[@val] external setTimeout: (unit => unit, int) => float = ""` is not supported anymore.
70+
- Fix2: use `[@val] external setTimeout: (unit => unit, int) => float = "setTimeout"` instead.
71+
- String constants don't need escaping anymore.
72+
- Example: `let blockCommentsRe = %re("/\\/\\*([^*]|[\\r\\n]|(\\*+([^*/]|[\\r\\n])))*\\*+\\//g")`.
73+
- Fix: use `let blockCommentsRe = %re("/\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\//g")` instead.
74+
- Externals without `@val` annotations do not work anymore, and externals with `= ""` give an error.
75+
- Example: `external setTimeout: (unit => unit, int) => float = "setTimeout"` is not supported anymore.
76+
- Fix: use `[@val] external setTimeout: (unit => unit, int) => float = "setTimeout"` instead.
77+
- Example2: `[@val] external setTimeout: (unit => unit, int) => float = ""` is not supported anymore.
78+
- Fix2: use `[@val] external setTimeout: (unit => unit, int) => float = "setTimeout"` instead.
79+
- String constants don't need escaping anymore.
80+
- Example: `let blockCommentsRe = %re("/\\/\\*([^*]|[\\r\\n]|(\\*+([^*/]|[\\r\\n])))*\\*+\\//g")`.
81+
- Fix: use `let blockCommentsRe = %re("/\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\//g")` instead.
9682

9783
#### :rocket: New Feature
9884

0 commit comments

Comments
 (0)