Contributing¶
Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.
Get Started!¶
Ready to contribute? Here’s how to set up image_slicer
for local development.
Fork the
image_slicer
repo on GitHub.Clone your fork locally:
git clone git@github.com:{your_name_here}/image_slicer.git
Install the project in editable mode. (It is also recommended to work in a virtualenv or anaconda environment):
cd image_slicer/ pip install -e .[dev]
Create a branch for local development:
git checkout -b {your_development_type}/short-description Ex: feature/read-tiff-files or bugfix/handle-file-not-found\ :raw-html-m2r:`<br>` Now you can make your changes locally.
When you’re done making changes, check that your changes pass linting and tests, including testing other Python versions with make:
make build
Commit your changes and push your branch to GitHub:
git add . git commit -m "Resolves gh-###. Your detailed description of your changes." git push origin {your_development_type}/short-description
Submit a pull request.
The Four Commands You Need To Know¶
pip install -e .[dev]
This will install your package in editable mode with all the required development dependencies (i.e.
tox
).make build
This will run
tox
which will run all your tests in both Python 3.7 and Python 3.8 as well as linting your code.make clean
This will clean up various Python and build generated files so that you can ensure that you are working in a clean environment.
make docs
This will generate and launch a web browser to view the most up-to-date documentation.
Deploying¶
Once your change has been approved it will be merged into master. Periodically, the maintainer will run the following to release a new package version on GitHub and publish to PyPI:
$ bumpversion patch # possible: major / minor / patch
$ git push
$ git push --tags
git branch -D stable
git checkout -b stable
git push --set-upstream origin stable -f