- Check that INSTALL.md is up-to-date
- Regenerate LICENSE:
make license-generator
(seelicense-generator/
for details) - Write release notes
Additionally, if there are any breaking changes, there are number of downstream projects who we should probably at least notify:
Are there breaking changes to the language? Or alternatively, are there language changes which require breaking changes in the relevant libraries to make use of? If so:
- Update core libraries
- Update contrib libraries
- Update node bindings
- Update web bindings
Has the compiler CLI changed at all? If so, the following may need updates:
- spago
- pulp
- psc-package
- purs-loader
- ide plugins
Have any of the following JSON formats changed? If so, it may be worth considering what effects this may have:
- Corefn
- Ide protocol
- JSON produced by
purs publish
- this might affect Pursuit
- Make a commit bumping versions. The following should be updated:
- The
version
field inpackage.yaml
- The
version
field innpm-package/package.json
- The version to install in the
postinstall
script inpackage.json
- The
- Create a release from the releases tab in GitHub and copy in the release notes. This will also create a tag, which will kick off a CI build, which will upload prebuilt compiler binaries to the release on GitHub when it completes. (If the CI build fails, binaries can also be built locally and manually uploaded to the release on GitHub)
- Publish to Hackage: change to the compiler directory and run
stack upload .
. It's a good idea to check that the package can be installed from Hackage at this point. - After all of the prebuilt binaries are present on the GitHub releases page,
publish to npm: change to the
npm-package
directory and runnpm publish
. It's a good idea to check that the package can be installed from npm at this point.
- Document any language changes in the documentation repo
- In particular, it's worth checking that the getting started guide in the documentation repo still works
- If there have been changes to any
Prim
modules (even if they are just documentation changes), update Pursuit to depend on the latest compiler so that these docs appear on pursuit.purescript.org - Update Try PureScript
- Make release announcements:
- Discourse
- /r/purescript