[ANN] VSCode extension pre-releases

Today marks a wonderful day - prereleases for the VSCode extension have landed! Before diving into the specifics, let’s direct a huge thanks to @fham who’s been driving this feature from start to finish. :clap:

What are pre-releases

Every time we push new code to the main branch of the extension, a new VSCode extension will be built and published to the pre-release track in VSCode. This is a separate track from the stable version, and can be considered bleeding edge. It means you’ll always have the absolute latest version of the extension installed and running, even if it’s not yet stable.

Who should use it?

We recommend anyone who’s interested in helping out with testing the extension to use the pre-release track. You’ll get access to all new features and fixes as soon as they’ve landed. However, using the pre-release track also comes with a couple of things to bear in mind:

  • Whenever something is unstable or breaks in some way, let us know. Report an issue to the issue tracker with a minimal reproduction if possible. This is very important.
  • As things are potentially unstable, please factor that into your expectations. We don’t normally merge broken things to the main branch, we tend to do all development and testing in feature branches, but things can of course still sneak into the main branch. It’s easy to switch back to a stable version if something you rely on breaks.

Our hope is that we can gather a broad range of users who do day-to-day work with ReScript, in a wide range of different setups, so we can cover as much ground as possible and catch issues before they make it into the stable version. This is probably the single most helpful thing you can do to help us out if you’re an active user - use the pre-release and report any issues.

How do I use it?

You enable it by clicking “Switch to Pre-Release Version” under rescript-vscode in the extensions pane. If that button is not visible for you, make sure you restart VSCode and it should be there.


You can switch back to the stable release version at any time.


And if you still want to install the latest version manually, you can grab it from the GitHub releases page now. It will always be at the top as “Latest master”. No more downloading from the latest Action. Binaries from GitHub Actions are, as I learned only recently, only accessible when logged in.


Thanks all of you for the great work!!
I am so excited to see this feature in the latest pre-release version, though it may be a little simple now.


That’s so cool. Not sure I am going to use it daily but that’s wonderful to see this energy on rescript !

1 Like

The new inlay hints are amazing! Great work as always everyone


Shout out to @aspeddro for building inlay hints! :grinning_face_with_smiling_eyes:


I have switched to the pre-release vscode extension. For some reason extension is changing

@genType → export

Original code

  module Icon = {
    type colorType =
    | @genType.as("default") Default
    | @genType.as("action") Action

After switching to the new vscode extension

  module Icon = {
    export type colorType =
    | @genType.as("default") Default
    | @genType.as("action") Action

I had to revert back to the 1.4.2 release.

1 Like

Can you add details on exactly what versions you have around?
The export syntax was temporarily used for some time as an experiment and is now gone.
There’s going to be some compiler version that was doing that change on formatting.

Hi @cristianoc

I have tried to switch back to pre-release now I am not facing the same issue. I should have captured the pre-release version which was causing the issue

Current versions I am using
rescript-vscode: v1.5.16
rescript: 9.1.4

Hi @cristianoc

I was able to reproduce the above issue with the following versions

rescript-vscode: v1.5.16
rescript: ^10.0.0-rc.1

OK we can ignore it then.
It’s probably something like the compiler binary was not found, which is to be used for formatting.

1 Like