First off, thank you for considering contributing to Project TrainKeeper! It's people like you that make this tool faster, safer, and more robust for everyone.
-
Clone the repo
git clone https://github.com/mosh3eb/TrainKeeper.git cd TrainKeeper -
Install dependencies
pip install -e .[dev,torch,all]
-
Run the test suite
pytest tk system-check
- Scope: Keep changes focused. One feature/fix per PR.
- Tests: Add unit tests for new features. Ensure
pytestis green. - Docs: Update docstrings and
README.mdif user-facing behavior changes. - Style: We follow standard Python conventions (PEP8).
- Explicit is better than implicit: Avoid magic.
- Public API Stability: Don't break
run_reproducibleordistributed_traininginterfaces without major version bumps. - Type Hints: Use them where helpful for user clarity.
- Ensure the bug was not already reported by searching on GitHub under Issues.
- If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as well as a code sample or an executable test case demonstrating the expected behavior that is not occurring.
Thank you for building with us! 🚀