How to Contribute¶
Golden Rules¶
- Be kind.
- Imperfect feedback is infinitely better than no feedback at all.
So you’ve found a bug or have a suggestion and…¶
You’re short on time:¶
No worries. This will take less than a minute.
- Go to the github issues page.
- Select the Get Started button next to Bug report or Feature request
- Fill in the title line.
- Delete the template out the body and briefly describe your issue/feature.
- Submit new issue.
You have a bit more time:¶
Much appreciated!
- Go to the github issues page.
- Click the green New issue button.
- Select the Get Started button next to Bug report or Feature request
- Fill in the title line.
- Complete as much of the template prompt questions as you’re able.
- Submit new issue.
You’d like to code the solution yourself:¶
Awesome!!! But first…
Ask questions first, shoot later¶
If you could, please submit an issue as detailed above. This allows us to have a conversation about it first and figure out the best solution. I’d hate for you to do all the work and submit a pull request only to find out it’s not a direction we want the project going in.
You can also email fuzzytable.dev@gmail.com, but we’ll ultimately end up creating a github issue in order to keep a paper trail.
Developer Steps¶
Fork the fuzzytable repo.
Clone and create feature branch
$ git clone https://github.com/yourusername/fuzzytable.git $ git checkout -b featurename
Set up development environment
python -m venv .venv .venv/scripts/activate pip install flit flit install --deps develop --symlink
If running Windows, replace the
--symlink
option with--pth-file
. See flit docs for explanation.flit install --deps develop --pth-file
Write code.
Test Write tests in
/tests
. Use pytest to run tests quicklypytest
Run tests and check coverage:
pytest --cov-report term-missing --cov=fuzzytable tests/
When all tests pass and code has 100% coverage, run tox to ensure the code works in all three python environments:
tox
Commit and push to remote
git commit -am 'featurename' git push --set-upstream origin featurename
Create a Pull Request