[perl #133107] LTA: require of non installed module
On Thu, 12 Apr 2018 23:34:43 -0700, mar...@senfdax.de wrote: > requireing a non installed module leads to strange error if the name > starts with the name of a core module. e.g: > > > > perl6 -e 'require IO::Socket::Async::SSL' > IO::Socket::Async::SSL is a builtin type, not an external module > in block at -e line 1 Thank you for the report. This is now fixed. Fix: https://github.com/rakudo/rakudo/commit/4b2512a22236e09 Test: https://github.com/rakudo/rakudo/commit/4b2512a22236e09
[perl #133107] LTA: require of non installed module
On Thu, 12 Apr 2018 23:34:43 -0700, mar...@senfdax.de wrote: > requireing a non installed module leads to strange error if the name > starts with the name of a core module. e.g: > > > > perl6 -e 'require IO::Socket::Async::SSL' > IO::Socket::Async::SSL is a builtin type, not an external module > in block at -e line 1 Thank you for the report. This is now fixed. Fix: https://github.com/rakudo/rakudo/commit/4b2512a22236e09 Test: https://github.com/rakudo/rakudo/commit/4b2512a22236e09
Re: [perl #133107] LTA: require of non installed module
The problem is actually caused by the error reporting: https://github.com/rakudo/rakudo/blob/08b951c8f33cfc702c308e64efcb44f3ec725117/src/core/Exception.pm6#L2969 The only heuristic I’ve been able to find so far that the value of $ns{$_} suddenly is no longer fully qualified if the namespace doesn’t exist. I guess we can build some heuristic check on that, but it feels fragile. Perhaps nine / ugexe / jnthn have a better idea about that. > On 13 Apr 2018, at 08:34, Martin Barth (via RT) > wrote: > > # New Ticket Created by Martin Barth > # Please include the string: [perl #133107] > # in the subject line of all future correspondence about this issue. > # https://rt.perl.org/Ticket/Display.html?id=133107 > > > > requireing a non installed module leads to strange error if the name > starts with the name of a core module. e.g: > > >> perl6 -e 'require IO::Socket::Async::SSL' > IO::Socket::Async::SSL is a builtin type, not an external module > in block at -e line 1
Re: [perl #133107] LTA: require of non installed module
The problem is actually caused by the error reporting: https://github.com/rakudo/rakudo/blob/08b951c8f33cfc702c308e64efcb44f3ec725117/src/core/Exception.pm6#L2969 The only heuristic I’ve been able to find so far that the value of $ns{$_} suddenly is no longer fully qualified if the namespace doesn’t exist. I guess we can build some heuristic check on that, but it feels fragile. Perhaps nine / ugexe / jnthn have a better idea about that. > On 13 Apr 2018, at 08:34, Martin Barth (via RT) > wrote: > > # New Ticket Created by Martin Barth > # Please include the string: [perl #133107] > # in the subject line of all future correspondence about this issue. > # https://rt.perl.org/Ticket/Display.html?id=133107 > > > > requireing a non installed module leads to strange error if the name > starts with the name of a core module. e.g: > > >> perl6 -e 'require IO::Socket::Async::SSL' > IO::Socket::Async::SSL is a builtin type, not an external module > in block at -e line 1
[perl #133107] LTA: require of non installed module
# New Ticket Created by Martin Barth # Please include the string: [perl #133107] # in the subject line of all future correspondence about this issue. # https://rt.perl.org/Ticket/Display.html?id=133107 > requireing a non installed module leads to strange error if the name starts with the name of a core module. e.g: > perl6 -e 'require IO::Socket::Async::SSL' IO::Socket::Async::SSL is a builtin type, not an external module in block at -e line 1