docs: release checklists

This commit is contained in:
Simon Michael 2015-04-07 19:00:16 -07:00
parent ebba1b09f2
commit 7c33409390

View File

@ -295,7 +295,7 @@ files change in any of the hledger{-lib,,-web} packages.
## How to.. ## How to..
New contributors of all levels are most welcome. New contributors of all levels are most welcome.
Here are some tips to help you get productive on the hledger project. Here are some tips/checklists/procedures to help you get productive on the hledger project.
### Suggest enhancements ### Suggest enhancements
@ -449,3 +449,87 @@ If you're new to this process, [help.github.com](http://help.github.com) may be
- marketing, communication, outreach - marketing, communication, outreach
- release management, roadmap planning - release management, roadmap planning
### Do a major release
1. cleanup
- review working copies (laptop, server, website) & branches, commit pending changes
2. document
- */*.cabal (descriptions, tested-with, files..)
- haddocks
- */CHANGES
- doc/contributors.md
- doc/site/release-notes.md
- doc/manual.md (commands, options, --help, ledger compatibility..)
- doc/site/step-by-step.md
- doc/site/how-to-*
- doc/site/faq.md (ledger compatibility)
- doc/site/installing.md
- doc/ANNOUNCE
3. test
- coarse tests
- make unittest
- make functest
- make haddocktest
4. branch
- start release branch (git checkout -b X.Y)
5. version
- edit .version
- make setversion
- double-check (cabal files, manual, download page..)
6. package
- check Makefile's PACKAGES includes all
- make cabalsdist
- [make windows binaries]
- [make osx binaries]
7. test
- fine tests
- install from tarballs into a clean directory
8. tag
- make tagrelease
9. push
- git push --tags
10. upload
- make cabalupload
11. announce
- email hledger haskell-cafe haskell [ledger]
- tweet
- [blog]
- [reddit]
### Do a minor release
Differences from a major release: set PACKAGES only to the affected package(s),
don't run make setversion. Use make -n if unsure.
1. cleanup
- review working copies (laptop, server, website) & branches, commit pending changes
2. document
- */*.cabal for affected package(s) (descriptions, tested-with, files..)
- */CHANGES for affected package(s)
- doc/site/release-notes.md
- doc/manual.md (commands, options, --help, ledger compatibility..)
- doc/site/step-by-step.md
- doc/site/how-to-*
3. test
- make unittest
- make functest
- make haddocktest
4. branch
- switch to release branch (git checkout X.Y)
5. version
- edit .version (don't make setversion)
- manually bump version for affected package(s): cabal files, manual..
6. package
- set Makefile's PACKAGES to affected package(s)
- make cabalsdist
7. test
- install from tarball(s) into a clean directory
8. tag
- make tagrelease
9. push
- git push --tags
10. upload
- make cabalupload
11. announce
- [email hledger]
- [tweet]