Everyone is encouraged to contribute, and we appreciate each and every one of them. Helping the community is thus not limited to writing code. The community will greatly benefit from your efforts to provide clarification, assist others, and enhance the documentation. π
Additionally, it is helpful if you help us spread the word by mentioning the library in blog articles about the amazing projects it enabled, tweeting about it on occasion, or just starring the repository! βοΈ
If you choose to contribute, please be mindful to respect our code of conduct.
There are 5 ways you can contribute to Giskard:
- Submitting issues related to bugs or desired new features.
- Contributing to the examples or to the documentation;
- Fixing outstanding issues with the existing code;
- Implementing new ML tests (performance tests, drifts, metamorphic, etc.);
- Implementing new features to Giskard
First, we would really appreciate it if you could make sure the bug was not already reported (use the search bar on Github under Issues).
If you did not find it, please follow these steps to inform us:
- Include your OS type and version, the versions of Python, and different Python libraries you used;
- A short, self-contained, code snippet that allows us to reproduce the bug in less than 30s;
- Provide the full stack trace if an exception is raised.
To get the logs of a given container, you can run
docker logs <NAME OF THE CONTAINER>
Custom and domain-based tests are welcome. If you have an idea, you can inform us by providing us a short description of the test and possibly a link to its documentation (paper, etc.).
If you are willing to contribute the model yourself, let us know so we can best guide you.
An awesome feature request addresses the following points:
- Motivation first: Is it related to a problem/frustration with the library? Is it related to something you would need for a project? Is it something you worked on and think could benefit the community?
- Write a full paragraph describing the feature;
- Attach any additional information (drawings, screenshots, etc.) you think may help.
We use black
to format the code and isort
to sort the imports. You can automatically enforce this style using the
pre-commit hooks. You can find the instructions to install the pre-commit
hooks here.
For documentation strings, Giskard follows the numpydoc style.
This guide was heavily inspired by the awesome HuggingFace guide to contributing.