On 5/1/07, James Keenan via RT <[EMAIL PROTECTED]> wrote:
In the course of writing tests for Parrot::Revision (see the 'reconfigure' 
branch), I noticed that
much of the code depends on the definedness and value of $svn_entries.  
However, since
$svn_entries is explicitly undefined at the top of lib/Parrot/Revision.pm, and 
since it's never
assigned to within that package, it's not clear what all that code is for.

Here's the result of ack-ing for svn_entries in trunk:

#####
[parrot] 502 $ ack --nohtml --nophp svn_entries
config/gen/revision.pm
31:    my $entries  = $Parrot::Revision::svn_entries;

lib/Parrot/Revision.pm
27:our $svn_entries = undef;
42:    elsif ( defined $svn_entries and -r $svn_entries ) {
43:        open FH, '<', $svn_entries
44:            or die "Unable to open file ($svn_entries). Aborting. Error returned 
was: $!";
#####

If $svn_entries starts out undef-ed and is never assigned to, it can never pass 
the test for
definedness in line 42 above, which means that the subsequent elsif stanza can 
never be
reached -- and should therefore be refactored out of existence.

Is my interpretation correct?

your interpretation is correct. '.svn_entries' is an svn metadata file
that's not even available in newer svn releases. Parrot::Revision
should never have been mucking with svn internals, anyway, and should
now be using the external api to get this info.

this code should be ripped out.
~jerry

Reply via email to