VERSION = 0.1.0 (Version of repo to be published)
DATE = 190522
- pip install build
- pip install twine
- python -m build
- twine upload ./dist/*
- git checkout dev branch
- git pull --all
- Change version number in init.py VERSIONrc0
- Change version in docs/conf.py if need be
- Change shields and badges in README and index.rst (docs) to point to master branch
- Clean out dist folder
- Clean out docs (e.g. make clean) if applicable
- git merge master
- Commit changes (if needed)
- Wait for CI build to complete
- python setup.py sdist
- untar from dist folder into a new folder elsewhere
- Check contents (NOTE if filenames have changed, sdist cache may use old name -- delete caches)
- Within dist folder, python setup.py test
- If all pass, delete folder and return to module directory
- git tag -a VERSIONrc0 -m "Test deployment for version VERSIONrc0" (such as 0.1.0rc0)
- git push origin VERSIONa0
- Wait for CI build to complete
- twine upload -r testpypi dist/FILEWITHCORRECTVERSION (it will ask for login info)
- Check/Change version number in setup.py to VERSION
- Check CHANGELOG Dates and info
- Commit changes
- git push
- Wait for CI build to complete
- python setup.py sdist
- git tag -a VERSION -m "Version 0.1.0"
- git push origin VERSION
- Wait for CI build to complete
- twine upload dist/FILEWITHCORRECTVERSION (it will ask for login info)
- git checkout master
- git pull --all
- git merge --no-ff 0.1.X
- git push
- git checkout 0.1.X
- git pull --all
- Change version number in setup.py VERSIONrc0
- Change version in docs/conf.py if need be
- Change shields and badges in README and index.rst (docs) to point to master branch
- Clean out dist folder
- Clean out docs (e.g. make clean) if applicable
- git merge master
- Commit changes (if needed)
- Wait for CI build to complete
- python setup.py sdist
- untar from dist folder into a new folder elsewhere
- Check contents (NOTE if filenames have changed, sdist cache may use old name -- delete caches)
- Within dist folder, python setup.py test
- If all pass, delete folder and return to module directory
- git tag -a VERSIONrc0 -m "Test deployment for version VERSIONrc0" (such as 0.1.0rc0)
- git push origin VERSIONa0
- Wait for CI build to complete
- twine upload -r testpypi dist/FILEWITHCORRECTVERSION (it will ask for login info)
- git merge master
- Check/Change version number in setup.py to VERSION
- Check CHANGELOG Dates and info
- Commit changes
- git push
- git tag -a VERSION -m "Version 0.1.0"
- git push origin VERSION
- Wait for CI build to complete
- python setup.py sdist
- twine upload dist/FILEWITHCORRECTVERSION (it will ask for login info)
- git checkout master
- git pull --all
- git merge --no-ff 0.1.X
- git push
- (Optional) Retire the VERSION 0.1.X branch
- Setup PR on GitHub on Main Repo from Fork
- Let CI Complete
- Merge PR on Github
- Locally, checkout master
- git pull --all
- In fork master branch, rebuild docs
- Copy html in build folder into pages-specific repo
- Commit changes
- push to orphan branch
- In main repo (not fork), git checkout 0.1.X
- git pull --all
- git merge master
- Change version number in setup.py VERSION**+1a0**
- Add new entry for 0.1.1 to CHANGELOG
- Change version in docs/conf.py if need be
- Change shields and badges in README and index.rst (docs) to point to 0.1.X branch
- Commit changes
- Perform PR Merge from Main to Fork 0.1.X branch
- Locally in fork, git checkout 0.1.X
- git pull --all
- git checkout -b 0.2.X
- Change badges in README.rst to point to 0.2.X
- Change version in setup.py to 0.2.0a0
- Add new entry for 0.2.0 to CHANGELOG.rst
- git push -u origin 0.2.X