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.

Attachment: 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

Reply via email to