Hi Simon, I'm sorry I can't spend too much time on this -- other things have priority right now.
On Sat, 2008-04-19 at 10:15 +0100, Simon Brooke wrote: > I'm also, though not a Perl expert, a competent hacker. I'm quite > ready to be told 'look, this issue is in this bit of code here and > what you need to make it do is this'. And I'm more than happy, if I > fix anything, to contribute that fix back to the project. That's great! > 2008/4/18 Kristis Makris <[EMAIL PROTECTED]>: > We're on CVS 1.12.13. If you can give me a spec of what needs fixed, > I'll fix it and contribute a patch back. I've read the bug report for > 746, which I presume gives me most of it. I note that > /var/lib/cvs/CVSROOT/verifymsg has a section marked Scmbug_STANZA, and > I can see how scmbug is called from this. In the Scmbug source code repository, its actually src/glue/templates/cvs/latest/verifymsg.in (but NOT src/glue/templates/cvs/latest_cvsnt/verifymsg.in -- unless you also test Scmbug under CVSNT) But if you provide a patch against verifymsg I'll merge the changes. > http://www.network-theory.co.uk/docs/cvsmanual/verifymsg.html says > > "Each line in the 'verifymsg' file consists of a regular expression and a > command-line template. The template must include a program name, > and can include any number of arguments. The full path to the current log > message template file is appended to the template." > > So presumably in the line > > DEFAULT perl -I$CVSROOT/CVSROOT/lib/scmbug > $CVSROOT/CVSROOT/bin/scmbug_a > ctivity.pl $CVSROOT/CVSROOT/etc/scmbug/glue.conf activity_verify %l > > 'DEFAULT' is a magic regex which always matches, and the remainder of > the line is the command that gets run. This in turn calls > > sub main { > my ( @arguments ) = ( @_ ); > my $glue = Scmbug::Glue::Glue->new(); > > $glue->process( @arguments ); > } > > so presumably if I append ' "%p"' to the line in verifymsg I'll get > the relative path (starting with the product name) as the fourth > argument to Glue->process(), and I then need to unpack that in > prepare_product_name() (presumably as defined at line 193 of > /var/lib/cvs/CVSROOT/lib/scmbug/Scmbug/Activity.pm, which in turn > calls autodetect_product_name() at line 214 of the same file? All this sounds right. You also need to account for the version number, so that you expect a product name only for cvs 1.12.x, and not error if product_name set to auto is used for 1.12.x. Also need to account for CVSNT (e.g. refuse to support it, even though it is 1.12.x) > A slight added complexity is that we have for historical reasons many > files in CVS with spaces in filenames. I am trying to educate users > not to do this, but it will make for more fun! Filenames with spaces are supported in Scmbug: http://files.mkgnu.net/files/scmbug/SCMBUG_RELEASE_0-25-2/manual/html-single/manual.html#FIG-COMPLEX-CVS-FILENAME > thing needs to be in the manual; I'm still working on some proposed > edits for that. I'm looking forward to the changes.
signature.asc
Description: This is a digitally signed message part
_______________________________________________ scmbug-users mailing list [email protected] http://lists.mkgnu.net/cgi-bin/mailman/listinfo/scmbug-users
