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