Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-toolchain, 2016-05-30

| Channels | #perl6-toolchain index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
01:48 ilbot3 joined #perl6-toolchain
01:48 Topic for #perl6-toolchain is now Fire is step THREE! | https://github.com/perl6/toolchain-bikeshed | Channel logs: http://irclog.perlgeek.de/perl6-toolchain/today | useful prior art: https://metacpan.org/pod/CPAN::Meta::Spec
05:35 domidumont joined #perl6-toolchain
05:40 domidumont joined #perl6-toolchain
06:15 domidumont joined #perl6-toolchain
06:52 domidumont joined #perl6-toolchain
07:56 Cheery_ joined #perl6-toolchain
08:00 llfourn joined #perl6-toolchain
12:53 sufrostico joined #perl6-toolchain
12:59 cognominal joined #perl6-toolchain
14:25 sufrostico joined #perl6-toolchain
15:47 sufrostico joined #perl6-toolchain
16:50 ugexe nine: will there ultimately be any difference between requiring a module by name vs by path?
16:51 nine Haven't given requiring modules by path much thought lately
16:54 ugexe sometime in the last month(?) `perl6 -I. 'require <Build.pm>; ::("Build").new;'" starting giving "Failure\nin any  at gen/moar/m-Metamodel.nqp line 3055". Its fixed with s/require <Build.pm>/require ::("Build")/
17:00 ugexe https://gist.github.com/ugexe/fa833539cf77e36cf9c5c724e9b982d6 # heres the the details, maybe you can make sense of it
17:19 sufrostico joined #perl6-toolchain
17:39 domidumont joined #perl6-toolchain
17:50 sufrostico joined #perl6-toolchain
17:58 llfourn ugexe: if you rm -rf .precomp does it work?
17:59 ugexe no, but let me add no precompilation to the Build.pm file first
18:00 llfourn yeah that should do it
18:00 ugexe same deal
18:00 llfourn hmm
18:00 ugexe seems like its screwing up the symbol name
18:01 llfourn oh wait
18:01 ugexe require <Build.pm>; itself doesnt error. its only once you try using a symbol from that
18:01 llfourn Build.pm won't work that way
18:01 llfourn actually it should nvm
18:01 llfourn it won't return Build but GLOBAL::Build should be there
18:01 llfourn what is the contents of Build.pm?
18:02 ugexe its from Inline::Perl5
18:02 ugexe but the contents don't seem to matter
18:02 llfourn m: require Test; say ::('Test')
18:02 camelia rakudo-moar 4a7eaa: OUTPUT«(Test)␤»
18:03 llfourn m: say $*CWD
18:03 camelia rakudo-moar 4a7eaa: OUTPUT«"/home/camelia".IO␤»
18:03 ugexe require <Build.pm>; say GLOBAL::Build; # no such symbol Build
18:03 llfourn where is Test.pm relative to where we are?
18:03 llfourn require './rakudo/lib/Test.pm'; #maybe
18:03 llfourn m: require './rakudo/lib/Test.pm'; #maybe
18:03 camelia rakudo-moar 4a7eaa: OUTPUT«Could not find ./rakudo/lib/Test.pm in:␤    /home/camelia/.perl6␤    /home/camelia/rakudo-m-inst-1/share/perl6/site␤    /home/camelia/rakudo-m-inst-1/share/perl6/vendor␤    /home/camelia/rakudo-m-inst-1/share/perl6␤    CompUnit::Repository::Absol…»
18:04 llfourn m: require './rakudo-m-inst-1/lib/Test.pm'; #maybe
18:04 camelia rakudo-moar 4a7eaa: OUTPUT«Could not find ./rakudo-m-inst-1/lib/Test.pm in:␤    /home/camelia/.perl6␤    /home/camelia/rakudo-m-inst-1/share/perl6/site␤    /home/camelia/rakudo-m-inst-1/share/perl6/vendor␤    /home/camelia/rakudo-m-inst-1/share/perl6␤    CompUnit::Reposito…»
18:04 llfourn m: require './rakudo-m-inst-1/lib/Test.pm6'; #maybe
18:04 camelia rakudo-moar 4a7eaa: OUTPUT«Could not find ./rakudo-m-inst-1/lib/Test.pm6 in:␤    /home/camelia/.perl6␤    /home/camelia/rakudo-m-inst-1/share/perl6/site␤    /home/camelia/rakudo-m-inst-1/share/perl6/vendor␤    /home/camelia/rakudo-m-inst-1/share/perl6␤    CompUnit::Reposit…»
18:08 ugexe https://github.com/ugexe/zef/commit/e9efde9f3b11fbc38a21f3b4ffb4e10e34c78bf7 # this shows the workaround from filename to short name that was required
18:08 llfourn :\ it should work and we have tests for it
18:09 ugexe yeah it used to work. the error of just "Failed" makes it even stranger
18:10 llfourn m: say './rakudo-m-inst-1/lib/Test.pm6'.e;
18:10 camelia rakudo-moar 4a7eaa: OUTPUT«Method 'e' not found for invocant of class 'Str'␤  in block <unit> at /tmp/lmnvTZkUe6 line 1␤␤»
18:10 llfourn m: say './rakudo-m-inst-1/lib/Test.pm6'.IO.e;
18:10 camelia rakudo-moar 4a7eaa: OUTPUT«False␤»
18:16 ugexe m: require "/home/camelia/rakudo-m-inst-1/share/perl6/sources/C712FE6969F786C9380D643DF17E85D06868219E"; say ::("Test"); # this works, so maybe its class names?
18:16 camelia rakudo-moar 4a7eaa: OUTPUT«(Test)␤»
18:18 ugexe nope, because this doesnt fail
18:18 ugexe m: require "/home/camelia/rakudo-m-inst-1/share/perl6/sources/4CE2F6717405FCBF7F9D888C3BDF76C1127F8CB1"; say ::("TAP::Harness").new;
18:18 camelia rakudo-moar 4a7eaa: OUTPUT«Type check failed in assignment to $!output; expected IO::Handle but got IO::Handle.new(:path(...␤  in block <unit> at /tmp/PIzNFxF_hd line 1␤␤»
18:20 llfourn ugexe: it seems you need absolute path...
18:20 llfourn but that can't be right becasue the tests don't have abs path
18:21 ugexe it seems to have something to do with `use` statements in the Build.pm
18:21 ugexe if i leave the `use` statements and empty the class Build, it still fails. If I remove the `use` statements as well it works
18:22 ugexe but it must be something specific about the `use`d modules, because adding a `use Test;` to the to the top of the Build.pm in place of the others and it works still
18:23 FROGGS joined #perl6-toolchain
18:26 llfourn It's weird I'm just having problems requiring things by relative paths in general
18:27 ugexe even with just the basename that exists in the CWD?
18:28 llfourn yeah if I cd into lib and do require "Foo.pm6"; I get Couldn't find Foo.pm6 error.
18:28 llfourn but "Foo.pm6".IO.e returns true
18:28 ugexe -I. ?
18:29 llfourn you need that?
18:29 ugexe i have it in this code base, so i imagine it was needed at one point at least
18:29 llfourn it works -- but I don't get why I need it :S
18:29 llfourn oh well that solves that problem
18:31 llfourn I'm off gl figuring out that require bug :)
18:33 ugexe you'll be back!
18:34 ugexe fwiw it works if i remove `use Panda::Common; use Panda::Builder; use Shell::Command;` (leaving use v6 and use LibraryMake), but the RAKUDO_MODULE_DEBUG doesn't show anything fishy going on
18:44 ugexe hmm i might be misreading this output, but it looks like maybe the ordering is off for a dependency of a dependency
18:53 ugexe it worked in 2016.04, so sometime after that
18:54 hankache joined #perl6-toolchain
18:54 nine A bit of a stretch, but maybe it's https://rt.perl.org/Ticket/Display.html?id=128156 after all?
19:00 ugexe i thought that at first but the error doesnt match
19:31 ugexe it started immediately after relocatable precomp
19:40 sufrostico joined #perl6-toolchain
19:45 nine Ok, first fix available in rt128156_fix_precomp_deps_validation
19:45 nine ugexe: can you try anyway?
19:46 ugexe sure, building now
19:57 ugexe same error
20:09 sufrostico joined #perl6-toolchain
20:17 nine Ok, thanks for testing
20:18 sufrostico joined #perl6-toolchain
20:26 ugexe https://github.com/rakudo/rakudo/commit/bf59085295e70b071135afff85a319167ff13ac4 # its this commit
20:32 nine An educated guess would be the change in CompUnit
20:35 sufrostico joined #perl6-toolchain

| Channels | #perl6-toolchain index | Today | | Search | Google Search | Plain-Text | summary