X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=doc%2Frelease-howto.txt;h=3961380bb6b30a054d7a7d2c904bbb0343ca97df;hb=c60652e38ac6afd74bd8225e9dae5406f13aaa4f;hp=4749e6c39d1ee89087834b0c628ff1eddadd2bae;hpb=4ccb8b8026370f737df39db04644429d9c45beb2;p=vlc diff --git a/doc/release-howto.txt b/doc/release-howto.txt index 4749e6c39d..3961380bb6 100644 --- a/doc/release-howto.txt +++ b/doc/release-howto.txt @@ -3,94 +3,130 @@ Release HOWTO ------------- - * Tests : compilation, regression tests ... + * Tests: compilation, regression tests ... - * Changes on the svn repository + * Changes on the git repository - update the version number everywhere it's needed - · configure.ac - · extras/MacOSX/vlc.pbprj/project.pbxproj - · extras/MacOSX/Resources/English.lproj/InfoPlist.string - - update the ChangeLog and NEWS files, as well as the Trac database - · LANG=C svn log -v -r '{YYYY-12-31}:{YYYY-01-01}' >! ChangeLog - · read all the commits and add important things to the NEWS file - · update the milestones info on https://trac.videolan.org/vlc + · configure.ac + - update the NEWS files, as well as the Trac database. + read all the commits and add important things to the NEWS file + - update the milestones info on https://trac.videolan.org/vlc - Add a note about the matching contrib package in INSTALL.win32 + - Update OpenGPG key embedded in include/vlc_update.h if needed + - Increase the libvlccore and libvlc revisions in src/Makefile.am + _if_and_only_if_ the ABI number has not been increased instead, in + which case the revision goes back to zero. * Commit * Tarballs (Use a clean tree !!!) - Use 'make distcheck' to make sure all files are exported correctly - - copy the tar.gz and tar.bz2 file on ftp.videolan.org in + - copy the tar.xz file on ftp.videolan.org in /opt/ftp/pub/videolan/testing/vlc-X.X.X/ - - generate md5 hashes and gpg signature of these files + - generate SHA, MD5 hashes and OpenPGP signature of these files + (use sha*sum --binary, md5sum --binary, gpg --sign --detach --armor) * Contribs - - Put a copy of the libraries or svn snapshot in vlc-X.X.X/contrib + - Put a copy of the libraries or git snapshot in vlc-X.X.X/contrib - Put the relevant win32 contrib package - Update developers.v.o/vlc and www.v.o/vlc/download-sources.html * BeOS Packages Information on building: http://developers.videolan.org/vlc/beos-compile.html + Configure with --enable-update-check Build in the "buildbeos" chroot on altair. # add the .zip files to /opt/ftp/pub/videolan/testing/vlc-X.X.X/beos/ + generate md5 plus SHA1 hashes and gpg signature of these files + (c.f. Tarballs) * Win32 Packages - make the packages using the nightly builds configure/options/... - don't forget to test the installer and uninstaller (the first 0.8.4 uninstaller was broken ... - kind of suxxs) + make the packages using the nightly builds configure/options/... , don't + forget --enable-update-check + don't forget to test the installer and uninstaller (the first 0.8.4 + uninstaller was broken ... kind of suxxs) add the .zip and .exe files to /opt/ftp/pub/videolan/testing/vlc-X.X.X/win32/ - generate md5 hashes and gpg signature of these files + generate md5 plus SHA1 hashes and gpg signature of these files + (c.f. Tarballs) * OS X packages - At the moment, only FK can do them (so they can be compatible with OS X 10.2) - Later: on the G5 - generate md5 hashes and gpg signature of these files + Information on compilation: wiki.videolan.org/OSXCompile + configure with --enable-update-check + compile the source on both a PowerPC and an Intel-based Mac. Don't try to + cross-compile for either platform. Don't forget the framework. + use extras/package/macosx/ub.sh to create a Universal Binary. Test it on + PowerPC and Intel-based Macs. + add the .dmg files to /opt/ftp/pub/videolan/testing/vlc-X.X.X/macosx/ + Nomenclature is vlc-X.X.X-$(PLATFORM).dmg respectively + vlc-plugin-X.X.X-$(PLATFORM).dmg and vlckit-X.X.X-$(PLATFORM).dmg. + Don't put any platform for the UB package. + generate md5 plus SHA1 hashes and gpg signature of these files + (c.f. gpg --sign --detach --armor) * Commit changes ... it never works the first time * "Tag" the release - svn cp svn://svn.videolan.org/vlc/trunk svn://svn.videolan.org/vlc/tag/X.X.X - or - svn mv svn://svn.videolan.org/vlc/branches/X.X.X svn://svn.videolan.org/vlc/tag/X.X.X - * Move /opt/ftp/pub/videolan/testing/vlc-X.X.X to /opt/ftp/pub/videolan/vlc/X.X.X + git tag -a -m "VLC Release VERSION" + (Create an annotated tag, you can skip -a if you used -m) + git push origin + + (You are advised to play with it on the sandrox.git if you feel + uncomfortable) + + * Move /opt/ftp/pub/videolan/testing/vlc-X.X.X to + /opt/ftp/pub/videolan/vlc/X.X.X + - At first block access to this directory by http or ftp. Only authorize + rsync. + This is to avoid leak as some journalists and forums seem to watch the ftp. - Update the "latest" symlink * Update the website - edit the /index.php /vlc/*.php pages - add a news item to news.msg + - update the front page OS dependant screenshots if the interface changed. * "Check for updates" functionality - add /opt/ftp/pub/videolan/vlc/X.X.X/vlc-X.X.X-announce - - edit update.videolan.org/vlc/status.xml + - edit update.videolan.org/vlc/status * Mirrors - Forwarn the mirror admins - - Update the list of files for the mirror check (/var/www/local/mirrors.v.o/files) - - Disable mirrors which haven't replicated yet and possibly ganesh if enough - other mirrors + - Update the list of files for the mirror check + (/var/www/local/mirrors.v.o/files) + - Disable mirrors which haven't synced yet and possibly ganesh if there are + enough other mirrors (see http://mirrors.videolan.org/release.html) + + * Update the wiki + - edit http://wiki.videolan.org/Template:VLC:latest_version + - put the respective NEWS page to wiki.videolan.org/Changelog/X.X.X + - announce the release on the Main Page * Announce on www.gnome.org - click on "Get more software" - click on "Edit an existing map entry" - look for the 'vlc' package - update the version number and other info and submit - - the change is instantaneaous + - the change is instantaneous * Announce on www.freshmeat.net (let sam do it) - you need a freshmeat account - go to http://www.freshmeat.net/projects/vlc/ - - click on the release's branch (ie Stable) - - chose "add release" in the dropdown menu + - click on the release's branch (i.e. Stable) + - chose "add release" in the drop-down menu - fill out all the info and submit - the update can take several hours * Announce on VersionTracker - ask Meuuh - * Announce email + * Announce email and forum topic - write something along the lines of previous releases - post in videolan-announce (moderated), vlc et vlc-devel + You are advised to add the author list for this version using + 'git shortlog -s PREVIOUS_VERSION..VERSION' + And to add git diff --stat PREVIOUS_VERSION..VERSION if it's relevant. + You can play a bit with git to show the piece of information that may be + interesting. - add a sticky thread in the "General VLC media player discussion" forum