Skip to content

Development guide

Fabian Schlenz edited this page Aug 8, 2019 · 3 revisions

Development Guide

Git repository

New code belongs into the master branch. This branch has to be usable at all times. So either commit new features in one commit or create a branch feature/<featurename> for development. (Bugs in master can happen, of course. But please don't commit and push a not-yet-finished method there ot something.) The branch stable is for code ready to be used by users. Only merge code into there to prepare a new release.

Releases

In order to draft a new release:

  1. Modify setup.py to contain the new version number. Version number scheme is x.y.z, with z incrementing for bugfix releases and y incrementing for feature releases. x should only change for big changes.
  2. Commit this change as well.
  3. Merge master into stable while using the parameter --no-ff ("Don't create fast-forward merges.")
  4. Create a tag containing the new version.
  5. Push everything to github. If you're using the command line git client, you might have to push with --tags again to also push the created tag.
  6. At github, create a new release (Tab "Code", then above the file listing). Choose the newly created tag, enter the version as "Release title" as well (nothing more or less, just the version number), and enter a meaningful description (what has changed, etc.). Create a ZIP file containing all the code and stuff (be careful to NOT include your .git folder) named release.zip and attach it to the release.
  7. "Publish release". That's all.
Clone this wiki locally