emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Savannah-hackers] diffmon


From: Jaime E. Villate
Subject: Re: [Savannah-hackers] diffmon
Date: Mon, 26 Nov 2001 14:10:50 +0000
User-agent: Mutt/1.2.5i

On Sun, Nov 25, 2001 at 05:29:30PM -0700, Richard Stallman wrote:
> We now have set up to use CVS to notify people about changes in Emacs.
> This is useful for anyone who wants to follow Emacs development in
> general.  But we used to use diffmon in another way: to notify people
> who maintain specific parts of Emacs about changes in those parts.  We
> could configure diffmon to send a person changes in just a certain set
> of files.
> 
> We don't have that now, and we need it.  The bulk of Emacs changes
> will make it quite incovenient for Lisp package maintainers to follow
> the occasional change in their files by scanning several messages a
> day.  We need a way to send them the changes in the files they care
> about and no others.
> 
> I see two possible ways to do this:
> 
> * Write a filter to look at the messages that are sent, check for a certain
> list of files, and generate messages including diffs for those files only.
> Perhaps the filter that generates the messages I get could be easily
> modified to do this job.
> 
> * Set up a checkout on fencepost (or anywhere), have a cron job update
> it every hour or two, and run diffmon on it.

I believe that diffmon is already fully incorporated into "log_accum" which is
what we currently use in Savannah (there is still a bug --it sometimes gets
log information from the wrong branch-- which I haven't been able to solve
since I'm not very familiar with the way diffmon was written).

You can already write the filters you propose; for example, suppose you want
to send messages regarding everyting in directory emacs/lispref to
"address@hidden", messages related to files emacs/INSTALL and emacs/src/data.c
to "address@hidden" and an e-mail messages with a URL where the differences can
be found, for all files in emacs, to a list "address@hidden".
Any of the Emacs project administrators in Savannah can write the following
3 filters in CVSROOT/loginfo (order is important, since only the first match
will be executed):

^emacs/lispref /usr/local/bin/log_accum -T emacs -C -m address@hidden 
address@hidden -s %{sVv}

^emacs/src /usr/local/bin/log_accum -T emacs -C -m address@hidden 
address@hidden -s %{sVv}

^emacs /usr/local/bin/log_accum -T emacs -C -m address@hidden address@hidden -s 
%{sVv}

I will try to find some time in my schedule to write down a manual for
log_accum, but in the meantime, log_accum's options are:

# Usage: log_accum.pl [-d] [-s] [-M module] [[-m mailto] ...] [-f logfile]
#       -d              - turn on debugging
#       -G database     - interface to Gnats
#       -m mailto       - send mail to "mailto" (multiple)
#       -M modulename   - set module name to "modulename"
#       -f logfile      - write commit messages to logfile too
#       -s              - *don't* run "cvs status -v" for each file
#       -T text         - use TEXT in temp file names.
#       -C [reponame]   - Generate cvsweb URLS; must be run using %{sVv}
#                         format string.
#       -U URL          - Base URL for cvsweb if -C option (above) is used.
#       -D              - generate diffs as part of the notification mail

Regards,

Jaime Villate



reply via email to

[Prev in Thread] Current Thread [Next in Thread]