Order of release of Ubermag packages (internal dependencies):
- ubermagutil
- disretisedfield (ubermagutil)
- ubermagtable (ubermagutil)
- micromagneticmodel (discretisedfield)
- micromagneticdata (disretisedfield, ubermagtable)
- miromagetictests (micromagneticmodel)
- oommfc (ubermagtable, micromagnetictests, micromagneticdata)
- mumax3c (ubermagtable, micromagnetictests, micromagneticmodel)
- mag2exp (oommfc)
- ubermag (mag2exp, micromagneticdata) [all package versions are specified explicitely]
- Increase version and dependency versions in
pyproject.toml
- Commit changes
- Run
invoke release
. (This task will run the unittests and doctests before releasing the package).
- Go to releases
Draft a new release
->Choose a tag
(Select new version tag, not the latest tag)- Put release version as title
- Publish release
- Wait for the bot to dectect the new release on PyPI (~some hours). A new PR in
conda-forge/<package>-feedstock
will be opened automatically. - If new versions of the dependencies of the
<package>
have been released earlier onconda-forge
, wait a few hours for them to be indexed. Check for the latest version of an indexed dependency withconda search <dependency>
. - [The package version is updated automatically by the bot in PR.]
- Update the versions of dependencies manually in
recipe/meta.yaml
. - Change any other metadata, e.g. code owners
- add comment
@conda-forge-admin please re-render
- If the
<package>
version did not change update thebuild number
inrecipe/meta.yaml
.
- add comment
- After tests pass the PR can be merged. This releases the new version on conda-forge.
- Again, after merging it takes a few hours until the package index
for
conda-forge
is updated and the package can be installed viaconda
.
- Wait until all packages can be installed via
conda
. - Update the ubermag version in
ubermag.github.io/environment.yml
. - Update the changelog (
source/changelog.rst
in theubermag.github.io
repository) and add the release date (of theubermag
conda package). - Merge the PR for the changelog updates (this automatically triggers a re-build of the website).
Announce the new version on the mailing list ([email protected]).