-
Notifications
You must be signed in to change notification settings - Fork 287
Closed
Description
Pushing an update to crates.io requires the following manual steps:
Update release notes
- Update the release notes in
RELEASES.md. - Update the authors list in
AUTHORS.mdto include any names of new contributors.
Update neon manifest versions and test
- Bump the patch version number in
neon,neon-build, andneon-runtimecrates (they are kept in lock-step at always the exact same major.minor.patch). - Bump the
Cargo.tomldependency onneon-runtimeto the exact patch-level version ofneon-runtime. - Run
cargo updateintest/dynamic/native. - Run
cargo clean && cargo updateintest/static. - Run
cargo testin the neon root directory and ensure the tests are green.
Update neon-cli manifest versions and test
- Bump the
cli/templates/Cargo.toml.hbsdependencies onneon-buildandneonto the exact patch-level version ofneon. - Bump the
cli/package.jsonto the exact patch-level version ofneon. - Run a smoke test of
neon new:- Run
neon new smoke-testin a temp directory. - Update the
neondependency to{ path = "<path/to/neon>" } - Update the
neon-buildbuild-dependency to{ path = "<path/to/neon>/crates/neon-build" } - Change the
neon-clidependency insmoke-test/package.jsonto <path/to/neon>/cli - Run
npm iandnode -e 'require(".")'and see if it prints"hello node".
- Run
- Delete the temporary project.
Commit and push to GitHub
- Commit with a commit message of
v$major.$minor.$patch. - Push the commit to GH.
Publish
- Go into
cliand runnpm publish. - Go into
crates/neon-buildand runcargo publish. (Must be done before publishingneon). - Go into
crates/neon-runtimeand runcargo publish. (Must be done before publishingneon(next step)). - Go into the root directory and run
cargo publish.
Tag release branches
- Go to the GitHub repo and click "Releases" and then "Draft a new release" and give it a tag of
$major.$minor.$patchand a release title ofv$major.$minor.$patch, and check the "This is a pre-release" checkbox and press "Publish release."
I would like to automate as much of this as possible!
/cc @mmun
Reactions are currently unavailable