# 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