There's a few native esy
packages included which are released to npm.
reason
rtop
These are combined together into a separate package reason-cli
which
prebuilds those as well as merlin. They can also be used individually from
esy
projects without prebuilding, but they are more or less just npm hosted
versions of the Opam packages.
git checkout -b MYRELEASE origin/master
git rebase origin/master
vim -O esy.json src/refmt/esy.json
# Then edit the version number accordingly on BOTH files. With that same VERSION do:
version=3.3.3 make pre_release
git commit -m "Bump version"
git push origin HEAD:PullRequestForVersion # Commit these version bumps
node scripts/esy-prepublish.js src/refmt src/rtop
Then follow the printed instructions for pushing any of the packages to npm.
They will show up under @esy-ocaml/reason
etc.
rtop
is also a separate esy
package hosted on npm
. You can
release it in the same way as you released the reason
package
prebuilt global installs of refmt, and merlin together in one npm install.
reason-cli
is the project that performs that task, and it packages up
prebuilts of the packages you already pushed to npm above.
See the reason-cli page for instructions on performing that release.
note: it is recommended to install opam-publish via opam-depext -i opam-publish
*Also, the commands below are examples based on specific Reason and rtop versions, the version numbers and possibly source urls will need to be changed to match the relevant release.
cd
into a directory that you don't mind having stuff downloaded intoopam-publish prepare reason.3.2.0 "https://registry.npmjs.org/@esy-ocaml/reason/-/reason-3.2.0.tgz"
opam-publish submit reason.3.2.0
opam-publish prepare rtop.3.2.0 "https://registry.npmjs.org/@esy-ocaml/rtop/-/rtop-3.2.0.tgz"
opam-publish rtop.3.2.0