OK, to start: Kristis, I'm not criticising. I'm grateful to you for
your hard work and for making it available to me. I'm grateful for
your prompt responses. You do not owe me anything. I have myself been
in the position of being maintainer of an open source project and
having demands placed on me by users, I know the experience.

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.

2008/4/18 Kristis Makris <[EMAIL PROTECTED]>:
> Hi Simon,
>
>  Welcome to the integration problem...
>
>
>  On Fri, 2008-04-18 at 12:32 +0100, Simon Brooke wrote:
>  > but when I commit that I get
>  >
>  > ** Scmbug error 39: Policy product_name_definition does not support the 
> 'auto' configuration for CVS.
>
>  The reason is that CVS 1.11.x does not provide a mechanism for
>  collecting the product name. CVS 1.12.x provides such a mechanism, but
>  Scmbug has yet to implement support for it.

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.

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?

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!

>  http://bugzilla.mkgnu.net/show_bug.cgi?id=746#c1
>
>
>
>  > and, worse still, I then can't commit the corrected file back to CVS until 
> I have edited the existing one in place in 
> /var/lib/cvs/CVSROOT/etc/scmbug/glue.conf, because if I try I still get error 
> 39.
>
>  That's a limitation of CVS. It was appropriate to edit glue.conf in
>  place in the repository.

Fair enough. I'm not complaining, I'm simply reporting. This sort of
thing needs to be in the manual; I'm still working on some proposed
edits for that.

Cheers

Simon

-- 
[EMAIL PROTECTED] (Simon Brooke) http://www.jasmine.org.uk/~simon/
 ;; If any council in the country has anything to say to cyclists
 ;; about cycle paths, it should be: "We are terribly, terribly sorry."
 - Zoe Williams, The Guardian, 13th Sept 2006
_______________________________________________
scmbug-users mailing list
[email protected]
http://lists.mkgnu.net/cgi-bin/mailman/listinfo/scmbug-users

Reply via email to