view DOCS/tech/release-howto.txt @ 23572:a00685941686

demux_mkv very long seek fix The seek code searching for the closest position in the index used "int64_t min_diff=0xFFFFFFFL" as the initial "further from the goal than any real alternative" value. The unit is milliseconds so seeks more than about 75 hours past the end of the file would fail to recognize the last index position as the best match. This was triggered in practice by chapter seek code which apparently uses a seek of 1000000000 seconds forward to mean "seek to the end". The practical effect was that trying to seek to the next chapter in a file without chapters made MPlayer block until it finished reading the file from the current position to the end. Fixed by increasing the initial value from FFFFFFF to FFFFFFFFFFFFFFF.
author uau
date Wed, 20 Jun 2007 18:19:03 +0000
parents e183a591efee
children 4c9698666a4c
line wrap: on
line source

How to make an MPlayer release
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

preparations:
- Announce release target date on dev-eng and #mplayerdev
- Ask the DOCS maintainers to commit their final changes, check if
  all docs are up to date, etc.
- Verify man page, remove obsolete options, mention new ones.
- Ask translation maintainers to update their help_mp*.h file.
- Update the ChangeLog file (according to CVS log), ask other developers
  to verify their parts, etc. Ask Diego to spellcheck it.
- Consult at -dev-eng about unstable parts of the code which should be
  disabled for the release.
- Find a codename for the release

create the release tree:
- tag cvs with release name
- update release.sh script with version number
***the following steps are done automatically by release.sh script***
- cvs checkout the mplayer src tree
- check out libavcodec and libavformat from FFmpeg CVS
- remove the CVS subdirs:
    find main -name CVS -exec rm -rf {} \;
- remove the .cvsignore files:
    find main -name .cvsignore -exec rm {} \;
- remove obsolete DOCS translations, help files
- replace version.sh with this (change version number too...):

============
#!/bin/sh
echo "#define VERSION \"1.0pre5-$1 \"" > version.h
============

- build the HTML docs from XML sources, then clean up:
    make html-chunked; make releaseclean

release the tree:
    cd ..
    mv main MPlayer-0.90rc5
    tar -cf MPlayer-0.90rc5.tar MPlayer-0.90rc5
    bzip2 -9 MPlayer-0.90rc5.tar
***end of part done by release.sh**

test it (download to your local machine, extract, compile, run)
 - compilers: gcc 3, gcc 2.95, mingw, cygwin
 - architectures: PPC, AMD64, x86 with MMX[2], SSE[2], 3DNow
 - OS: Linux, BSD, Windows, MacOS X

copy to FTP:
    cp MPlayer-0.90rc5.tar.bz2 /home/ftp/MPlayer/releases/
    cp ChangeLog-0.90rc5 and update ChangeLog symlink
    md5sum MPlayer-0.90rc5.tar.bz2 > MPlayer-0.90rc5.tar.bz2.md5

move the older (pre)release(s) (except the last one before the current one)
to ../OLD_stuff/ dir

Somehow get Diego to write a news entry for the release, and update the
source file of dload.html and commit it. Test it, it's sometimes buggy
(broken links etc). Also, update translated versions of dload.html.

Send a message to mplayer-announce mailing list.

Add the new release version to bugzilla page.

Update release version in #mplayer topic

Update project page on Freshmeat

Done.