First off, thanks for taking the time to contribute! We welcome contributions from everyone and are grateful for your help in making SafetyCLI better.
If you find a bug, please report it by opening a GitHub issue. When reporting a bug, please include:
- A clear and descriptive title.
- Steps to reproduce the issue.
- Expected and actual behavior.
- Any relevant logs or screenshots.
- The version of SafetyCLI and Python you are using.
If your bug report has security implications or involves a potential vulnerability, we encourage you to participate in our Bug Bounty Program. Your responsible disclosure will help us improve the security of our software and may be eligible for a reward.
Please use the appropriate label when creating an issue:
bug
: Indicates a problem that needs to be resolved.Critical
: Issues that break core functionality or pose significant security vulnerabilities.High
,Medium
,Low
: Significance of bugs affecting users.
To suggest an enhancement, open an issue with details on the proposed improvement:
- A detailed description of the enhancement.
- A rationale for why the enhancement is needed.
- Any possible alternatives or workarounds.
Please use the following label:
enhancement
: Suggests an improvement or new feature.
Improving documentation is one of the best ways to contribute. You can suggest improvements, correct typos, or add new sections. The documentation is located here.
Please use the following label:
documentation
: Indicates issues related to documentation improvements or updates.
Before submitting code changes, please ensure:
- Your changes are focused on a single issue or feature.
- You have written tests for your changes.
- All tests pass locally.
Please use the following labels as needed:
help wanted
: Requests assistance from the community or other contributors.good first issue
: Highlights issues that are suitable for first-time contributors.
Please read and adhere to our Code of Conduct to ensure a welcoming environment for all contributors.
-
Clone the repository:
git clone https://github.com/pyupio/safety.git
-
Set up your environment:
- Ensure you are using Python 3.11.2.
- Install dependencies:
pip install -r requirements.txt
We use pytest for running tests. To run the tests locally:
pytest
Ensure all tests pass before submitting your changes.
We follow Conventional Commits for our commit messages. Please ensure your commits adhere to this specification. Use the following format:
<type>(<scope>): <description>
[optional body]
[optional footer(s)]
- Ensure all CI checks pass.
- A project maintainer will review and merge the pull request.
- Pull requests require at least one approval before merging.
By contributing to SafetyCLI, you agree that your contributions will be licensed under the same MIT License that covers the project.