neo-go/docs/release-instruction.md

59 lines
2 KiB
Markdown
Raw Normal View History

2019-12-16 10:38:26 +00:00
# Release instructions
This document outlines the neo-go release process. It can be used as a todo
2019-12-16 10:38:26 +00:00
list for a new release.
## Check the state
2019-12-16 10:38:26 +00:00
These should run successfully:
2019-12-16 10:38:26 +00:00
* build
* unit-tests
* lint
* privnet with consensus nodes
* mainnet synchronization
2019-12-16 10:38:26 +00:00
## Update CHANGELOG and ROADMAP
2019-12-16 10:38:26 +00:00
Add an entry to the CHANGELOG.md following the style established there. Add a
codename, version and release date in the heading. Write a paragraph
describing the most significant changes done in this release. Then, add
sections with new features implemented and bugs fixed describing each change in detail and
2019-12-16 10:38:26 +00:00
with a reference to Github issues. Add generic improvements section for
changes that are not directly visible to the node end-user, such as performance
2019-12-16 10:38:26 +00:00
optimizations, refactoring and API changes. Add a "Behaviour changes" section
if there are any incompatible changes in default settings or the way commands
operate.
Update ROADMAP.md if necessary.
Create a PR with CHANGELOG/ROADMAP changes, review/merge it.
2019-12-16 10:38:26 +00:00
## Create a Github release and a tag
2019-12-16 10:38:26 +00:00
Use "Draft a new release" button in the "Releases" section. Create a new
`vX.Y.Z` tag for it following the semantic versioning standard. Put change log
for this release into the description. Do not attach any binaries at this step.
2019-12-16 10:38:26 +00:00
## Add automatically-built binaries
2019-12-16 10:38:26 +00:00
New release created at the previous step triggers automatic builds (if not,
start them manually from the Build Github workflow), so wait for them to
finish. Then download currently supported binaries (at the time of writing
that's `neo-go-darwin-arm64`, `neo-go-linux-amd64`, `neo-go-linux-arm64` and
`neo-go-windows-amd64`), unpack archives and add resulting binaries (named in
the same way as archives) to the previously created release.
2019-12-16 10:38:26 +00:00
2019-12-16 12:01:46 +00:00
## Close Github milestone
Close corresponding X.Y.Z Github milestone.
2019-12-16 10:38:26 +00:00
## Announcements
Copy the github release page link to:
* Discord channel
* Riot channel
## Deployment
Deploy the updated version to the mainnet/testnet.