Skip to content

Latest commit

 

History

History
41 lines (29 loc) · 1.91 KB

CONTRIBUTING.md

File metadata and controls

41 lines (29 loc) · 1.91 KB

Contributing

Requirements

  • Python 3.7 or higher
  • python3-virtualenv

Set up a development environment

virtualenv -p python3 venv && \
  . venv/bin/activate && \
  pip install --requirement dev_requirements.txt

Enable Git hooks

If you're planning to contribute code, it's a good idea to enable the standard Git hooks so that build scripts run before you commit. That way, you can see if basic tests pass in a few seconds rather than waiting a few minutes to watch them run in CircleCI.

./dev-scripts/hooks/enable_hooks

Proposing changes

  • If you're making a small change, submit a PR to show your proposal.
  • If you're making a large change (over 100 LOC or three hours of dev time), file an issue first to talk through the proposed change. This prevents you from wasting time on a change that has a low chance of being accepted.

How to get your PR merged quickly

  • Read my guide, "How to Make Your Code Reviewer Fall in Love with You," to understand how to contribute effectively to an open source project.
  • Give a clear, one-line title to your PR.
    • Good: Fix dropped keystrokes on Firefox
    • Bad: Fix issue
  • If your PR is not ready for review, mark it as "draft."
  • Merge or rebase your changes with the latest master commit so that there are no merge conflicts.
  • Your PR must pass build checks in CI before it will be considered for merge.
    • You'll see a green checkmark or red X next to your PR depending on whether your build passed or failed.
    • You are responsible for fixing formatting and tests to ensure that your code passes build checks in CI.

I try to review all PRs within three business days. If you've been waiting longer than this, feel free to comment on the PR to verify that it's on my radar.