-
Notifications
You must be signed in to change notification settings - Fork 4
Developers
TODOs when releasing a new version:
- Create issue X for the release, and related branch.
- Update version with
bumpversion
command. From Semantic Versioning:
Given a version number MAJOR.MINOR.PATCH, increment the:
MAJOR version when you make incompatible API changes,
MINOR version when you add functionality in a backwards-compatible manner, and
PATCH version when you make backwards-compatible bug fixes.
File setup.cfg
contains the current version of the software. For instance,
[bumpversion]
current_version = 0.1.1
commit = True
tag = True[bumpversion:file:setup.py]
search = version='{current_version}'
replace = version='{new_version}'[bumpversion:file:idpflex/init.py]
search = version = '{current_version}'
replace = version = '{new_version}'
If the new version is 0.1.2
, then we have to bump the PATCH version by issuing the command in the terminal:
$>bumpversion PATCH
will cause the version string to change in files setup.cfg
, setup.py
, and __init__.py
. In addition, it will create a commit with the changes and a tag (in this case tag "v0.1.2")
- Update
HISTORY.rst
- If necessary, update
Development Status
insetup.py
- Commit changes and
push
toorigin
.
git commit -m "Refs #X changes before release"
git push origin <branch_name>
- Create a pull request to address the issue and once it passes and is merged into
master
, update your localmaster
branch.
git fetch -p git rebase -v origin/master
- In your local
master
branch, create a newtag
and upload toorigin
:
git tag -a v0.5.0.0 -m "Alpha stage of version 0.5"
git push origin v0.5.0.0
- Verify readthedocs successfully built the documentation.
- Upload the package to pypi
python setup.py sdist # creates directory dist/
twine upload dist/*
That's all!