Skip to content

Commit 2dc48b4

Browse files
author
José Valim
committed
Amend release process information
1 parent 16b358c commit 2dc48b4

File tree

1 file changed

+24
-17
lines changed

1 file changed

+24
-17
lines changed

RELEASE.md

Lines changed: 24 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,41 @@
11
# Release process
22

3-
## All releases
4-
5-
This document simply outlines the release process:
3+
## Shipping a new version
64

75
1. Ensure you are running on the oldest supported Erlang version
86

9-
2. Remove all `-dev` extension from versions (see below for all files)
7+
2. Update version in /VERSION
8+
9+
3. Ensure /CHANGELOG.md is updated, versioned and add the current date
10+
11+
4. Update "Compatibility and Deprecations" if a new OTP version is supported
12+
13+
5. Commit changes above with title "Release vVERSION" and generate a new tag
14+
15+
6. Run `make clean test` to ensure all tests pass from scratch and the CI is green
16+
17+
7. Recompile an existing project (for example, Ecto) to ensure manifests can be upgraded
1018

11-
3. Ensure CHANGELOG is updated and add the current date
19+
8. Push branch and the new tag
1220

13-
4. Update "Compatibility and Deprecations" if a new OTP version is supported. If a new `vMAJOR.MINOR`, update **all** tables in the page
21+
9. Publish new zips with `make zips`, upload `Precompiled.zip` and `Docs.zip` to GitHub Releases, and include SHAs+CHANGELOG
1422

15-
5. If a new `vMAJOR.MINOR`, create a new branch "vMAJOR.MINOR" and set `CANONICAL=` in Makefile
23+
10. Add the release to `elixir.csv` and `_data/elixir-versions.yml` files in `elixir-lang/elixir-lang.github.com`
1624

17-
6. Commit changes above with title "Release vVERSION" and generate a new tag
25+
## Creating a new vMAJOR.MINOR branch
1826

19-
7. Run `make clean test` to ensure all tests pass from scratch and the CI is green
27+
### In the new branch
2028

21-
8. Recompile an existing project (for example, Ecto) to ensure manifests can be upgraded
29+
1. Set `CANONICAL=` in /Makefile
2230

23-
9. Push branch and the new tag
31+
2. Update **all** tables in "Compatibility and Deprecations"
2432

25-
10. Publish new zips with `make zips`, upload `Precompiled.zip` and `Docs.zip` to GitHub Releases, and include SHAs+CHANGELOG
33+
3. Commit "Prepare vMAJOR.MINOR for release"
2634

27-
11. Add the release to `elixir.csv` and `_data/elixir-versions.yml` files in `elixir-lang/elixir-lang.github.com`
35+
### Back in master
2836

29-
12. After a new `vMAJOR.MINOR`, move back to master, bump versions, start new CHANGELOG, add `-dev` back and commit "Start vMAJOR.MINOR+1"
37+
1. Bump /VERSION file
3038

31-
## Places where version is mentioned
39+
2. Start new /CHANGELOG.md
3240

33-
* VERSION
34-
* CHANGELOG.md
41+
3. Commit "Start vMAJOR.MINOR+1"

0 commit comments

Comments
 (0)