summaryrefslogtreecommitdiffstats
path: root/DOCS
diff options
context:
space:
mode:
authorAlessandro Ghedini <alessandro@ghedini.me>2014-06-24 13:36:15 +0200
committerAlessandro Ghedini <alessandro@ghedini.me>2014-06-25 18:46:25 +0200
commit02e0882b60cde69c137200678ac706a63dd08132 (patch)
treed300bcbf676708c1dd7a6ed899fca2e114a6d7a2 /DOCS
parent1dc760f9113169f4345c452526a0f4a7909166ec (diff)
downloadmpv-02e0882b60cde69c137200678ac706a63dd08132.tar.bz2
mpv-02e0882b60cde69c137200678ac706a63dd08132.tar.xz
DOCS: add document describing the release policy and procedure
Diffstat (limited to 'DOCS')
-rw-r--r--DOCS/release-policy.md57
1 files changed, 57 insertions, 0 deletions
diff --git a/DOCS/release-policy.md b/DOCS/release-policy.md
new file mode 100644
index 0000000000..ea437ddd2c
--- /dev/null
+++ b/DOCS/release-policy.md
@@ -0,0 +1,57 @@
+Release Policy
+==============
+
+Every few months, a new release is cut off of the master branch and is assigned
+a 0.X.0 version number.
+
+As part of the maintenance process, minor releases are made, which are assigned
+0.X.Y version numbers. Minor releases contain bug fixes only. They never merge
+the master branch, and no features are added to it. Only the latest release is
+maintained.
+
+The goal of releases is to provide stability and an unchanged base for the sake
+of Linux distributions. If you want the newest features, just use the master
+branch, which is stable most of the time, except sometimes, when it's not.
+
+Releases other than the latest release are unsupported and unmaintained.
+
+Release procedure
+-----------------
+
+- Create branch release/0.X or cherry-pick commits to the relevant branch.
+
+- Create and/or update the ``RELEASE_NOTES`` file.
+
+- Create and/or update the ``VERSION`` file.
+
+- Create tag v0.X.Y.
+
+- Push branch and tag to GitHub.
+
+- Create a new GitHub release using the content of ``RELEASE_NOTES``.
+
+Release notes template
+----------------------
+
+Here is a template that can be used for writing the ``RELEASE_NOTES`` file.
+
+```markdown
+Changes
+-------
+
+- List of changes.
+
+Bug fixes
+---------
+
+- List of bug fixes.
+
+New features
+------------
+
+- List of new features.
+
+This listing is not complete. There are many more bug fixes and changes. The
+complete change log can be viewed by running ``git log <start>..<end>`` in
+the git repository.
+```