-
Notifications
You must be signed in to change notification settings - Fork 1
Release and version management
Trong-Nghia Nguyen edited this page Dec 15, 2017
·
5 revisions
- master: master branch is the default branch of this repository. It's should be the source code of the main stable release.
- R/x.x (for example: 0.0): branches for main versions, these branches should be protected and merged at every releases. Tagging should also be done in these branches.
- R/x.x.x (for example: 0.0.3): branches for the sub release versions. Develop branches should be merged into these kind of branches. Sub release branches will be deleted at the end of the sub release.
- D/x.x.x/{issue_number}_{suffix}: every develop branches should be indicated to one issue. Suffix should be added if you want to test with 3rd services (ex: Travis). Develop branches should only be created at your forked repos.
- Every commits should have follow the following format (except merge commits)
[R/{milestone_version}/#{issue_number}] commit's contents
- Ensure that the release source code passed all the tests
- Pylint check should return more than 9.0/10
- Update version number in
imagebutler/__init__.py
- Ensure all necessary dependencies are list in
setup.py
file - Update release note in
HISTORY.rst
file - Update
README.rst
and other files if there are changes - Run RST format check (any of below commands)
python setup.py check -r -s
python setup.py checkdocs
python setup.py check --restructuredtext
- Packaging
python setup.py sdist bdist_wheel
- Upload to test pypi repo
twine upload -r test dist/ImageButler-0.0.4.tar.gz dist/ImageButler-0.0.4-py3-none-any.whl
- Upload to pypi
twine upload dist/ImageButler-0.0.4.tar.gz dist/ImageButler-0.0.4-py3-none-any.whl
- Commit changes to git repo and add a new release tag
A project of ViiSiX