forked from agda/agda-stdlib
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrelease-guide.txt
More file actions
85 lines (53 loc) · 2.11 KB
/
release-guide.txt
File metadata and controls
85 lines (53 loc) · 2.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
When releasing a new version of Agda standard library, the following
procedure should be followed:
#### Pre-release changes
* Update `doc/README.agda` by replacing 'development version' by 'version X.Y' in the title.
* Update the version to `X.Y` in:
- `agda-stdlib-utils.cabal`
- `standard-library.agda-lib`
- `CITATION.cff`
- `CHANGELOG.md`
- `README.md`
- `doc/installation-guide.md`
* Update the copyright year range in the LICENSE file, if necessary.
#### Pre-release tests
* Ensure that the library type-checks using Agda A.B.C:
make test
* Update submodule commit in the Agda repository:
cd agda
make fast-forward-std-lib
* Build the latest version of Agda
make quicker-install-bin
* Run the tests involving the library:
make test-using-std-lib
* Commit the changes and push
#### Release
* Tag version X.Y (do not forget to record the changes above first):
VERSION=X.Y
git tag -a v$VERSION -m "Agda standard library version $VERSION"
* Push all the changes and the new tag (requires Git >= 1.8.3):
git push --follow-tags
* Make a new release on Github at https://github.com/agda/agda-stdlib/releases
* Submit a pull request to update the version of standard library on Homebrew
(https://github.com/Homebrew/homebrew-core/blob/master/Formula/agda.rb)
* Update the Agda wiki:
** The standard library page.
** News section on the main page.
* Announce the release of the new version on the Agda mailing lists
(users and developers).
* Generate and upload documentation for the released version:
cp .github/tooling/* .
runhaskell GenerateEverything.hs
./index.sh
agda -i. -idoc -isrc --html index.agda
mv html v$VERSION
git checkout gh-pages
git add v$VERSION/*.html v$VERSION/*.css
git commit -m "[ release ] doc for version $VERSION"
git push
After that you can cleanup the generated files and copies of things taken from travis/
from your agda-stdlib directory.
#### Post-release
* Move the CHANGELOG.md into the old CHANGELOG folders
* Create new CHANGELOG.md file
* Revert changes in README.md to reference development version