Fire is step THREE! | github.com/perl6/toolchain-bikeshed | Channel logs: irclog.perlgeek.de/perl6-toolchain/today | useful prior art: metacpan.org/pod/CPAN::Meta::Spec
Set by moderator on 8 February 2016.
jdv79 where is this wrapper you speak of? 00:03
i think i asked this somewhere the other day
ugexe github.com/rakudo/rakudo/blob/nom/...ion.pm#L38 00:04
the problem is not the wrapper itself; its that the path in the usage help only shows the relative path if the currently running script is the first file by that name found in PATH 00:05
but the wrapper will naturally be seen first in PATH, so that forces the usage to show an absolute path 00:06
github.com/rakudo/rakudo/blob/2ae0...pm#L54-L56 this code here constructs the path 00:08
jdv79 wait. CompUnit::Repository::Installation::install() runs when i run "zef asdfsdfdsf" ?
ugexe no, that wrapper script gets run (which was installed by CU::R::I)
jdv79 ah
ugexe it gets installed as bin/zef, and the actual bin/zef gets installed as resources/JF(#)@JF)@(JF@JFPOJpj
jdv79 what kind of insanity is going on? 00:09
ugexe i think its meant to allow multiple versions of a module to be installed while only having a single bin/script exposed 00:10
jdv79 wow 00:11
why can't we just us fs pathing for that? seems like a complication. 00:13
*use
ugexe i assume that would mean you could only ever load the lastest version (or whatever is first in PATH) 00:14
jdv79 so this is nine and/or mst territory?
how do you run another version of a bin? 00:15
ugexe im not sure it really works. but you can see here github.com/rakudo/rakudo/blob/nom/...ion.pm#L39 00:19
i.e. compare `zef --ver="asdf"` to `zef --xxx="sdf"`... neither --ver nor --xxx exists 00:20
jdv79 oh, it doesn't work yet. i was trying and reading and couldn't get a real result 00:22
00:22 sufrostico joined
ugexe ignoring all of that; the problem still persists if you use rakudobrew, because rakudobrew's bin is almost certainly first in the PATH but only puts a wrapper named `zef` in its bin (wrapper starts real script, real script sees its not the first `bin/zef` in PATH [wrapper is] and thus shows the absolute path) 00:28
jdv79 i hope that gets cleaned up 00:31
ugexe im not sure how it can be solved other than some convoluted options like -UsagePath=xxx so wrappers could override the path shown 00:32
jdv79 you know about this?: paste.scsys.co.uk/505242 00:33
its not like this is rocket science (usage,paths,etc). how about no path in the usage? 00:34
pretty sure i know what i ran, right? 00:35
ugexe ha yeah, looks like i left in a piece of debug code from earlier in MAIN(:$help) 00:37
jdv79 o
ugexe just pushed the fix, sorry. forgot i was in the middle of that when the build.pm stuff came up 00:38
jdv79 how come it takes 3s to run "zef"? 00:41
ugexe probably because of modules being loaded before calling the usage sub 00:43
can probably be solved with BEGIN { <examine @*ARGS and do USAGE if neccesary> } or something 00:44
but for now it does some custom arg parsing on BEGIN (for changing config options), so some modules have to get loaded 00:45
jdv79 module loading is that slow still? 00:46
wow. i thought with precomp back it'd be less. i haven't done any real p6 playing in months.
i imagine down the road the default listing will not include dev versions, right? 00:47
ugexe yeah, but we seem to be so far from laying down the law on auth/ver/api and other meta data that who knows when that will be 00:51
jdv79 i guess. for mc filtering on status of "latest" is likely more useful 00:53
basically indexed
actualy literally iirc
ugexe seems .5 to 1.0 seconds are used in setting up the signal handler for window resizing 01:10
jdv79 what?! 01:12
how'd you get that info
ugexe github.com/ugexe/zef/blob/master/l...emInfo.pm6
01:13 TimToady joined
ugexe by playing around with that code 01:13
to be fair it requires spawning a process
i thought i had it lazy loading though 01:14
jdv79 well, perf is on the radar for the core guys this year so hopefully that'll get fixed up
ugexe so that cost only has to be paid creating a search table
01:42 MadcapJake joined 01:43 sevvie joined
jdv79 ugexe: i feel like something fishy is going on: paste.scsys.co.uk/505245 01:58
maybe its not code loading per se 01:59
ugexe well the bin script itself is not precompiled 02:32
it could be though, becfause the wrapper acts as a perl6 entry point (the wrapper is not precompiled either) 02:35
for me it starts twice as fast invoking it directly (perl6 -Ilib bin/zef) than when its installed and using `zef` 02:46
(probably why i never noticed)
but i suppose that could be consistent with getting run through 2 wrappers (rakudobrew -> CURI -> $actual-bin)
afaik bin scripts could still easily be precompiled though. im not sure if anything about the CU refactor changed that fact, but its just a matter of running the precomp shell command on the scripts
02:53 FROGGS_ joined 05:06 sevvie joined 07:09 FROGGS joined 07:10 domidumont joined 07:18 domidumont joined 08:05 domidumont joined 09:17 domidumont joined 10:18 leont joined 12:29 domidumont joined 12:31 domidumont joined 12:43 sufrostico joined 13:11 domidumont joined 14:02 sufrostico joined 14:04 sufrosti1o joined 14:07 cognominal joined 14:15 sufrosti1o joined 14:46 prammer joined 15:07 sufrostico joined, sufrosti1o joined 16:40 pnu joined 16:43 prammer joined 16:47 prammer joined 16:50 prammer joined 16:54 sufrostico joined 16:58 FROGGS joined 17:00 domidumont joined 17:12 prammer joined
ugexe so CURI.install($dist, %sources) modifies the contents of $dist such that you cannot simply do `@CURs.map: { $_.install($dist, $dist.sources) }` where $dist.sources generates %resources from $dist, because every call to install modifies the values of $dist 17:54
this goes back to a point of CURI.install() only taking a single argument: $dist
to be more specific: the first install will work. subsequent installs will fail because $dist.sources no longer contains the `provides` format, but the totally different format used by CURI 17:55
github.com/rakudo/rakudo/blob/nom/...on.pm#L140 17:57
there are also plenty of other examples like $dist.files{ ... } =
18:13 leont joined
ugexe temporary solution is calling `temp $dist.provides; temp $dist.files;` before passing $dist to install 19:10
19:13 Kassandry joined 19:43 leont joined 20:59 sevvie joined
ugexe jdv79: status:latest sort of works. the problem is not every distribution has stats:latest. hack.p6c.org:5000/v0/release/_searc...CSV-Parser <--(No results) hack.p6c.org:5000/v0/release/_searc...ion:DBIish <--(results) 22:21
jdv79 i know - the indexing is screwed up 22:26
its one of the next things i need to work on
or someone else
but been busy otherwise:( sorry
gotta run actually &
22:46 perlpilot joined