Thank you for your interest in contributing to Cuckoo3! Your contributions are invaluable and help make this project better for everyone.
-
Fork the Repository: Click the "Fork" button at the top right corner of this page.
-
Clone Your Fork: Clone your forked repository to your local machine.
git clone https://github.com/your-username/cuckoo3.git
-
Set Upstream Remote: Add the original repository as a remote to keep your fork updated.
git remote add upstream https://github.com/cert-ee/cuckoo3.git
-
Create a Branch: Create a new branch for your feature or bug fix.
git checkout -b feature/your-feature-name
If you find a bug, please open an issue and use the "Bug report" template:
We welcome suggestions to improve Cuckoo3. To propose an enhancement:
- Open an issue and use the "Feature request" template.
Keeping documentation up to date takes effort. You are welcome to contribute to documentation.
- Open an issue and use the "Documentation" template.
-
Discuss First: It's a good idea to start by opening an issue to discuss your plans.
-
Follow Coding Standards: Ensure your code adheres to our Coding Standards.
-
Update Documentation: If your changes affect documentation, please update it accordingly.
-
Write Tests: Include unit tests for new features or bug fixes.
-
Commit Changes: Make atomic commits with clear messages.
-
Submit a Pull Request:
-
Push your branch to your forked repository.
git push origin feature/your-feature-name
-
Open a pull request against the `main` branch of the main repository.
-
Fill out the pull request template, providing all necessary details.
-
- Language: Python 3.10
- Style Guide: Follow PEP 8 for code style.
- Documentation: Use docstrings to document modules, classes, and functions.
- Dependencies: Avoid adding unnecessary dependencies.
- Format: Use the imperative mood in your subject line (e.g., "Add feature" not "Added feature").
- Subject Line: Keep it concise (50 characters or less).
- Body: If necessary, include a detailed description of the changes.
- Unit Tests: Write unit tests for all new features and bug fixes.
- Test Framework: Use pytest for writing tests.
- Continuous Integration: Ensure all tests pass before submitting a pull request.
By participating in this project, you agree to abide by our Code of Conduct. Please read it to understand the expectations for all contributors.
We are CLA free
- Issues: For bugs or enhancement suggestions, please use the GitHub Issues.
- Email: For other inquiries, contact the maintainers at cuckoo@cert.ee.
Thank you for helping to make Cuckoo3 better! """