]> git.sesse.net Git - vlc/blob - doc/release-howto.txt
More clean up...
[vlc] / doc / release-howto.txt
1 [ Note: this howto is probably useful to core vlc developers only ]
2
3   Release HOWTO
4   -------------
5
6  * Tests: compilation, regression tests ...
7
8  * Changes on the git repository
9    - update the version number everywhere it's needed
10      · configure.ac
11      · extras/package/macosx/Resources/English.lproj/InfoPlist.strings
12      · extras/package/macosx/Info.plist
13      · extras/package/macosx/plugin/English.lproj/InfoPlist.strings
14      · extras/package/macosx/plugin/Info.plist
15      · extras/package/macosx/plugin/InstallerInfo.plist
16      · extras/package/macosx/vlc.xcodeproj/project.pbxproj 
17    - update the ChangeLog and NEWS files, as well as the Trac database:
18         LANG=C git log --since="01-01" --until="12-31" >! ChangeLog
19    - read all the commits and add important things to the NEWS file
20    - update the milestones info on https://trac.videolan.org/vlc
21    - Add a note about the matching contrib package in INSTALL.win32
22    - Update OpenGPG key embedded in include/vlc_update.h if needed
23    - Increase the libvlccore and libvlc revisions in src/Makefile.am
24       _if_and_only_if_ the ABI number has not been increased instead, in
25       which case the revision goes back to zero.
26
27  * Commit
28
29  * Tarballs (Use a clean tree !!!)
30   - Use 'make distcheck' to make sure all files are exported
31     correctly
32   - copy the tar.bz2 file on ftp.videolan.org in
33     /opt/ftp/pub/videolan/testing/vlc-X.X.X/
34   - generate SHA1 plus md5 hashes and gpg signature of these files
35     (use gpg --sign --detach --armor)
36
37  * Contribs
38   - Put a copy of the libraries or git snapshot in vlc-X.X.X/contrib
39   - Put the relevant win32 contrib package
40   - Update developers.v.o/vlc and www.v.o/vlc/download-sources.html
41
42  * BeOS Packages
43     Information on building: http://developers.videolan.org/vlc/beos-compile.html
44     Configure with --enable-update-check
45     Build in the "buildbeos" chroot on altair.
46     # add the .zip files to /opt/ftp/pub/videolan/testing/vlc-X.X.X/beos/
47     generate md5 plus SHA1 hashes and gpg signature of these files
48     (use gpg --sign --detach --armor)
49
50  * Win32 Packages
51     make the packages using the nightly builds configure/options/... , don't
52      forget --enable-update-check
53     don't forget to test the installer and uninstaller (the first 0.8.4
54     uninstaller was broken ... kind of suxxs)
55     add the .zip and .exe files to /opt/ftp/pub/videolan/testing/vlc-X.X.X/win32/
56     generate md5 plus SHA1 hashes and gpg signature of these files
57     (use gpg --sign --detach --armor)
58
59  * OS X packages
60     Information on compilation: wiki.videolan.org/OSXCompile
61     configure with --enable-update-check
62     compile the source on both a PowerPC and an Intel-based Mac. Don't try to
63     cross-compile for either platform. Don't forget the framework.
64     use extras/package/macosx/ub.sh to create a Universal Binary. Test it on   
65      PowerPC and Intel-based Macs.
66     add the .dmg files to /opt/ftp/pub/videolan/testing/vlc-X.X.X/macosx/
67     Nomenclature is vlc-X.X.X-$(PLATFORM).dmg respectively 
68      vlc-plugin-X.X.X-$(PLATFORM).dmg and vlckit-X.X.X-$(PLATFORM).dmg. 
69     Don't put any platform for the UB package.
70     generate md5 plus SHA1 hashes and gpg signature of these files
71      (use gpg --sign --detach --armor)
72
73  * Commit changes ... it never works the first time
74
75  * "Tag" the release
76
77     git tag -a -m "VLC Release VERSION" <VERSION>
78     (Create an annotated tag, you can skip -a if you used -m)
79     git push origin <VERSION>
80
81     (You are advised to play with it on the sandrox.git if you feel 
82      uncomfortable)
83
84  * Move /opt/ftp/pub/videolan/testing/vlc-X.X.X to 
85      /opt/ftp/pub/videolan/vlc/X.X.X
86   - At first block access to this directory by http or ftp. Only authorize 
87      rsync.
88      This is to avoid leak as some journalists and forums seem to watch the ftp.
89   - Update the "latest" symlink
90
91  * Update the website
92   - edit the /index.php /vlc/*.php pages
93   - add a news item to news.msg
94   - update the front page OS dependant screenshots if the interface changed.
95
96  * "Check for updates" functionality
97   - add /opt/ftp/pub/videolan/vlc/X.X.X/vlc-X.X.X-announce
98   - edit update.videolan.org/vlc/status.xml
99
100  * Mirrors
101   - Forwarn the mirror admins
102   - Update the list of files for the mirror check 
103      (/var/www/local/mirrors.v.o/files)
104   - Disable mirrors which haven't synced yet and possibly ganesh if there are
105     enough other mirrors
106
107  * Update the wiki
108   - edit http://wiki.videolan.org/Template:VLC:latest_version
109   - put the respective NEWS page to wiki.videolan.org/Changelog/X.X.X
110   - announce the release on the Main Page
111
112  * Announce on www.gnome.org
113   - click on "Get more software"
114   - click on "Edit an existing map entry"
115   - look for the 'vlc' package
116   - update the version number and other info and submit
117   - the change is instantaneous
118
119  * Announce on www.freshmeat.net (let sam do it)
120   - you need a freshmeat account
121   - go to http://www.freshmeat.net/projects/vlc/
122   - click on the release's branch (i.e. Stable)
123   - chose "add release" in the drop-down menu
124   - fill out all the info and submit
125   - the update can take several hours
126
127  * Announce on VersionTracker
128   - ask Meuuh
129
130  * Announce email
131   - write something along the lines of previous releases
132   - post in videolan-announce (moderated), vlc et vlc-devel
133     You are advised to add the author list for this version using
134     'git shortlog -s PREVIOUS_VERSION..VERSION'
135     And to add git diff --stat PREVIOUS_VERSION..VERSION if it's relevant.
136     You can play a bit with git to show the piece of information that may be
137     interesting.
138   - add a sticky thread in the "General VLC media player discussion" forum
139