Skip to content

Latest commit

 

History

History
69 lines (52 loc) · 3.06 KB

CONTRIBUTING.rst

File metadata and controls

69 lines (52 loc) · 3.06 KB

Contributing Guide

Welcome! There are many ways to contribute, including submitting bug reports, improving documentation, submitting feature requests, reviewing new submissions, or contributing code that can be incorporated into the project.

For support questions please use Telegram Channel or open an issue of type Question

Feature Requests

Please create a new GitHub issue for any significant changes and enhancements that you wish to make. Provide the feature you would like to see, why you need it, and how it will work. Discuss your ideas transparently and get community feedback before proceeding.

Significant changes that you wish to contribute to the project should be discussed first in a GitHub issue that clearly outlines the changes and benefits of the feature.

Small Changes can directly be crafted and submitted to the GitHub Repository as a Pull Request.

Pull Request Process

  1. Fork RecTools main repository on GitHub. See this guide if you have questions.
  2. Clone your fork from GitHub to your local disk.
  3. Create a virtual environment and install dependencies including all extras and development dependencies.
    1. Make sure you have python3 and poetry==1.4.0 installed
    2. Deactivate any active virtual environments. Deactivate conda base environment if applicable
    3. Run make install command which will create a virtual env and install everything that is needed with poetry. See poetry usage details
  4. Implement your changes. Check the following after you are done:
    1. Docstrings. Please ensure that all new public classes and methods have docstrings. We use numpy style. Also check that examples are provided
    2. Code styling. Autoformat with make format
    3. Linters. Run checks with make lint
    4. Tests. Make sure you've covered new features with tests. Check code correctness with make test
    5. Coverage. Check with make coverage
    6. Changelog. Please describe you changes in CHANGELOG.MD
  5. Create a pull request from your fork. See instructions

You may merge the Pull Request in once you have the approval of one of the core developers, or if you do not have permission to do that, you may request the a reviewer to merge it for you.

Review Process

We keep pull requests open for a few days for multiple people to have the chance to review/comment.

After feedback has been given, we expect responses within two weeks. After two weeks, we may close the pull request if it isn't showing any activity.