Note
This part is a work in progress, reach out to the maintainers if you have any questions!
We recommend you follow Kenneth Reitz folder structure guide when writing Python programs which will be under the control of the ActivityWatch organisation: http://docs.python-guide.org/en/latest/writing/structure/
.. graphviz:: dependency.dot
Working with submodules comes with some complexity, here are a few neat tricks to make things easier:
- We recommend configuring git to include submodule changes in
git status
, you can do so with the following:git config --global status.submoduleSummary true
- If you want the latest committed version of all submodules, use:
git submodule update --recursive
- If you want the latest master branch on all submodules, use:
git submodule update --recursive --remote
- If you want to ensured you've pushed all commits in the submodules, use:
git submodule foreach 'git push'
A longer guide to git submodules can be found here.
- Close milestone on GitHub if one exists.
- Ensure that all the tests pass:
make test && make test-integration
- Test the latest build and check that it works correctly
- Write a changelog entry in
docs/changelog.rst
- Sign the commit:
git commit -a -S -m "bumped version"
- Create a signed tag:
git tag -s v0.7.1
- Push the commit and tag:
git push origin refs/tags/v0.7.1
- Create a release on GitHub
- Wait for the builds to finish
- Post about it online: Twitter, the forum, mailinglist (if major)