in reply to Is it ever legitimate to override $^O ?
some steps backward? Can this $^O be only some smoke in our eyes? t/01-basic.t .......... 1/78 Can't call method "relative" on an undefined value ...lets start again from this point:
# https://metacpan.org/release/KWILLIAMS/Path-Class-0.37/source/lib/Pa +th/Class/Entity.pm#L65 sub resolve { my $self = shift; Carp::croak($! . " $self") unless -e $self; # No such file or direc +tory my $cleaned = $self->new( scalar Cwd::realpath($self->stringify) ); # realpath() always returns absolute path, kind of annoying $cleaned = $cleaned->relative if $self->is_relative; + # line 71 (76 in your modified version) %$self = %$cleaned; return $self; }
So $cleaned is undefined at line 71 and it should be initialized in the line my $cleaned = $self->new( scalar Cwd::realpath($self->stringify) ); so going backward I'd verify:
So, maybe, the problem is not at all with Path::Class nor with (or maybe yes..) with assignement to $0 but within Cwd or File::Spec as they are heavily used in the background.
I mean: I tried to track back Cwd::realpath and this module also use $^O to decide what to do.
I'd also investigate which version of Cwd and File::Spec come with your testing distros of Perl.
As last point (maybe due to a dumb moment): the failing test is the first one: there are 78 tests and I checked them... the first one is.... ok(1) O_O is this one failing?!?
L*
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Is it ever legitimate to override $^O ? -- Cwd and File::Spec
by syphilis (Archbishop) on Aug 03, 2022 at 09:41 UTC | |
by Discipulus (Canon) on Aug 03, 2022 at 10:27 UTC | |
by syphilis (Archbishop) on Aug 03, 2022 at 13:54 UTC | |
by syphilis (Archbishop) on Aug 04, 2022 at 13:02 UTC |