]> git.sesse.net Git - vlc/blobdiff - doc/release-howto.txt
fix for #1533: check on array boundaries before removing media
[vlc] / doc / release-howto.txt
index 771b5f179cee09cd878b404b56285bcf795f4107..05f521008e5b5a75718a3f8c9b8864964a640929 100644 (file)
-
 [ Note: this howto is probably useful to core vlc developers only ]
 
   Release HOWTO
- - - - - - - - -
-
- * Tests préalables (compilation, regression test, etc.) (on ne rit pas)
-
- * Opérations sur la repository
-
-  - générer un timestamp de release (par exemple avec 822-date)
-  - updater le numéro de version partout où c'est nécessaire
-     · configure.in (relancer autoconf)
-     · vlc.spec
-     · ipkg/control
-     · debian/changelog
-     · extras/MacOSX/vlc.pbprj/project.pbxproj
-  - mettre à jour les ChangeLog et la TODO list pour ceux qui auraient
-    étourdiment oublié de l'updater à chaque commit
-  - updater le numéro de version et le timestamp dans :
-     · vlc.spec
-     · ChangeLog
-     · debian/changelog
-  - updater debian/changelog (laissez faire sam si vous ne savez pas
-    comment faire)
+  -------------
+
+ * Tests : compilation, regression tests ...
+
+ * Changes on the svn 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
+   - Add a note about the matching contrib package in INSTALL.win32
+   - Make sure that the gpg key embedded in include/vlc_update.h is the last one
 
  * Commit
 
- * Tarballs
-
-  - créer le tar.gz du vlc avec `make dist'.
-  - copier le tar.gz sur brahma, dans /opt/ftp/pub/vlc/XXX/
-  - si les répertoires créés ne sont pas en g+w, corriger cela
-
- * Packages Debian
-
-    mv vlc-XXX.tar.gz vlc_XXX.orig.tar.gz
-    tar xvzf vlc_XXX.orig.tar.gz
-    cd vlc-XXX
-    dpkg-buildpackage -rfakeroot
-    if [ $LOGNAME = sam ]; then debupload ../*XXX*; fi
-    # copier les fichiers créés sur brahma, dans /opt/ftp/pub/vlc/XXX/deb/
-
- * Packages RPM
-
-    rpm -ta vlc-XXX.tar.gz
-    # copier les fichiers créés sur brahma, dans /opt/ftp/pub/vlc/XXX/rpm/
-
- * Packages BeOS
-
-    tar xvzf vlc-XXX.tar.gz
-    cd vlc-XXX
-    ./configure --with-dvdcss-tree=../libdvdcss --enable-release
-    make
-    make package-beos
-    # copier le .zip créé sur brahma, dans /opt/ftp/pub/vlc/XXX/beos/
-
- * Packages Win32
-
-    # aller sur vthr
-    tar xvzf vlc-XXX.tar.gz
-    cd vlc-XXX
-    configure-win32 --enable-release --disable-gtk --disable-sdl
-    make
-    make package-win32
-    # copier le .exe créé sur brahma, dans /opt/ftp/pub/vlc/XXX/win32/
-
- * Commit (ben oui, faut pas croire que tout aura marché du premier coup)
-
- * Tag, selon le schéma v0_2_92 pour 0.2.92
-
- * Update sur le web
-
-  - le web se trouve dans /var/www/www.videolan.org/
-  - éditer vlc/download.html pour mettre à jour les tarballs
-  - éditer news.msg pour mettre une petite bafouille sur la release, en
-    s'inspirant des releases précédentes et du changelog quand on n'a pas
-    d'idées
-
- * Annonce sur www.gnome.org
-
-  - cliquer à gauche sur "Get more software"
-  - cliquer sur "Edit an existing map entry"
-  - rentrer 'vlc' comme nom de package
-  - mettre à jour le numéro de version et d'éventuels détails, et submit
-  - l'update est instantanée
-
- * Annonce sur www.freshmeat.net
-
-  - il faut avoir un compte sur freshmeat
-  - aller sur http://www.freshmeat.net/projects/vlc/
-  - cliquer sur la branche de la release, par exemple Ourumov
-  - choisir "add release" dans le menu déroulant
-  - remplir tout le bazar, et submit
-  - l'update peut mettre plusieurs heures
-
- * Annonce sur VersionTracker
-
-  - demander à Meuuh pour le moment
-
- * Mail d'annonce
-
-  - s'inspirer du format des annonces précédentes
-  - poster dans videolan-announce, vlc et vlc-devel
+ * 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
+    /opt/ftp/pub/videolan/testing/vlc-X.X.X/
+  - generate md5 hashes and gpg signature of these files
+    (use gpg --sign --detach --armor --force-v3-sigs)
+
+ * Contribs
+  - Put a copy of the libraries or svn 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 hashes and gpg signature of these files
+   (use gpg --sign --detach --armor --force-v3-sigs)
+
+ * Win32 Packages
+    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
+   (use gpg --sign --detach --armor --force-v3-sigs)
+
+ * OS X packages
+   configure with --enable-update-check
+   generate md5 hashes and gpg signature of these files
+   (use gpg --sign --detach --armor --force-v3-sigs)
+
+ * 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
+  - At first block access to this directory by http or ftp. Only authorize rsync.
+    This is to avoid leak as some journalist and forum seems 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
+
+ * "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
+
+ * 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 wiki
+  - edit http://wiki.videolan.org/Template:VLC:latest_version
+
+ * 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
+
+ * 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
+  - fill out all the info and submit
+  - the update can take several hours
+
+ * Announce on VersionTracker
+  - ask Meuuh
+
+ * Announce email
+  - write something along the lines of previous releases
+  - post in videolan-announce (moderated), vlc et vlc-devel
+  - add a sticky thread in the "General VLC media player discussion" forum