Update the release Howto
[vlc.git] / doc / release-howto.txt
1 Release HOWTO
2 -------------
3
4 [ Note: this howto is probably useful to core vlc developers only ]
5
6  * Tests: compilation, regression tests ...
7
8  * Changes on the git repository
9    - Check that the version number everywhere it's needed
10      · configure.ac
11      · NEWS
12    - Update important things and add them to the NEWS file
13    - Close the milestone on Trac https://trac.videolan.org/vlc
14    - Update OpenGPG key embedded in include/vlc_update.h if needed
15    - Increase the libvlccore and libvlc revisions in src/Makefile.am
16       _if_and_only_if_ the ABI number has not been increased instead, in
17       which case the revision goes back to zero.
18
19  * Commit
20  * "Tag" the release
21     git tag -a -m "VLC Release VERSION" <VERSION>
22     (Create an annotated tag, you can skip -a if you used -m)
23     git push origin <VERSION>
24
25  * Tarballs (Use a clean tree !!!)
26   - Use 'make distcheck' to make sure all files are exported correctly
27   - copy the tar.xz file on ganesh.videolan.org
28   - generate SHA, MD5 hashes and OpenPGP signature of these files
29     (use sha*sum --binary, md5sum --binary, gpg --sign --detach --armor)
30     Use the sumandsign.sh script
31
32  * Contribs
33   - Put a copy of the libraries or git snapshot in ftp://ftp.videolan.org/pub/contrib/
34   - Put the relevant win32 and Mac OS contrib package
35   - Update s.v.o/vlc and www.v.o/vlc/download-sources.html
36
37  * Win32 Packages
38   - configure using the extras/package/win32/configure.sh script
39   - copy the packages files on ganesh.videolan.org
40   - copy the vlc-2.0.4 and symbols-2.0.4 to balthazar for stacktraces
41
42  * Mac OS X packages
43   - configure using the extras/package/macosx/configure.sh script
44   - compile the source on both a PowerPC and an Intel-based Mac.
45   - use extras/package/macosx/ub.sh to create a Universal Binary.
46   - use extras/package/macosx/codesign.sh to sign it.
47   - copy the packages files on ganesh.videolan.org
48
49  * Sign all the files and move the signed files on /opt/ftp/pub/videolan/vlc/X.X.X
50   - At first block access to this directory by http or ftp. Only authorize rsync.
51     This is to avoid leak as some journalists and forums seem to watch the ftp.
52   - Update the "last" symlink
53
54  * Update the website
55   - edit the /index.php /vlc/*.php, include/os-specific.php files
56   - create a /vlc/release/X.X.X page
57   - add a news item to news.msg
58   - update the front page OS dependant screenshots if the interface changed.
59   - update the md5
60
61  * "Check for updates" functionality
62   - edit update.videolan.org/vlc/status
63   - gpg -t --sign --detach --armor
64
65  * Mirrors (if necessary)
66   - Forwarn the mirror admins
67   - Update the list of files for the mirror check
68      (/var/www/local/mirrors.v.o/files)
69   - Disable mirrors which haven't synced yet and possibly ganesh if there are
70     enough other mirrors (see http://mirrors.videolan.org/release.html)
71
72  * Update the wiki
73   - edit http://wiki.videolan.org/Template:VLC:latest_version
74
75  * Announce on www.freecode.com (let jb or sam do it, if you lack the account)
76   - go to https://freecode.com/projects/vlc/
77   - chose "Submit a release" in the right menu, in "Administration"
78   - Do the steps and wait (the update can take several hours)
79
80  * Announce on Twitter, Facebook and G+
81   Unfortunately, those are more followed than the all other mediums combined
82
83  * Announce email and forum topic
84   - Write something along the lines of previous releases
85   - Post in videolan-announce (moderated), vlc et vlc-devel
86     You are advised to add the author list for this version using
87     'git shortlog -s PREVIOUS_VERSION..VERSION'
88     And to add git diff --stat PREVIOUS_VERSION..VERSION if it's relevant.
89     You can play a bit with git to show the piece of information that may be
90     interesting.
91   - Add a sticky thread in the "General VLC media player discussion" forum
92