Skip to content

Commit 2d9365a

Browse files
Release blogpost for v11
1 parent d3c97fa commit 2d9365a

File tree

2 files changed

+92
-0
lines changed

2 files changed

+92
-0
lines changed
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
---
2+
author: rescript-team
3+
date: "2024-01-11"
4+
previewImg: /static/blog/compiler_release_11_0.jpg
5+
title: ReScript 11.0
6+
badge: release
7+
description: |
8+
The ReScript developer experience now goes up to eleven!
9+
---
10+
11+
Almost a year after the last release, ReScript is available in version 11! It marks the second major community-driven release and we are very thankful that there are so many willing contributors who invested their spare time into improving the compiler and its ecosystem.
12+
13+
To upgrade your project or to find out if there are any breaking changes that affect you, please follow the [migration guide](/docs/manual/latest/migrate-to-v11).
14+
15+
The complete list of changes can be found [here](https://github.com/rescript-lang/rescript-compiler/blob/11.0_release/CHANGELOG.md). Let's have a look at the most notable improvements.
16+
17+
## Compiler
18+
19+
As this release is packed, please refer to the following blogposts for a detailed breakdown of each of the main new features:
20+
21+
- [Better interop with customizable variants](/blog/improving-interop)
22+
- [Enhanced Ergonomics for Record Types](/blog/enhanced-ergonomics-for-record-types)
23+
- [First-class Dynamic Import Support](/blog/first-class-dynamic-import-support)
24+
- [Uncurried Mode](/blog/uncurried-mode)
25+
26+
## Ecosystem
27+
28+
### Create-ReScript-App
29+
30+
Previously, the rescript binary was able to initialize new projects itself. But it was required to have a global npm install to use it. This functionality has been removed.
31+
32+
Going forward, create-rescript-app is the new recommended way to setup a new project. It can even be used to quickly add ReScript to an existing project. Have a look at the updated [installation instructions](/docs/manual/latest/installation) for how to use it.
33+
34+
### ReScript-React v0.12
35+
36+
In tandem with the new ReScript release, a new version of ReScript-React is released as well. Check out the [corresponding docs](/docs/react/latest/installation).
37+
38+
### Rescript Core
39+
40+
[ReScript Core](https://github.com/rescript-association/rescript-core) is ReScript's new standard library. It replaces the complete `Js` module as well as some of the more frequently used modules from `Belt` and is recommended to use with uncurried mode.
41+
42+
The latest docs on [https://rescript-lang.org](/) already use it for the examples, but please bear in mind that the [API docs](/docs/manual/latest/api) are not updated to it yet. This will happen soon, though as the next section suggests.
43+
44+
### ReScript Tools / Documentation Extraction
45+
46+
There is a new experimental tool available that is a building block for documentation generation from ReScript files. It can be installed and used as follows:
47+
48+
```sh
49+
npm install --save-dev @rescript/tools
50+
npx rescript-tools doc src/MyFile.res > doc.json
51+
```
52+
53+
### LSP
54+
55+
And also we now ship a standalone [Language Server binary](https://www.npmjs.com/package/@rescript/language-server), which can be installed and used like so:
56+
57+
```sh
58+
npm install -g @rescript/language-server
59+
npx rescript-language-server --stdio
60+
```
61+
62+
## What's next
63+
64+
The following features are planned to be implemented in upcoming versions:
65+
66+
- Make JSX usable beyond React:
67+
- [Generic JSX transform](https://github.com/rescript-lang/rescript-compiler/issues/6408)
68+
- [JSX preserve mode](https://github.com/rescript-lang/rescript-compiler/issues/6197)
69+
- Integrate the Rescript Core standard library into the compiler
70+
- remove the OCaml standard library
71+
- remove `Belt` but keep it available as external package
72+
- Make maintaining TS libraries with ReScript a breeze, [thanks to genType](https://github.com/rescript-lang/rescript-compiler/issues/6210)
73+
- Support [tagged template literals](https://github.com/rescript-lang/rescript-compiler/pull/6250)
74+
- [Dedicated syntax for creating Dicts](https://github.com/rescript-lang/rescript-compiler/issues/6545)
75+
- [Array spread syntax](https://github.com/rescript-lang/rescript-compiler/issues/6546)
76+
- A [new custom build system](https://github.com/rolandpeelen/rewatch) with better support for workspaces / monorepos
77+
78+
## Acknowledgements
79+
80+
We want to thank everyone from the community who volunteered their precious time to support this project with contributions of any kind, from documentation, to PRs, to discussions in the forum.
81+
82+
## That's it
83+
84+
We hope you enjoy the newest improvements as much as we do.
85+
86+
In case of issues / problems, make sure to report bugs to one of the following repositories:
87+
88+
- [rescript-lang/rescript-compiler](https://github.com/rescript-lang/rescript-compiler) (language / syntax / jsx)
89+
- [rescript-lang/rescript-react](https://github.com/rescript-lang/rescript-react) (React bindings)
90+
- [rescript-lang/rescript-vscode](https://github.com/rescript-lang/rescript-vscode) (VSCode language support, LSP, tools)
91+
- [rescript-lang/create-rescript-app](https://github.com/rescript-lang/create-rescript-app) (project generator) or
92+
- [rescript-association/rescript-lang.org](https://github.com/rescript-association/rescript-lang.org) (documentation)
106 KB
Loading

0 commit comments

Comments
 (0)