We want to make contributing to this project as easy and transparent as possible.
To get the development installation with all the necessary dependencies for linting, testing, and building the documentation, run the following:
git clone https://github.com/pytorch/torcheval
cd torcheval
pip install -r requirements.txt
pip install -r dev-requirements.txt
pip install -r docs/requirements.txt
pip install --no-build-isolation -e ".[dev]"
We actively welcome your pull requests.
-
Create your branch from
main
. -
If you've added code that should be tested, add tests.
-
If you've changed APIs, update the documentation.
- To build docs
cd docs; make html
- To view docs
cd build/html; python -m http.server
-
Ensure the test suite passes.
- To run all tests
python -m pytest tests/
- To run a single test
python -m pytest -v tests/metrics/test_metric.py::MetricBaseClassTest::test_add_state_invalid
-
Make sure your code lints.
pre-commit run --all-files
-
If you haven't already, complete the Contributor License Agreement ("CLA").
In order to accept your pull request, we need you to submit a CLA. You only need to do this once to work on any of Meta's open source projects.
Complete your CLA here: https://code.facebook.com/cla
We use GitHub issues to track public bugs. Please ensure your description is clear and has sufficient instructions to be able to reproduce the issue.
Meta has a bounty program for the safe disclosure of security bugs. In those cases, please go through the process outlined on that page and do not file a public issue.
By contributing to torcheval, you agree that your contributions will be licensed under the LICENSE file in the root directory of this source tree.