How to release podpac
- Ensure your master branch is synced to upstream:
$ git pull upstream master-
Update
version.pyMAJOR,MINOR, andHOTFIXto the right semantic version -
Run unit tests for python 2 and python 3 environments
# python 3 (assumes conda environment is named `podpac`)
$ source activate podpac
$ pytest podpac
# python 2 (assumes conda environment is named `podpac27`)
$ source activate podpac27
$ pytest podpac- Review the CHANGELOG and update
- Prefix should be a numpy commit prefix
- Convention:
- <prefix>: <short description> ([<github issue>](https://github.com/creare-com/podpac/issues/<issue#>))- On the master branch, Tag the release:
$ git tag -a X.Y.Z -m 'X.Y.Z'- Push your changes to master:
$ git push upstream master
$ git push upstream --tags- Build source and binary wheels for pypi:
$ git clean -xdf # this deletes all uncommited changes!
$ python setup.py bdist_wheel sdist- Upload package to TestPypi. You will need to be listed as a package owner at https://pypi.python.org/pypi/podpac for this to work.
$ twine upload --repository-url https://test.pypi.org/legacy/ dist/podpac-X.Y.Z*- Use twine to register and upload the release on pypi. Be careful, you can't take this back! You will need to be listed as a package owner at https://pypi.python.org/pypi/podpac for this to work.
$ twine upload dist/podpac-X.Y.Z*-
Tag the
masterbranch of creare-com/podpac-examples with the same semantic version. -
Issue the release announcement (tbd)