Welcome to the normi
Maintenance Guideline¶
This guide will give you an overview of how to publish a new version of normi. In the following we will refer to the new version as v0.*.*
. This needs to be substituted to the current version, e.g. v0.1.3
.
Prepare New Release¶
Please ensure that,
- the version number in
setup.py
andsrc/normi/__init__.py
are bumped, - a new tag is created via
git tag v0.*.*
and pushedgit push --tags
, and - the changelog includes the new tag and all changes of the release.
As an example see for e.g. the commit of v0.1.1
, c2582ed
.
Upload to PyPI¶
There is an CI to publish new versions automatically. Therefore, a new release needs to be published. Please ensure that each release is based on a tag.
Build and Upload to PyPI (preferred)¶
It is as simple as creating a new release from the new tag. The Github action will do the rest.
Build and Upload to PyPI (admin only)¶
For an introduction, please take a look at the PyPI manual.
First ensure that all needed dependencies are installed
python -m pip install --upgrade pip
python -m pip install --upgrade build
python -m pip install --upgrade twine
To create the build, please ensure first that the directory dist
does not exist. Otherwise delete it,
rm dist
python3 -m build
dist
including the source distributions:
dist/
├── normi-0.*.*-py3-none-any.whl
└── normi-0.*.*.tar.gz
python3 -m twine upload dist/*
Update on Conda-Forge¶
Once a new version is published on PyPI, the conda-forge bot will automatically create a pull request on normi-feedstock.