Workflow

The main forum for BayesPy development is GitHub. Bugs and other issues can be reported at https://github.com/bayespy/bayespy/issues. Contributions to the code and documentation are welcome and should be given as pull requests at https://github.com/bayespy/bayespy/pulls. In order to create pull requests, it is recommended to fork the git repository, make local changes and submit these changes as a pull request. The style guide for writing docstrings follows the style guide of NumPy, available at https://github.com/numpy/numpy/blob/master/doc/HOWTO_DOCUMENT.rst.txt. Detailed instructions on development workflow can be read from NumPy guide, available at http://docs.scipy.org/doc/numpy/dev/gitwash/development_workflow.html. BayesPy uses the following acronyms to start the commit message:

  • API: an (incompatible) API change
  • BLD: change related to building numpy
  • BUG: bug fix
  • DEMO: modification in demo code
  • DEP: deprecate something, or remove a deprecated object
  • DEV: development tool or utility
  • DOC: documentation
  • ENH: enhancement
  • MAINT: maintenance commit (refactoring, typos, etc.)
  • REV: revert an earlier commit
  • STY: style fix (whitespace, PEP8)
  • TST: addition or modification of tests
  • REL: related to releasing

Since version 0.3.7, we have started following Vincent Driessen’s branching model in how git is used.

Making releases

  • Commit any current changes to git.
  • Start a release branch: git flow release start x.y.z
  • Edit version number in setup.py and commit.
  • Add changes to CHANGELOG.rst and commit.
  • Publish the release branch: git flow release publish x.y.z
  • Finish the release: git flow release finish x.y.z. Write the following commit message: REL: Version x.y.z.
  • Push to GitHub: git push && git push --tags
  • Download the release tarball from GitHub and use that in the phases below. This avoids having local garbage in the release.
  • Publish in PyPI: python setup.py release_pypi
  • Update the documentation web page: cd doc && make gh-pages
  • Publish in mloss.org.
  • Announcements to bayespy@googlegroups.com, scipy-user@scipy.org and numpy-discussion@scipy.org.