# Release Process Notes
Bump version (can do the night before)
- currently manually through editor search and replace
- don't forget to commit the Cargo.lock
Look through PRs to see if there's anything we really want to take before the release
- Any important bugfixes (major panics etc.)
Acceptance testing
- `cargo run` or `cargo install` the commit we plan to merge
- Is the interactive experience ok
- `version`
- For this (0.73) release play with `explore`
- If possible on most major platforms
- Play with a fresh config
Use the play time as inspiration for the blog post
Tag kicks off distro releases and crates.io, so be careful about when you tag
- `git tag <semver>` with semver following `0.xx.y`
- `git push` the tag to the nushell/nushell repo
Blog post finishing
- `since_last_release.nu` to get the long-form changelog (takes the last 21 days FIXME) (similar to TWIN)
https://github.com/nushell/nu_scripts/blob/main/make_release/since_last_release.nu
- paste that at the bottom of the blog post
- add short description to the header
After GitHub Action finishes:
- check that the draft release on GitHub looks good
- run the script to do the actual release
- nu_scripts/make_release/nu_release.nu
- Run inside local `nushell` repository on the newly tagged `main` with `nu ..PATH_TO_NU_SCRIPTS./nu_release.nu`
- need permission to publish to crates.io. Right now I think only JT has this
- had some trouble with `cargo owner --add github:nushell:core-team`, failed with "could not find the github team nushell/core-team"
After crates.io and release action succeeded: publish blog post
When blog post live:
Then make sure the link inside the GH release notes is OK and publish the GitHub release (notifies people)
Social media
- @nu_shell twitter (remove the crates.io preview!)
Post-release
- Bump dev version
- Start changelog for the next version
---
Other Notes:
assigning scalar values to mutable table row should maybe error
## Reedline release
Releasing reedline is more trivial:
- create a PR and then commit with the new version
- git pull and check out the updated main branch
- `cargo publish` (member of the publishing team)
- So far Release notes generated directly on github
- tag with `v0.00.0`
- Name of the release just the semver version
- include the (breaking) changes
- PR to nushell to pull the version
- reference the release notes for courtesy