X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=doc%2Fsource%2Fdeveloper-manual.sgml;h=638a49b9251692599fddd9ec81b4c5493bac76ac;hp=9a4fe6d578868df03a22d34a2dc792170e7d8915;hb=979620bb4c7aaaeb96f07b73b823c686d83cf14c;hpb=3e837e6e9561de90b1db799199f8036977cb36b0
diff --git a/doc/source/developer-manual.sgml b/doc/source/developer-manual.sgml
index 9a4fe6d5..638a49b9 100644
--- a/doc/source/developer-manual.sgml
+++ b/doc/source/developer-manual.sgml
@@ -5,10 +5,10 @@
-
-
-
-
+
+
+
+
@@ -19,7 +19,7 @@
Purpose : developer manual
- Copyright (C) 2001-2018 Privoxy Developers https://www.privoxy.org/
+ Copyright (C) 2001-2020 Privoxy Developers https://www.privoxy.org/
See LICENSE.
========================================================================
@@ -39,7 +39,7 @@
Copyright
- &my-copy; 2001-2018 by
+ &my-copy; 2001-2020 by
Privoxy Developers
@@ -133,8 +133,8 @@ Hal.
can be sent to the list for review too.
- You will also need to have a git package installed, which will
- entail having ssh installed as well, in order to access the git repository.
+ You will also need to have a git package installed,
+ in order to access the git repository.
Having the GNU build tools is also going to be important (particularly,
autoconf and gmake).
@@ -158,10 +158,16 @@ Hal.
Access to Git
The project's Git repository is hosted at the
- Privoxy site.
- The Git repository URL is
- ssh://git@git.privoxy.org:23/git/privoxy.git,
- the central repository is called privoxy, and the
+ Privoxy website.
+ For Privoxy team members with push privileges the Git repository URL is
+ ssh://git@git.privoxy.org:23/git/privoxy.git.
+
+
+ Contributors without push privileges can
+ git clone https://www.privoxy.org/git/privoxy.git
.
+
+
+ The central repository is called privoxy, and the
source branch is called master. Subfolders exist
within the project for target-dependent build and packaging tools, each
including the name of the target operating system in their name (e.g.
@@ -2139,7 +2145,7 @@ $ afl-fuzz -i input/ -o output/ -f bla.filter -m none privoxy --fuzz filter bla.
- Before the Release: Freeze
+ Before the Release
The following must be done by one of the
developers prior to each new release.
@@ -2189,7 +2195,56 @@ for-privoxy-version=3.0.11
- All documentation should be rebuild after the code status has been changed.
+ Create the change log:
+
+
+ $ git tag
+ # to see the tags
+ $ git log [last release tag]..HEAD > /tmp/log
+ # get the commit log since the last release
+ $ utils/makeChangeLog /tmp/log > /tmp/change.log
+ # reformat the commit log
+
+
+ Edit /tmp/change.log to remove trivial
+ changes and group the changes under general headings like:
+
+
+- Bug fixes:
+- Action file improvements:
+- Filter file improvements:
+- General improvements:
+- Documentation improvements:
+- Build system improvements:
+- Code cleanups:
+- Privoxy-Log-Parser:
+- Privoxy-Regression-Test:
+
+
+ Add the contents of /tmp/change.log to the
+ start of ChangeLog and re-create
+ doc/source/changelog.sgml:
+
+
+ $ utils/changelog2doc.pl /tmp/change.log >| doc/source/changelog.sgml
+
+
+
+
+ All developers should look at the ChangeLog and
+ make sure noteworthy changes are referenced.
+
+
+
+
+ All documentation should be rebuilt:
+
+ $ make man
+ $ make dok
+ $ make dok-man
+ $ make dok-tidy
+ $ make config-file
+
Finished docs should be then be committed to Git (for those
without the ability to build these). Some docs may require
rather obscure processing tools. config,
@@ -2201,6 +2256,11 @@ for-privoxy-version=3.0.11
in this manual for details.
+
+
+ Commit all files that were changed in the above steps!
+
+
The User Manual is also used for context
@@ -2215,31 +2275,13 @@ for-privoxy-version=3.0.11
target for this at this time!!! It needs to be done manually.
-
-
- All developers should look at the ChangeLog and
- make sure noteworthy changes are referenced.
-
-
-
-
- Commit all files that were changed in the above steps!
-
-
Tag all files in Git with the version number with
- cvs tag v_X_Y_Z
.
+ git tag v_X_Y_Z
.
Don't use vX_Y_Z, ver_X_Y_Z, v_X.Y.Z (won't work) etc.
-
-
- If the release was in a development branch, increase the point version
- from even to odd (X.Y.(Z+1)) again in configure.in and
- commit your change.
-
-
On the webserver, copy the user manual to a new top-level directory
@@ -2270,8 +2312,9 @@ for-privoxy-version=3.0.11
mkdir dist # delete or choose different name if it already exists
cd dist
- cvs -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa login
- cvs -z3 -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
+ git clone https://www.privoxy.org/git/privoxy.git
+ cd privoxy
+ git checkout v_X_Y_Z
@@ -2493,55 +2536,6 @@ for-privoxy-version=3.0.11
- OS/2
-
- First, make sure that you have freshly exported the right
- version into an empty directory. (See "Building and releasing
- packages" above). Then get the OS/2 Setup module:
-
-
- cvs -z3 -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa co os2setup
-
-
- You will need a mix of development tools.
- The main compilation takes place with IBM Visual Age C++.
- Some ancillary work takes place with GNU tools, available from
- various sources like hobbes.nmsu.edu.
- Specificially, you will need autoheader,
- autoconf and sh tools.
- The packaging takes place with WarpIN, available from various sources, including
- its home page: xworkplace.
-
-
- Change directory to the os2setup directory.
- Edit the os2build.cmd file to set the final executable filename.
- For example,
-
-
- installExeName='privoxyos2_setup_X.Y.Z.exe'
-
-
- Next, edit the IJB.wis file so the release number matches
- in the PACKAGEID section:
-
-
- PACKAGEID="Privoxy Team\Privoxy\Privoxy Package\X\Y\Z"
-
-
- You're now ready to build. Run:
-
-
- os2build
-
-
- You will find the WarpIN-installable executable in the
- ./files directory. Upload this anonymously to
- uploads.sourceforge.net/incoming, create a release
- for it, and you're done. Use the release notes and Change Log from the
- source tarball package.
-
-
-
Solaris
Login to Sourceforge's compilefarm via ssh: