Skip to content

Development

Muammar El Khatib edited this page Aug 6, 2018 · 8 revisions

Git Branches

Below you will find some guidelines to contribute to the development of this application. To start with, the structure of the git repository is the following:

  • master branch is used for active development.
  • debian branch is there for everything related to Debian packaging. Normally, this branch will be up to date with respect to master.
  • gh-pages branch contains all files needed by the http://mkchromecast.com website.
  • pyinstaller was used for creating a macOS app, but this will not be used anymore.

For fixing bugs related to stable releases, the development should be done either directly on master or merged from another branch via pull requests (this one can be named as you like). If the bug is very important, a new MINOR version should be released.

Very new features that could even break devel could be developed in a different branch. Of course, this later branch has to be always mergeable with devel.

Tags and Versioning

Mkchromecast versions follow the semantic:

  1. MAJOR version when you make incompatible API changes,
  2. MINOR version when you add functionality in a backwards-compatible manner, and
  3. PATCH version when you make backwards-compatible bug fixes.

e.g.: MAYOR.MINOR.PATCH -> 1.0.1. In the past, some versions with four digits were released, but now it is not accepted (unless it is unavoidable).

To make a release, a tag following the aforementioned semantic is also needed in Github. For Debian packaging, the tags have the following structure debian/MAYOR.MINOR.PATCH-REVISION.

Clone this wiki locally