We welcome contributions to rossum-sdk by the community. If you are building an integration, see the Developer Docs page.
- Use
pre-commit
to avoid linting issues. - Submit a pull request from forked version of this repo, referencing any issues it addresses.
- Add tests for your changes to
tests/
. - Run tests and make sure all of them pass.
- Select any of the maintainers as a reviewer.
- After an approved review, when releasing, a
Collaborator
withAdmin
role shall do the following inmaster
branch:- Update the Changelog, describing all the changes included in the newest release
- Release a new version
We will review your pull request as soon as possible. Thank you for contributing!
[email protected]:rossumai/rossum-sdk.git
Make sure that you have Python 3 installed. Version 3.7 or higher is required to run style checkers on pre-commit. On macOS, we recommend using brew
to install Python.
For Windows, we recommend an official python.org release.
cd rossum-sdk
python -m venv .env
source .env/bin/activate
pip install -e .
This will make sure that your commits will have the correct coding style.
pre-commit install
pre-commit install-hooks
That's it. You should be ready to make changes, run tests, and make commits!
We have a Makefile
to help people get started with hacking on the SDK
without having to know or understand the Python ecosystem.
Run make
or make help
to list commands.
So the simplest way to run tests is:
cd rossum-sdk
make test
This will use Tox to run our whole test suite under multiple Python 3.7+ versions.
Of course you can always run the underlying commands yourself, which is
particularly useful when wanting to provide arguments to pytest
to run
specific tests:
cd rossum-sdk
# create virtual environment
python -m venv .env
# activate virtual environment
source .env/bin/activate
# install sentry-python
pip install -e .
# install requirements
pip install -e ."[tests]"
# run tests
pytest tests/