Skip to content

Latest commit

 

History

History
59 lines (39 loc) · 3.21 KB

CONTRIBUTING.md

File metadata and controls

59 lines (39 loc) · 3.21 KB

Contributing to Rule-based Retrieval

Thank you for your interest in contributing to the Rule-based Retrieval! We welcome contributions from the community to help improve and expand the capabilities of this project.

How to Contribute

Reporting Issues

If you encounter any bugs, have feature requests, or want to suggest improvements, please open an issue on the GitHub repository. When creating an issue, please provide as much detail as possible, including steps to reproduce the problem, expected behavior, and any relevant code snippets or screenshots.

Submitting Pull Requests

We encourage you to submit pull requests for bug fixes, new features, or improvements to the existing codebase. To submit a pull request, please follow these steps:

  1. Fork the repository and create a new branch for your feature or bug fix.
  2. Make your changes in the new branch, ensuring that your code follows the project's coding style and conventions.
  3. Write appropriate tests for your changes and ensure that all existing tests pass.
  4. Update the documentation, including README.md and API references, if necessary.
  5. Commit your changes with descriptive commit messages.
  6. Push your changes to your forked repository.
  7. Open a pull request from your branch to the main repository's main branch.
  8. Provide a clear and detailed description of your changes in the pull request.

Code Style and Conventions

To maintain a consistent codebase, please adhere to the following guidelines:

  • Follow the PEP 8 style guide for Python code.
  • Use meaningful variable and function names that accurately describe their purpose.
  • Write docstrings for all public functions, classes, and modules following the Google Python Style Guide.
  • Ensure that your code is properly formatted and passes the project's linting checks.

Testing

The Rule-based Retrieval package uses pytest for testing. When contributing, please make sure to:

  • Write unit tests for any new functionality or bug fixes.
  • Ensure that all existing tests pass before submitting a pull request.
  • Add integration tests if your changes involve multiple components or complex scenarios.

To run the tests, use the following command:

pytest tests/

Documentation

Keeping the documentation up to date is crucial for the usability and adoption of the package. If your contributions involve changes to the public API or introduce new features, please update the relevant documentation files, including:

  • README.md: Update the main README file with any necessary changes or additions.
  • docs/: Update the corresponding files in the docs/ directory to reflect your changes.

Code of Conduct

Please note that this project adheres to the Contributor Covenant Code of Conduct. By participating in this project, you are expected to uphold this code. Please report any unacceptable behavior to the project maintainers.

License

By contributing to this project, you agree that your contributions will be licensed under the MIT License.

Thank you for your contributions and happy coding!