On your development computer:
- Use the latest Anaconda release with the latest version of Python (3.7 at this time).
- Install the dev dependencies:
pip install -r requirements-dev.txt
- Every module
phy/mypackage/mymodule.pymust come with aphy/mypackage/tests/test_mymodule.pytest module that contains a bunch oftest_*()functions. - Never import test modules in the main code.
- 100% coverage is required. The
#pragma: no covercomment can be used sparingly. - Run
py.test phy --cov phyto run all tests and get a coverage report. - Run
flake8 phyto for linting.
- There is a
masterbranch (stable) and adevbranch (development version). - Propose pull requests from
yourfork/specialbranchtophy/dev. - Many small commits are better than few huge commits.
Make sure your text editor is properly configured:
- No trailing whitespaces
- Four spaces per indent level, no tab indents
- Empty blank line at the end of every text file
- Display a vertical ruler at 99 characters (length limit of every line)