-
Notifications
You must be signed in to change notification settings - Fork 62
Guide to Making A Release
Marshall Perrin edited this page Dec 13, 2018
·
12 revisions
This can probably be streamlined and automated...
Steps to follow:
- Pre-release checklist. Ensure the release notes have what you want in them, ensure all the issues you want closed are closed, all the relevant PRs are merged, check all the tests pass, etc.
- If updating the webbpsf data files, do that using the scripts in webbpsf/dev_utils/master_data_release.sh.
- Unzip the resulting zip file someplace. Manually set $WEBBPSF_DATA_PATH to that. Test that stuff works.
- Update webbpsf/init.py to set DATA_VERSION_MIN to that version.
- Optional: Create release branch and get ready to release, following http://nvie.com/posts/a-successful-git-branching-model/
- Dec 2018 update: I think this is an outdated idea and not necessary right now? We haven’t so far been keeping persistent open branches for each version.
- Do the following:
- git pull # ensure you have latest master!
- Update version numbers
- in setup.py
- for webbpsf, in the data file download URLs in docs/installation.rst
- PROBABLY UPDATE WEBBPSF’s setup.py TO DEPEND ON LATEST POPPY RELEASE TOO
- python setup.py clean
- python setup.py sdist
- This makes the ‘sdist’ zip file that will be uploaded to PyPI
- Test installing from that file and make sure it works
- cd dist
- pip install <name of dist file>
- python
- >>> import poppy
- >>> poppy.path, poppy.version # check these are as desired
- >>> poppy.test() # checks functionality of the installed package
- cd ..
- Tag the release in git:
- git commit -m “Release 1.2.3"
- git tag -a “v1.2.3"
- git push
- git push —tags
- Add a release via the Github web interface. See https://help.github.com/articles/creating-releases/
- Update PyPI
- python setup.py sdist upload
- You may need to 'python setup.py register' if you are not already logged into PYPI on that computer.
- Readthedocs should automatically build the latest docs from the push to GitHub. But verify this has taken place, and if necessary kick off a manual build.
- For the astroconda-contrib repository, submit a PR updating the poppy, webbpsf, and webbpsf-data versions appropriately