-
Notifications
You must be signed in to change notification settings - Fork 137
Development
Below you will find some guidelines to contribute to the development of this application. To start, the structure of the git repository is as follows:
-
master
branch is used for delivering pre-releases (for testing purposes) and stable releases. -
devel
branch is used for active development. -
debian
branch is used for everything related to debian packaging. Normally, this branch will be up to date with respect tomaster
. -
gh-pages
branch contains all files needed by the http://mkchromecast.com website. -
pyinstaller
was used for create a macOS app, but this will not be used anymore.
Note: some tags such as video
will be soon merged into devel
.
For fixing bugs related to stable releases, the development should be done either directly on master
or merged from another branch (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 can break devel
should be developed in a different branch (for instance, the current video
branch). Of course, this later branch has to be always mergeable with devel
.
mkchromecast versions follow the semantic:
- MAJOR version when you make incompatible API changes,
- MINOR version when you add functionality in a backwards-compatible manner, and
- 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.
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
.