Contributions welcome!
Here are some notes about common tools and tasks you'll run into when working on unleash-client-python
.
- miniconda - Used for local tox-ing to minimize friction when developing on a Mac. =)
- Create a new conda environment (
conda create -n ucp python=3.7
) or a venv. - Install packages:
pip install requirements-local.txt
. - If using Pycharm, add conda env as your project interpreter.
- Activate your virtualenv solution (e.g.
source activate ucp
). - Run linting & tests:
make test
- Run tox tests
make tox-osx
- Adding
- Add version-less package to
requirement-*.txt
file (in case we ever just wanna install everything) and versioned package torequirements.txt
.
- Add version-less package to
- Updating
- Use pur to update requirements.txt.
- If updating package requirements, update the
setup.py
file.
If having trouble installing mmh3 on OSX, try:
CFLAGS="-mmacosx-version-min=10.13" pip install mmh3
- Land all your PRs on
master
. :) - Update changelog.md and other sundry documentation.
- Deploy documents by running
mkdocs gh-deploy
- Run
bumpversion [major/minor/patch]
to generate new version & tag. - Push tag to remotes.
- Create new Release in Github and paste in Changelog.
- Github Actions workflow will automagically publish to Pypi. ^^