Downloading SpamAssassin from SVN
The latest development version can be obtained at any given time from the SpamAssassin Subversion (SVN) repository. Please note that this code can be quite unstable and we don't recommend running it on real or important mail unless you really know what you are doing.
To do this, you will need to install subversion. Subversion website Subversion book Note that the server components are not required – just the 'svn' command and its dependencies.
If you are tracking the SVN tree, you should probably subscribe to the SpamAssassin-Dev mailing list – see MailingLists.
Viewing the SVN tree through the web
- Trunk (active development branch, a la CVS HEAD)
- The branches and tags
See SvnBranches for some details on these.
Downloading via anonymous SVN
$ svn checkout http://svn.apache.org/repos/asf/spamassassin/trunk spamassassin-trunk
This will put the latest (trunk) version of spamassassin in the directory spamassassin-trunk.
$ svn checkout http://svn.apache.org/repos/asf/spamassassin/branches/3.3 spamassassin-3.3
This will put the 3.3 branch of spamassassin in the directory spamassassin-3.3.
Downloading via authenticated SVN (committers only)
Use the same commands as above, but replace "http" with "https".
Authentication will allow you to commit your changes to the SpamAssassin tree. Commit access is generally given if you have a history of making valuable contributions to SpamAssassin in the form of patches.
Building
Follow the directions in the INSTALL file as usual (cd spamassassin-trunk; perl Makefile.PL; make; make install
).
Using Subversion
Updating your tree
$ svn update
This command should update your local tree to reflect changes made on the server. Do this periodically, especially before submitting a patch.
Creating a patch
$ svn diff
This will create a unified diff (patch-file) with the differences between your local tree and the server's copy. Be sure to update before you do this to ensure there are no conflicts.
Listing files
$ svn list http://svn.apache.org/repos/asf/spamassassin/branches
More information
For more information, try "svn help" and reading the Subversion website and the Subversion book.
Legacy
the old CVS tree and other modules are still hosted at sourceforge.net.
To update a subversion checkout from the incubator tree use the svn switch command inside your working directory:
$ svn switch http://svn.apache.org/repos/asf/spamassassin/trunk
Daily snapshots
http://cvs.apache.org/snapshots/spamassassin/
Ubuntu daily builds PPA
To use daily package builds for Ubuntu:
apt-get install python-software-properties # the add-apt-repository command add-apt-repository ppa:spamassassin/spamassassin-daily apt-get update apt-get install spamassassin spamc
Documentation of the process of updating the debian directory which this uses to build can be found at SyncDebianPackaging.