Contributing
Contents
Contributing¶
Development¶
The recommended way to setup development of a feature branch is an
editable install of a fork of the git repository. First make sure that
you are working in a conda
environment or your favorite style of
virtual environment.
$ git clone git@github.com:<username>/dask-histogram.git
$ cd dask-histogram
$ git remote add upstream https://github.com/dask-contrib/dask-histogram.git
$ git checkout -b my-feature upstream/main
$ pip install -e .[complete]
The use of [complete]
ensures that you install the dependencies
for testing and building the documentation. You can also use
[test]
or [docs]
to install only the dependencies for running
tests or building documentation, respectively.
After running the tests on your new feature, push your branch to your fork and create a pull request.
Testing, etc.¶
We use pytest
for testing; after installing with the
[complete]
option you can run (from the top level of the
repository):
$ python -m pytest
We use black
for formatting:
$ black src tests
And ruff
for linting:
$ python -m ruff .
Type hints are encouraged; we use mypy
for static type checking:
$ mypy
Documentation¶
We use Sphinx to build the documentation.
$ cd docs
$ make html
# Open _build/html/index.html in a web browser
Install sphinx-autobuild
to get a live updated instance of the
documentation, and run it from the project root directory.
$ pip install sphinx-autobuild
$ sphinx-autobuild docs docs/_build/html
# Open a web browser at http://127.0.0.1:8000/