BOUT-dev
BOUT-dev copied to clipboard
V5.1.1 rc
Cherry picked some obvious and simple fixes for master from next.
I want to backport the SUNDIALS v7 support. Is there anything else that should be backported?
Making a New Release of BOUT++
This is checklist of things to do (in order) when making a new release. This applies equally to both major/minor releases and bugfix releases
- [x] Check there are no open issues/PRs for this milestone
- Fix or bump to next version
- [x] Make a branch named
vX.Y.Z-rc- The GitHub repo is setup to protect branches named in this style
- Major and minor release points (
X/Y) should be offnext. Bugfix releases (Z) should be offmaster
- [x] Make pull request into
master- Any new bugfixes should be PRs into the RC branch, where
"bugfixes" can include:
- silencing warnings
- improving documentation
- adding tests
- Any new bugfixes should be PRs into the RC branch, where
"bugfixes" can include:
- [x] Run
make check-all- Raise issues for any tests that fail
- Possibly run
clang-tidy,clang-check,coverity, etc. - [ ] Review pinned pip package versions for CI
- [ ] Review bundled libraries
Before merging PR:
- [ ] Update locale translation files
make -C locale update-all- Be aware that this will update the timestamps and possibly reorder file paths in the .po and .pot files
- [ ] Update
CHANGELOG.md:- Run [bout-changelog-generator.py LAST_RELEASE NEXT_RELEASE][bin/bout-changelog-generator.py]
- See the docs for how to get the token
- Run [bout-changelog-generator.py LAST_RELEASE NEXT_RELEASE][bin/bout-changelog-generator.py]
- [ ] Get list of authors:
- [ ]
git log --format='%aN' | sort | uniq - [ ] Compare to list in
CITATION.cff, add new authors
- [ ]
- [ ] Prep a new Zenodo release:
- https://doi.org/10.5281/zenodo.1423212
- "New Version"
- "Reserve DOI" -> copy DOI
- Add any new authors
- Save draft
- [ ] Change DOI in
CITATION.cffto new DOI - [ ] Change DOI in
README.mdto new DOI - [ ] Change date-released in
CITATION.cff - [ ] Check
abidiffto see ifsonameneeds bumping inmakefile: - [ ] Change version number, removing prerelease tag in:
- [ ]
configure.ac:AC_INIT - [ ]
CITATION.cff:version - [ ]
manual/sphinx/conf.py:versionandrelease - [ ]
manual/doxygen/Doxyfile_readthedocs:PROJECT_NUMBER - [ ]
manual/doxygen/Doxyfile:PROJECT_NUMBER - [ ]
CMakeLists.txt:_bout_previous_version,_bout_next_version
- [ ]
After PR is merged:
- [ ] Make tarball:
make distfrom build directory. Ensure you are on a tag and correct version is used for archive and folder within. - [ ] Try to summarise the changes!
- [ ] Make GitHub Release, include change summary NB: tag should have
leading
v - [ ] Make tarball:
cmake -S . -B build && make dist -C build - [ ] Check tarball:
- [ ] Is the folder name correct?
- [ ] grep for the version - is always the released version used, not a pre-release?
- [ ] Upload tarball to GitHub Release
- [ ] Upload tarball to Zenodo and publish new version
- [ ] Email BOUT++ User Group mailing list, include change summary
- [ ] Make news post on project website, include change summary
- [ ] Update downloads page
- [ ] PR
masterintonext - [ ] Bump version number and add prerelease tag in:
- [ ]
configure.ac:AC_INIT - [ ]
CITATION.cff:version - [ ]
manual/sphinx/conf.py:versionandrelease - [ ]
manual/doxygen/Doxyfile_readthedocs:PROJECT_NUMBER - [ ]
manual/doxygen/Doxyfile:PROJECT_NUMBER - [ ]
CMakeLists.txt:_bout_previous_version,_bout_next_version - [ ]
tools/pylib/_boutpp_build/backend.py:_bout_previous_version,_bout_next_version
- [ ]
clang-tidy review says "All clean, LGTM! :+1:"
Ok, think this is probably ready?
- [ ] go through checklist
- [ ] fix conflict
Ok, I think this is finally good to go
Fedora tests are failing due to a package issue @dschwoerer
Readthedocs is failing due to a timeout. We probably need to revisit how we're building the docs. It's not great that we have to build the whole library just for the python interface.