Release process in Grilo

Creating a new release in Grilo is a process with several steps. Here we describe the steps we follow, so anyone can take the role of creating the release.

This process is valid both for core and for plugins release. Though we usually perform this steps in this order, it is not strictly necessary to do in this way, and we can perform some steps before others.

Also, if some of the steps fails, after fixing the problem leading to the issue could be needed to start again the whole process.

1. Clean the repository

We need to start with a clean environment, updated to the last version.

 $ git pull
 $ git clean -xfd

2. Bump to the new version

We need to update all files with specific information for the new version.

  • Upgrade version number in configure.ac

  • Update AUTHORS file

    • In our case, it contains the list of authors that have at least 5 commits
  • Update NEWS file

    • Add the more relevant changes since the last version
  • Update documentation
    • Document the new added or changed functions using "Since: " GTK+ doc tag

    • Document the deprecated functions using "Deprecated: " GTK+ doc tag

3. Make sure everything works fine

In most cases this step can be done before the previous one.

The point here is to be sure that everything works like a charm.

 $ ./autogen.sh
 $ make
 $ make distcheck

4. Create a tag

Add a signed tag to make easier tracking the release.

For instance, if we are releasing Grilo core 0.1.15:

 $ git tag -a -s grilo-0.1.15

5. Upload the new release to GNOME public server

 $ scp grilo-0.1.15.tar.gz master.gnome.org:
 $ ssh master.gnome.org
 [master ~] ftpadmin install grilo-0.1.15.tar.gz

6. Update git repository

Make sure the new release is pushed correctly to git repository

 $ git push --tags

7. Make announcement on mailing list

Time to announce the new release in the mailing list. The best approach is to reuse a previous announcement and change it to reflect the new release.

The announcement should include:

  • What is new
  • Contributors
  • API changes
    • Added
    • Removed
    • Changed
    • Deprecated

The announcement should be sent to the following mailing lists:

  • grilo-list@gnome.org

  • gnome-multimedia@gnome.org

  • gnome-announce-list@gnome.org

8. Update NEWS in Grilo main page

After the announcement reaches the mailing lists, add a proper entry in the NEWS section in Grilo main page, linking to the email with the announcement.

Projects/Grilo/ReleaseProcessOld (last edited 2013-11-23 14:38:34 by WilliamJonMcCann)