4 >Releasing a new version</TITLE
7 CONTENT="Modular DocBook HTML Stylesheet Version 1.64
10 TITLE="Privoxy Developer Manual"
11 HREF="index.html"><LINK
13 TITLE="Testing Guidelines"
14 HREF="testing.html"><LINK
16 TITLE="Contacting the developers, Bug Reporting and Feature Requests"
17 HREF="contact.html"><LINK
20 HREF="../p_doc.css"></HEAD
39 >Privoxy Developer Manual</TH
74 >8. Releasing a new version</A
77 > To minimize trouble with distribution contents, web-page
78 errors and the like, we strongly encourage you
79 to follow this section if you prepare a new release of
80 code or new pages on the webserver.
83 > The following programs are required to follow this process:
94 > (GNU's version of make), autoconf, cvs, ???.
97 > Replace X, Y and Z with the actual version number (X = major, Y = minor, Z = point):
105 >8.1. Before the Release</A
110 >must be done by one of the
112 > prior to each new release.
120 > Make sure that everybody who has worked on the code in the last
121 couple of days has had a chance to yell <SPAN
125 they have pending changes/fixes in their pipelines.
130 > Increment the version number in <TT
134 CVS. Also, increase or reset the RPM release number in
138 > as appropriate. Do <I
142 touch version information after export from CVS.
146 > will use the version and release data
151 Local files should not be changed, except prior to a CVS commit!!!
152 This way we are all on the same page!
160 > has changed since last
161 release, bump up its version info in this line:
172 CLASS="PROGRAMLISTING"
173 > {+add-header{X-Actions-File-Version: A.B} -filter -no-popups}
182 Then change the version info in doc/webserver/actions/index.php,
183 line: '$required_actions_file_version = "A.B";'
190 >Commit all files that were changed in the above steps!</I
196 > Tag all files in CVS with the version number with
204 Don't use vX_Y_Z, ver_X_Y_Z, v_X.Y.Z (won't work) etc.
209 > The first package uploaded should be the official
213 > release, as required by the GPL. This is built
218 >make tarball-dist</B
221 target, and then can be uploaded with
226 >make tarball-upload</B
240 NAME="NEWRELEASE-WEB"
241 >8.2. Update the webserver</A
244 > All files must be group-readable and group-writable (or no one else
245 will be able to change them)! To update the webserver, create any
246 pages locally in the <TT
250 create new directories under <TT
263 CLASS="PROGRAMLISTING"
272 > This will do the upload to the webserver (www.privoxy.org).
291 >doc/webserver/user-manual</TT
295 >doc/webserver/developer-manual</TT
299 >doc/webserver/faq</TT
303 >doc/webserver/index.html</TT
307 >doc/webserver/man-page/privoxy-man-page.html</TT
309 is created by a separate Makefile target, <SPAN
316 >, due to dependencies on some obscure perl scripts.
324 Someone should also commit these to CVS so that packagers without the
325 ability to build docs locally, have access to them. This is a separate
326 step, and should also be done before each official release.
329 > Please do NOT use any other means of transferring files to the
337 uploads, but will make sure that the appropriate permissions are
338 preserved for shared group access.
346 NAME="NEWRELEASE-RPM"
347 >8.3. SuSE or Red Hat</A
350 > Ensure that you have the latest code version. Hence run:
360 CLASS="PROGRAMLISTING"
361 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
362 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
381 CLASS="PROGRAMLISTING"
382 > autoheader && autoconf && ./configure
400 CLASS="PROGRAMLISTING"
401 > make suse-dist or make redhat-dist
409 > To upload the package to Sourceforge, simply issue
419 CLASS="PROGRAMLISTING"
420 > make suse-upload (or make redhat-upload)
428 > Go to the displayed URL and release the file publicly on Sourceforge.
436 NAME="NEWRELEASE-OS2"
440 > Ensure that you have the latest code version. Hence run:
450 CLASS="PROGRAMLISTING"
451 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
452 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
454 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa co os2setup
462 > You will need a mix of development tools.
463 The main compilation takes place with IBM Visual Age C++.
464 Some ancillary work takes place with GNU tools, available from
465 various sources like hobbes.nmsu.edu.
466 Specificially, you will need <TT
477 The packaging takes place with WarpIN, available from various sources, including
479 HREF="http://www.xworkplace.org/"
485 > Change directory to the <TT
489 Edit the os2build.cmd file to set the final executable filename.
498 CLASS="PROGRAMLISTING"
499 > installExeName='privoxyos2_setup_X.Y.Z.exe'
508 > file so the release number matches
520 CLASS="PROGRAMLISTING"
521 > PACKAGEID="Privoxy Team\Privoxy\Privoxy Package\X\Y\Z"
527 You're now ready to build. Run:
535 CLASS="PROGRAMLISTING"
545 > directory you will have the
546 WarpIN-installable executable.
547 Upload this anonymously to
550 >uploads.sourceforge.net/incoming</TT
552 for it, and you're done.
560 NAME="NEWRELEASE-SOLARIS"
564 > Login to Sourceforge's compilefarm via ssh
574 CLASS="PROGRAMLISTING"
575 > ssh cf.sourceforge.net
583 > Choose the right operating system (not the Debian one). If you have
597 CLASS="PROGRAMLISTING"
598 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
599 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
609 HREF="http://www.privoxy.org/user-manual/user-manual/installation.html#INSTALLATION-SOURCE"
612 Privoxy via CVS first</A
623 CLASS="PROGRAMLISTING"
624 > autoheader && autoconf && ./configure
642 CLASS="PROGRAMLISTING"
651 > which creates a gzip'ed tar archive. Sadly, you cannot use <B
655 > on the Sourceforge machine (no ncftpput). You now have
656 to manually upload the archive to Sourceforge's ftp server and release
665 NAME="NEWRELEASE-WINDOWS"
669 > Ensure that you have the latest code version. Hence run
679 CLASS="PROGRAMLISTING"
680 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
681 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
700 CLASS="PROGRAMLISTING"
701 > autoheader && autoconf && ./configure
717 NAME="NEWRELEASE-DEBIAN"
721 > Ensure that you have the latest code version. Hence run:
731 CLASS="PROGRAMLISTING"
732 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
733 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
752 CLASS="PROGRAMLISTING"
753 > autoheader && autoconf && ./configure
769 NAME="NEWRELEASE-MACOSX"
773 > Ensure that you have the latest code version. Hence run:
783 CLASS="PROGRAMLISTING"
784 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
785 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
787 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa co osxsetup
795 > From the osxsetup directory, run:
803 CLASS="PROGRAMLISTING"
826 Finally, it will copy over the necessary files to the ./osxsetup/files directory
827 for further processing by <TT
833 > Bring up PackageMaker with the PrivoxyPackage.pmsp definition file, modify the package
834 name to match the release, and hit the "Create package" button.
835 If you specify ./Privoxy.pkg as the output package name, you can then create
836 the distributable zip file with the command:
844 CLASS="PROGRAMLISTING"
845 >zip -r privoxyosx_setup_x.y.z.zip Privoxy.pkg
851 You can then upload <TT
853 >privoxyosx_setup_x.y.z.zip</TT
857 >uploads.sourceforge.net/incoming</TT
859 create a release for it, and you're done.
867 NAME="NEWRELEASE-FREEBSD"
871 > Change the version number of <SPAN
875 configure.in file. Run:
883 CLASS="PROGRAMLISTING"
884 > autoheader && autoconf && ./configure
893 > Login to Sourceforge's compilefarm via ssh:
903 CLASS="PROGRAMLISTING"
904 > ssh cf.sourceforge.net
912 > Choose the right operating system.
922 CLASS="PROGRAMLISTING"
923 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
924 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
943 CLASS="PROGRAMLISTING"
944 > autoheader && autoconf && ./configure
962 CLASS="PROGRAMLISTING"
971 > which creates a gzip'ed tar archive. Sadly, you cannot use <B
975 > on the Sourceforge machine (no ncftpput). You now have
976 to manually upload the archive to Sourceforge's ftp server and release
985 NAME="NEWRELEASE-TARBALL"
989 > Ensure that you have the right code version. Hence run:
999 CLASS="PROGRAMLISTING"
1000 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
1001 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
1020 CLASS="PROGRAMLISTING"
1021 > autoheader && autoconf && ./configure
1039 CLASS="PROGRAMLISTING"
1048 > To upload the package to Sourceforge, simply issue
1058 CLASS="PROGRAMLISTING"
1059 > make tarball-upload
1067 > Goto the displayed URL and release the file publicly on Sourceforge.
1075 NAME="NEWRELEASE-HPUX"
1079 > Ensure that you have the latest code version. Hence run:
1089 CLASS="PROGRAMLISTING"
1090 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
1091 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
1110 CLASS="PROGRAMLISTING"
1111 > autoheader && autoconf && ./configure
1127 NAME="NEWRELEASE-AMIGA"
1131 > Ensure that you have the latest code version. Hence run:
1141 CLASS="PROGRAMLISTING"
1142 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
1143 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
1162 CLASS="PROGRAMLISTING"
1163 > autoheader && autoconf && ./configure
1179 NAME="NEWRELEASE-AIX"
1183 > Login to Sourceforge's compilefarm via ssh:
1193 CLASS="PROGRAMLISTING"
1194 > ssh cf.sourceforge.net
1202 > Choose the right operating system. If you have downloaded Privoxy
1213 CLASS="PROGRAMLISTING"
1214 > cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
1215 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
1225 HREF="http://www.privoxy.org/user-manual/user-manual/installation.html#INSTALLATION-SOURCE"
1228 Privoxy via CVS first</A
1239 CLASS="PROGRAMLISTING"
1240 > autoheader && autoconf && ./configure
1258 CLASS="PROGRAMLISTING"
1267 > which creates a gzip'ed tar archive. Sadly, you cannot use <B
1271 > on the Sourceforge machine (no ncftpput). You now have
1272 to manually upload the archive to Sourceforge's ftp server and release
1317 >Testing Guidelines</TD
1327 >Contacting the developers, Bug Reporting and Feature Requests</TD