[perl #133107] LTA: require of non installed module

2018-04-13 Thread Zoffix Znet via RT
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

2018-04-13 Thread Zoffix Znet via RT
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

2018-04-13 Thread Elizabeth Mattijsen
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

2018-04-13 Thread Elizabeth Mattijsen via RT
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

2018-04-13 Thread via RT
# 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