We welcome contributions from the community, whether it's fixing bugs, improving documentation, adding new features, or reporting issues. This document outlines the process to contribute effectively to Crasher.
There are several ways to contribute to the Crasher project:
- Reporting Bugs: Help us improve the project by reporting any bugs you encounter.
- Suggesting Enhancements: Propose new features or improvements to existing functionality.
- Contributing Code: Submit fixes, enhancements, or new features via pull requests.
- Improving Documentation: Fix typos, clarify usage examples, or add new guides.
If you find a bug, please help us by submitting an issue to the GitHub Issue Tracker. Make sure to include:
- A descriptive title for the issue.
- Steps to reproduce the issue.
- Steps to reproduce the issue.
- Screenshots or code snippets if relevant.
- Information about your environment (OS, Python version, etc.).
To suggest a new feature or enhancement:
- Open a new GitHub issue with the "enhancement" label.
- Provide a detailed explanation of the feature, its purpose, and how it would improve the project.
- If possible, propose an implementation or share examples of similar features in other projects.
We appreciate all contributions to the Crasher codebase! Before starting, make sure you:
- Review open issues to see if the feature or bug has already been addressed.
- Follow the guidelines below for submitting code contributions.
- Navigate to the Crasher GitHub repository.
- Click the "Fork" button in the top-right corner to create a copy of the repository in your GitHub account.
- Clone your forked repository:
git clone https://github.com/your-username/crasher.git
- Create a new branch for your feature or bug fix:
git checkout -b feature-or-bug-description
- Follow the existing code style and structure.
- Include clear and concise comments in your code where necessary.
- Write or update tests to cover your changes.
- Test your changes to ensure they work as expected.
- Add and commit your changes:
git add .
git commit -m "Brief description of changes"
- Push your changes to your fork:
git push origin feature-or-bug-description
- Navigate to your forked repository on GitHub.
- Click the "Compare & pull request" button.
- In the pull request description, clearly explain:
- What changes were made.
- Why these changes are necessary.
- Any relevant issue numbers or links.
- Submit your pull request for review.
A project maintainer will review your pull request and may request changes. Be sure to:
- Address any feedback promptly.
- Update your branch with the latest changes from the
mainbranch if needed:
git fetch upstream
git checkout main
git merge upstream/main
Once your pull request is approved, it will be merged into the project.
When contributing code, please adhere to the following guidelines:
- Python Version: Crasher supports Python 3.10, 3.11, and 3.12. Ensure your code is compatible with these versions.
- Code Style: Follow the PEP 8 style guide for Python. Use tools like flake8 or black to check your code.
- Testing: Ensure all code is covered by unit tests. You can run the tests using:
pytest - Documentation: If your changes affect the functionality, update the corresponding documentation in the repository or Wiki.
We follow a code of conduct based on respect, inclusivity, and a welcoming environment for all contributors. Please be mindful of how you communicate with other contributors and maintainers.
If you have any questions about the contribution process or specific issues, feel free to reach out by creating a GitHub issue or contacting the maintainers via email.
Thank you for your interest in contributing to Crasher!