File: maint.rst

package info (click to toggle)
quodlibet 4.6.0-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 18,016 kB
  • sloc: python: 85,817; sh: 385; xml: 110; makefile: 91
file content (81 lines) | stat: -rw-r--r-- 2,344 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
=====================
Maintainer Guidelines
=====================


Downstream Bug Trackers
-----------------------

Some bug reports never make it to us so check these once in a while.

* `Fedora <https://apps.fedoraproject.org/packages/quodlibet/bugs>`_
* `Debian <https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=quodlibet>`_
* `Arch Linux <https://bugs.archlinux.org/?project=1&string=quodlibet>`_
* `Ubuntu <https://launchpad.net/ubuntu/+source/quodlibet/+bugs>`_
* `Gentoo <https://bugs.gentoo.org/buglist.cgi?quicksearch=media-sound%2Fquodlibet>`_


Tags & Branches
---------------

At the point where no more functionality will be added to a release,
a new branch gets created.
All bug fixes pushed to the default branch should
be cherry-picked to the respective stable branches and vice versa.

::

      .       .
     /|\     /|\
      |       |
      |       |
    3.6.-1   /   <--- "quodlibet-3.5" branch
      |_____/  .
      |       /|\
      |        |
      |      3.4.1  <--- "release-3.4.1" tag
      |        |
      |      3.4.0.-1
      |        |
      |      3.4  <--- "release-3.4.0" tag
      |        |
    3.5.-1    /
      |______/   <--- "quodlibet-3.4" branch
      |
      |  <--- default branch
    3.4.-1
      |
     /|\


Release Checklist
-----------------

New stable branch
^^^^^^^^^^^^^^^^^

You can now use the ``dev-utils/new-branch.sh`` script to help do this.

New stable release
^^^^^^^^^^^^^^^^^^

* ``git checkout quodlibet-x.y``
* Cherry-pick stuff from default branch
* Grab title from `Daily Dinosaur Comics <http://www.qwantz.com/>`_
* Update :ref:`News` with a list of all bugfixes and features since last release
* ``git commit -m "update NEWS"``
* ``setup.py distcheck``
* Update version to ``(X, Y, Z)`` in ``const.py``
* Update version to ``(X, Y, Z)`` in ``appdata.xml.in``
* ``git commit -m "release prep"``
* ``git tag release-x.y.z``
* ``git push origin release-x.y.z``
* Update version to ``(X, Y, Z, -1)``
* ``git commit -m "version bump"``
* Cherry-pick ``NEWS`` commit onto default branch
* Create Windows builds / tarballs / macOS DMGs
* Create checksums / signature, attach everything to the github tag
* Update ``release_db/make.py``; run ``./release_db/update.sh``
* Update stable PPAs (ubuntu/debian/OBS)
* Update the flathub repo
* Announce on IRC / Discord / Twitter etc