Eric Wilhelm wrote:
> I've cleaned this up a bit, and it passes all of the tests. Anybody
> want to give it a whirl and/or complain about it before it goes in
> trunk?
>
> http://scratchcomputing.com/tmp/mi_version.patch
That looks good and is an elegant fix to the problem. If gives me plenty of
rope to hang my hat on... ;-)
Could I ask for one more thing? I noticed that in one of my distros,
SVN::Notify::Mirror, the META.yml isn't getting the $VERSION number for two of
the subclasses that I include:
provides:
SVN::Notify::Mirror:
file: lib/SVN/Notify/Mirror.pm
version: 0.035
SVN::Notify::Mirror::Rsync:
file: lib/SVN/Notify/Mirror/Rsync.pm
version: ''
SVN::Notify::Mirror::SSH:
file: lib/SVN/Notify/Mirror/SSH.pm
version: ''
because those are defined in relation to the main module:
BEGIN {
use vars qw ($VERSION);
use base qw(SVN::Notify::Mirror);
$VERSION = $SVN::Notify::Mirror::VERSION;
}
If I move the 'use base' line down onto the $VERSION, it is clear that blib/lib
isn't in @INC at this point. Shouldn't we be adding blib/... into the path
before trying anything?
> John: note that this works (and is in fact required) whether you go
> with the => or inline assignment method. I prefer the assignment for
> readability and avoidance of the "how aggressively does => quote?"
> question. I guess I'm saying if you're going to be sneaky, be really
> sneaky.
And I prefer the => method because it is cleaner code in the caller. I'll
propose both on p5p and see what wins out...
John
John Peacock
Director of Information Research and Technology
Rowman & Littlefield Publishing Group
4501 Forbes Blvd
Suite H
Lanham, MD 20706
301-459-3366 x.5010
fax 301-429-5747