Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > 83452fcd51a725c8992bd3f1258db168 > files > 99

lib64vlc-devel-2.1.2-1.mga4.tainted.x86_64.rpm

Release HOWTO
-------------

[ Note: this howto is probably useful to core vlc developers only ]

 * Tests: compilation, regression tests ...

 * Changes on the git repository
   - Check that the version number everywhere it's needed
     · configure.ac
     · NEWS
   - Update important things and add them to the NEWS file
   - Close the milestone on Trac https://trac.videolan.org/vlc
   - 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
 * "Tag" the release
    git tag -a -m "VLC Release VERSION" <VERSION>
    (Create an annotated tag, you can skip -a if you used -m)
    git push origin <VERSION>

 * Tarballs (Use a clean tree !!!)
  - Use 'make distcheck' to make sure all files are exported correctly
  - copy the tar.xz file on ganesh.videolan.org
  - generate SHA, MD5 hashes and OpenPGP signature of these files
    (use sha*sum --binary, md5sum --binary, gpg --sign --detach --armor)
    Use the sumandsign.sh script

 * Contribs
  - Put a copy of the libraries or git snapshot in ftp://ftp.videolan.org/pub/contrib/
  - Put the relevant win32 and Mac OS contrib package
  - Update s.v.o/vlc and www.v.o/vlc/download-sources.html

 * Win32 Packages
  - configure using the extras/package/win32/configure.sh script
  - copy the packages files on ganesh.videolan.org
  - copy the vlc-2.0.4 and symbols-2.0.4 to balthazar for stacktraces

 * Mac OS X packages
  - configure using the extras/package/macosx/configure.sh script
  - compile the source on both a PowerPC and an Intel-based Mac.
  - use extras/package/macosx/ub.sh to create a Universal Binary.
  - use extras/package/macosx/codesign.sh to sign it.
  - copy the packages files on ganesh.videolan.org

 * Sign all the files and move the signed files on /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 "last" symlink

 * Update the website
  - edit the /index.php /vlc/*.php, include/os-specific.php files
  - create a /vlc/release/X.X.X page
  - add a news item to news.msg
  - update the front page OS dependant screenshots if the interface changed.
  - update the md5

 * "Check for updates" functionality
  - edit update.videolan.org/vlc/status
  - gpg -t --sign --detach --armor

 * Mirrors (if necessary)
  - 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 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

 * Announce on www.freecode.com (let jb or sam do it, if you lack the account)
  - go to https://freecode.com/projects/vlc/
  - chose "Submit a release" in the right menu, in "Administration"
  - Do the steps and wait (the update can take several hours)

 * Announce on Twitter, Facebook and G+
  Unfortunately, those are more followed than the all other mediums combined

 * 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