You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

5.3 KiB

Contributing to dupeGuru

The following is a set of guidelines and information for contributing to dupeGuru.

Table of Contents

Things to Know Before Starting

Ways to Contribute

Style Guides

Additional Notes

Things to Know Before Starting


Ways to contribute

Reporting Bugs


Suggesting Enhancements




Code Contribution


Pull Requests

Please follow these steps to have your contribution considered by the maintainers:

  1. Keep Pull Request specific to one feature or bug.
  2. Follow the style guides
  3. After you submit your pull request, verify that all status checks are passing
    What if the status checks are failing?If a status check is failing, and you believe that the failure is unrelated to your change, please leave a comment on the pull request explaining why you believe the failure is unrelated. A maintainer will re-run the status check for you. If we conclude that the failure was a false positive, then we will open an issue to track that problem with our status check suite.

While the prerequisites above must be satisfied prior to having your pull request reviewed, the reviewer(s) may ask you to complete additional design work, tests, or other changes before your pull request can be ultimately accepted.

Style Guides

Git Commit Messages

  • Use the present tense ("Add feature" not "Added feature")
  • Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
  • Limit the first line to 72 characters or less
  • Reference issues and pull requests liberally after the first line

Python Style Guide

  • All files are formatted with Black
  • Follow PEP 8 as much as practical
  • Pass flake8 linting
  • Include PEP 484 type hints (new code)

Documentation Style Guide


Additional Notes

Issue and Pull Request Labels

This section lists and describes the various labels used with issues and pull requests. Each of the labels is listed with a search link as well.

Issue Type and Status

Label name Search Description
enhancement search Feature requests and enhancements.
bug search Bug reports.
duplicate search Issue is a duplicate of existing issue.
needs-reproduction search A bug that has not been able to be reproduced.
needs-information search More information needs to be collected about these problems or feature requests (e.g. steps to reproduce).
blocked search Issue blocked by other issues.
beginner search Less complex issues for users who want to start contributing.

Category Labels

Label name Search Description
3rd party search Related to a 3rd party dependency.
crash search Related to crashes (complete, or unhandled).
documentation search Related to any documentation.
linux search Related to running on Linux.
mac search Related to running on macOS.
performance search Related to the performance.
ui search Related to the visual design.
windows search Related to running on Windows.

Pull Request Labels

None at this time, if the volume of Pull Requests increase labels may be added to manage.