About
CVSspam emails you diffs when a change is committed to
your CVS repository. These HTML mails
hyperlink to further details and use styling to emphasise information
structure.
Example
See a basic example and an
artificially complicated test case
email.
Features
- Every email includes colourised unified-diffs for all changed
text files, and the committer's log comment.
- Configurable limits prevent emails becoming too large.
- If configured, mails can include links to
Bugzilla
bugs, RT tickets
and JIRA
issues, from specially formated log messages.
- If configured, mails can include links to a
ViewCVS,
CVSweb
or Chora view of your
repository. Particularly useful for seeing binary image files before
and after a change.
- Written in
Ruby.
Downloads
Subscribe to release announcements
Current
0.2.12 2005-07-11
cvsspam-0.2.12.tar.gz
Changes since 0.2.11:
- Email addresses parsed from
CVSROOT/users
are now stripped of any surrounding
quotes, thanks to a patch from Elan Ruusamäe. - A numbering error that caused
links from the top-of-mail index to point at the file next to the one
they should have pointed at was fixed; as reported by several
people.
- Ricardo Pardini provided a
patch that handles [[Wiki Links]] in the commit log comment.
- Newer versions of Ruby don't
allow scripts to modify their command-line arguments, so CVSspam
altered to avoid doing that. (A problem that was introduced in release
0.2.11 while trying to fix another issue; thanks to Sven Köhler for
checking this).
- Improve email address
handling, so that we can now encode non-ASCII characters in any
'personal name' part of an address. Elan Ruusamäe pointed out the lack
of encoding.
- Per a suggestion by
Corporate Gadfly, the presence of the
-kb
'sticky option'
on a file now
causes CVSspam to avoid producing a diff for that file; handy when
diff's inbuilt binary-file detection heuristic fails. The
-kb
option
can be specified when files are added to the repository, or added
later with cvs admin
. - It is now possible to
specify a charset for emails in the
CVSROOT/loginfo
configuration file (so the setting
can vary between CVS modules). This feature was implemented by Elan
Ruusamäe. - Handle the case where
someone has checked out the entire repository
(
cvs co .
); avoid creating email subjects with
prefix '[CVS .]'. Thanks to Christopher Petro for the patch. - Allow the internal
$max_lines_per_diff
option to be set to
nil
, meaning 'no limit', following Christopher
Petro's suggestion. - The CSS formatting for the
'commit log comment' portion of the email now allows long lines to be
broken, in mail clients that support this feature.
- The documentation now gives
an overview of the install process before diving into a description of
the steps.
- Notification of commits to a
given, single file can now be automatically threaded together by mail
clients that support this, thanks to a suggestion by Elan
Ruusamäe.
Previous
0.2.11 2004-08-24
cvsspam-0.2.11.tar.gz
Changes since 0.2.10:
- Stop commits from some Mac CVS
clients breaking the Subject, and all following headers
- Stop a '.' appearing on a line on
its own in the commit log comment breaking this, and subsequent
notification emails
- Made the
$no_removed_file_diff
option work - Implemented a
$no_added_file_diff
option to suppress inclusion of
diffs containing the contents of added files, and a
$no_diff
option, for supression diffs
entirely - Tried to fix breakage of the tag
in the email subject (which creates text like
#<Repository:0x402d08c4>
, rather than the name
of the top-level CVS project directory). Fix unconfirmed - Altered some of the
HTML-generating code making it less likely to produce super-long lines
in the email markup
- Fixed unescaped ampersand in the
HTML
- Supply missing
repository_name
attribute to CVSweb code
0.2.10 2004-08-24
cvsspam-0.2.10.tar.gz
Changes since 0.2.9:
- The expansion of a CVS username
in
CVSROOT/users
may now contain whitespace,
although we may still not be properly handling quotes in this
file - A 2 megabyte limit is placed
on the amount of diff output included in emails. The limit is
soft; we are allowed to pass the limit to
prevent truncating a file's diff midway (but note that a seperate limit
on the number of lines in an individual file's diff already
exists)
- When using SMTP directly to
send mail, a date header is now included, as its lack broke most
mail-reader's sort-by-date functionality
- Fixes problems in commitinfo
argument parsing that would prevent CVSspam working with the CVS 1.12.x
series
- Work around occasional
received broken pipe signal
errors from CVS, in at
least some cases
0.2.9 2004-05-10
cvsspam-0.2.9.tar.gz
Changes since 0.2.8:
- Take sender email addresses
from the
CVSROOT/users
config file, if it exists
- Truncate super-long lines in
diff output
- Fix an error generating the email
subject under certain circumstances
- Multi-repository support for
CVSweb
0.2.8 2003-09-23
cvsspam-0.2.8.tar.gz
Changes since 0.2.7:
- Support sending email using
Net::SNMP
for people with no MTA on their CVS
server - Support ViewCVS's
multiple-repository feature
- Documentation
improvements
- Fix some 'uninitialized variable'
warnings
0.2.7 2003-07-12
cvsspam-0.2.7.tar.gz
Changes since 0.2.6:
- Any CVS branch name is
included in the email subject, and the names of files commited may be
added too
- CVSweb is now a supprted web
front-end
- The script can make better
From addresses when using a CVS pserver with aliased usernames, using a
new
--user
flag - JIRA issue numbers and RT
ticket numbers can be made into links from the log comment
0.2.6 2003-03-24
cvsspam-0.2.6.tar.gz
Changes since 0.2.5:
- Fix temp-file security problems
(and honour
$TMPDIR
) - Encode non-ASCII characters in
the email Subject header (per RFC2047)
- Support Chora as well as
ViewCVS
- When all files where
commited on the same branch, don't display the branch name against
every file
- Make each component of a
file's path into a link, and carry any branch name though to the
dir-view (ViewCVS only)
- Tries to generate
X-Originating-IP header for remote CVS commits
- Fixed more HTML issues
0.2.5 2003-01-15
cvsspam-0.2.5.tar.gz
Changes since 0.2.4:
- Supports committing to many
top-level projects under a CVSROOT at once, which used to cause an
infinite loop
- Now reports branch name for
deleted files (as well as added or modified ones)
- Changes in RCS keywords may
now be suppressed in diff output (e.g. changes in
$Revision: 1.1 $
number) - The contents of files that
are being removed may be excluded from mails
- The the character-encoding
specified in the mail headers is configurable
- Small tweaks to the message
formatting
0.2.4 2002-11-17
cvsspam-0.2.4.tar.gz
Changes since 0.2.3:
- Really use the
$cvs_prog
from the config file - Prevent error on adding directory
to CVS
- Make URLs and email
addresses from log comment into links in HTML
- Fix some cases of broken HTML
generation
- Improved formatting
0.2.3 2002-11-02
cvsspam-0.2.3.tar.gz
Changes since 0.2.2:
- Truncate diff output after
1000 lines
- Make files in the same dir
easier to spot in the top-of-mail index
- Make bug-regexp match more
possibilities
- Fix some broken HTML
syntax
0.2.2 2002-10-30
cvsspam-0.2.2.tar.gz
Changes since 0.2.1:
- Diff output not (less?)
broken
- Generates prefixes like
[CVS repositoryname]
for mail subjects - In some versions of ruby there
was a syntax error
- On some setups it complained
about diff having failed, when it hadn't
- Displays branch names and
versions (with viewcvs links) in the top-of-mail file index
- Binary and Empty files only
appear in the top-of-mail index, not in the 'diffs' section
- If the only change on a line
is the dos vs. unix line type, try to highlight that
- Restricts length of the
subject to 200 chars
- Tweaked HTML a bit for
Evolution (but still no colour highlights)
0.2.1 2002-10-13
cvsspam-0.2.1.tar.gz
- Initial release of port from
Perl to Ruby
Contact
Email questions, bug reports, feature requests and patches to
the development mailing list cvsspam-devel
Related Software
Other CVS commit-notifiers:
Web frontends to CVS supported by CVSspam:
Issue/bug-trackers supported by CVSspam:
Many Satisfied Customers!
The outlook express spell checker offers the word
Cesspit as a
replacement for the misspelled word
CVSspam.
— Matthew Lenz
CVSspam - nomen est omen!
Hmmm .. I wonder about a meeting of the badgers in foil and
Why's
chunky bacon foxes .. perhaps in the next installment of the
poignant guide?
Chris Andrews wrote:
> badgers-in-foil
Is this with a little white wine, bay leaves, a smattering of
diced onions, ground pepper and garlic to taste. I can heartily recommend
it with Chicken.