Updating Contact email
[BrunelResearch-dirac.git] / README.release
blob137dbc39841721b9e44bde0ba25727253249e986
1 Checklist for releasing new versions of Dirac
2 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 1.    Compilation
5 1.1    Compile with gcc under Linux with debug options on and remove all errors
6 and warnings (use ./configure --enable-debug)
8 1.2    Compile with icc under Linux with debug options and remove all errors 
9 and warnings (use ./configure CXX=icc --enable-debug)
11 1.3    Compile with cl under Windows and MSYS with debug options 
12 and remove all errors and warnings (use ./configure --enable-debug)
14 1.4 Compile with VC++ under Windows XP/2000 with debug options and remove all 
15 errors and warnings
17 2.    Execution
19 2.1    Run make check with gcc and icc and cl makes.
21 2.2    Check that a) the Linux gcc decoder executable can decode the output of 
22 the Windows VC++ encoder executable and the decoder output is the same as the 
23 locally decoded encoder output; and b) the Windows VC++ decoder executable can 
24 decode the output of the Linux gcc encoder executable and the decoder output 
25 is the same as the locally decoded encoder output.
27 2.3    Check that diagnostics tool works
29 3    Inspection
31 3.1    View the test picture results of make check and check that file sizes 
32 and picture quality are 'reasonable'.
34 4.    Code
36 There is no need to inspect the code in detail as this should have been done as 
37 part of the review process prior to being placed on the diracvideo Git
38 repository.
40 4.1    Run dos2unix on all test files to remove dos line-breaks.
42 4.2    Ensure that all new source files (.cpp, .c and .h) include the Id and
43        Name RCS tags.
45 5.    Documentation
47 5.1 Check that the doxygen API docs build without error. Check that API 
48 documents have been generated for any added executables or libraries.
50 5.2 Place the API docs on the website.
52 5.3 Update algorithm documentation if necessary and place on the website.
54 5.4 Produce READMEs for any added utilities or separate programs.
56 5.5 Update READMEs in the main dirac directory.
58 5.6 Check that the contributor database is up to date and that any code that is 
59 to be released has been appropriately licensed.
61 5.7 Update NEWS with features added/bugs fixed in the release
63 Any changes resulting from these checks should be checked into the diracvideo
64 GIT repository.
66 6.   Creating and testing the Release
68      Once all the above checks have been successful, it is time to create the
69      release.
71 6.1 Ensure that all files are committed into the diracvideo GIT repsitory.
73 6.2 Check out the latest code from the diracvideo GIT repository into 
74 a new directory. This is to ensure that all modified/new files have been
75 checked in.
77 6.3 Update the release id in configure.ac and commit the changes. Regenerate
78 the configure script (./bootstrap)
80 6.4 Compile and test the code again in this directory to ensure that all files
81 have been checked in.
83 6.5 Create the distribution using 'make dist'. 
85 6.6 Unpack the distribution and compile and test it (Steps 1 and 2) to ensure 
86 that the release distribution has all the necessary files.
88 6.7 Ensure that all the documentation (new READMEs) are present in the release.
90 6.8 Update ChangeLog
92 6.9 Tag all the files with the latest release tag
94 6.10 Repeat Steps 6.2 thru 6.6
96 6.11 Ensure that all mirror sites (e.g. Sourceforge.net/projects/dirac) are 
97      updated.
99 6.11 Upload the distribution to Dirac downloads page on diracvideo.org and 
100      Dirac project page on Sourceforge.
102 6.12 Recreate the Dirac Directshow filter if required and upload it to Dirac 
103      downloads page on diracvideo.org and Dirac project page on Sourceforge
105 6.15 Announce the new release by sending an email to the Dirac announce mailing 
106     list dirac-announce@lists.sourceforge.net
108 6.16 Update News on the diracvideo.org and Dirac project page on Sourceforge.
110 6.17 Update project page on www.freshmeat.net