Zoffix | I guess that means I can send people to travis-ci.org/profile/timo/ if I ever want to overload their browser? :) | 00:00 | |
timotimo | oh, i mean i have too many repos i'm watching | 00:01 | |
not that i own too many repos | |||
Zoffix | Ah :) | ||
*sigh* Was hoping to finish the coverage parser today, but gonna havto be tomorrow | 00:02 | ||
It's like 50 lines shorter tho :P | |||
\o | |||
Zoffix & | |||
timotimo deletes a bunch of stale forks | 00:04 | ||
travis-ci | Rakudo build failed. Elizabeth Mattijsen 'Make Str (elem) Map / Map (cont) Str 50x faster | 00:21 | |
travis-ci.org/rakudo/rakudo/builds/216523226 github.com/rakudo/rakudo/compare/d...c6eca78dd6 | |||
buggable | [travis build above] ✓ All failures are due to timeout (0), missing build log (0), GitHub connectivity (0), or failed make test (3). Across all jobs, only 04-nativecall/12-sizeof.t test file failed. | ||
samcv | bad travis bad | 01:23 | |
Zoffix, you may be interested in my latest MoarVM commit. but that's only for coverage for MoarVM code, not perl 6 code | 01:26 | ||
still useful though | |||
AlexDaniel | Zoffix: I know you love this kind of error message! | 01:29 | |
m: my $x = { $_² }; for $x(42), $x(50) { say $_ } | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> This appears to be Perl 5 code at <tmp>:1 ------> 3my $x = { $_² }; for 7⏏5$x(42), $x(50) { say $_ } |
||
AlexDaniel | that's it! | ||
samcv | LOL | 01:30 | |
AlexDaniel | appears to be Perl 5 code, refusing to compile! | ||
m: my $x = { $_² }; for $x.(42), $x.(50) { say $_ } | |||
camelia | 1764 2500 |
||
samcv | here's some coverage of MVM functions gist.github.com/samcv/b6cfe4cc2ba6...70d338c4e4 at least using the nqp test suite | ||
this is not roast, just nqp suite | 01:31 | ||
also totals at the bottom are not accurate. because i grepped out all the 3rdparty files | |||
full instructions for generating this and other outputs are in the description of the latest MVM commit which added it to Configure.pl | 01:33 | ||
MasterDuke | nice | 01:35 | |
AlexDaniel | (ok, RT #131076) | ||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131076 | ||
AlexDaniel | I stumbled upon this when writing some actual code, so I am a bit pissed off :D | 01:36 | |
samcv | made a mistake in the commit desc. should have libmoar.so on the second line not src/moar.o but it's right on the line before. hopefully peple will figure it out. maybe i'll put a commit comment on it later | 01:38 | |
trying to get it to output ANSIcolor even when it's not to a terminal | 01:40 | ||
hopefully can find some useful way to make it html | |||
Geth | nqp: samcv++ created pull request #350: [moar] Use foldcase in QASTRegexCompilier |
01:42 | |
samcv | i'll brb. ^ PR is ready to go, moarvm should be bumped after that's merged to get the speedup, though the code functions fine without the bump, just is slower than it is now | ||
AlexDaniel, MasterDuke feast your eyes on this! cry.nu/stringcov.html | 01:50 | ||
not sure how to automate this, but Konsole let me save my terminal as html | |||
this is really nice | |||
AlexDaniel | samcv: wait, what am I seeing? :) | 01:51 | |
samcv | the nqp test suite coverage for MVM_string functions | 01:52 | |
left column is how many times that line was ran | |||
AlexDaniel | ah right | ||
samcv | the 2nd column is line number. and everything red is never executed | ||
AlexDaniel | that's pretty cool | 01:53 | |
samcv | super awesome :) | ||
AlexDaniel | this was also pretty cool: perl6.wtf/ | ||
samcv | ideally we will have almost full coverage of MoarVM in the nqp suite and full coverage of rakudo in the roast suite | 01:54 | |
be back in a bit :-) | |||
AlexDaniel | MasterDuke: any thoughts? :) | 01:55 | |
Geth | nqp: 9950ea68f2 | (Samantha McVey)++ | tools/build/MOAR_REVISION Bump MoarVM to get indexic op speed boost and others String index ignore case operation order of magnitude speed boost, so now is faster than our current use with :i regex. Fixed some compile warnings, improved the errors for failed UTF-8 decodings |
03:26 | |
nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...-gb0778d6f 6c365c649d | (Samantha McVey)++ | README.pod Was missing `=pod` and `=cut` so Github did not show the links and pictures/etc. |
|||
MasterDuke | it would be great to get the MoarVM and the Rakudo coverage updated daily and available online somewhere | 03:41 | |
samcv | i'm working on trying to integrate it into this site codecov.io but if that fails can always figure out some way to do it | 03:42 | |
[TuxCM] | This is Rakudo version 2017.03-65-g5aebaf1fe built on MoarVM version 2017.03-31-g8f9325b8 | 06:41 | |
csv-ip5xs 3.071 | |||
test 12.406 | |||
test-t 4.831 - 4.877 | |||
csv-parser 12.981 | |||
lizmat | Files=1181, Tests=56009, 197 wallclock secs (11.67 usr 4.66 sys + 1167.91 cusr 113.54 csys = 1297.78 CPU) | 07:49 | |
samcv | curious what the change is when nqp gets bumped | 07:56 | |
with the moarvm :i 2x factor speed increase | |||
feel free to bump whenever anybody feels like it/would like to test it out. would like one other person to test it out before bumping nqp, though i think everything is fine and i got full spectest pass | 07:57 | ||
if anybody wants to volunteer | 07:58 | ||
samcv | ok will probably bump in an hour or so. gonna build rakudo again so i can do some speed comparison so i can have an accurate speed boost in my commit :p | 08:28 | |
will be back in a bit | |||
timotimo | .tell AlexDaniel if you update your moarvm, you'll get better error messages for "must be composed before whatever" | 09:28 | |
yoleaux2 | timotimo: I'll pass your message to AlexDaniel. | ||
Zoffix | samcv: TBH, I'd be more interested in the line_based_coverage_pr getting merged. Every time I try to use it, I have to deal with merge conflicts from master branch and right now I'm working on updating the parser for it, but won't be able to make a PR due to, again, merge conflicts | 10:04 | |
m: m: my $x = { $_² }; for ($x(42), $x(50)) { say $_ } | 10:09 | ||
camelia | 1764 2500 |
||
timotimo | jnthn: do you think it'd be all right if i put a commit up in moar that only puts the opcode that line_based_coverage will use into the oplist and does nothing else? | 10:14 | |
jnthn | timotimo: If you only add things to oplist and nowhere else then it breaks computed goto's compilation, I think | 10:24 | |
Since it makes a label table and the label will be missing in interp.c | |||
We could just merge it, on the understanding that it still needs some attention | |||
Zoffix | +1 | 10:29 | |
It'd be easier to find more hands to give that attention if it were in master IMO. | 10:30 | ||
timotimo | OK, yeah. i'll rebase it, fix up any conflicts, and then the PR can go in | 10:46 | |
Geth | rakudo/nom: ff52b74c68 | (Elizabeth Mattijsen)++ | src/core/Baggy.pm Streamline Baggy.new-from-pairs - about 1.5x as fast - with lower memory pressure - affects all .Bag type coercers |
11:58 | |
lizmat | afk again for quite some hours& | ||
Zoffix tries to figure out how to use `lastcall` | 12:18 | ||
"continue in next dispatcher loop" huh? docs.perl6.org/routine/lastcall | |||
jnthn | Curious... | 12:19 | |
So far as I remember it just truncates the dispatch list | |||
So that nextsame won't go anywhere | |||
Zoffix | Aye, seems to be just that. | 12:21 | |
jnthn: is `samewith` the same as just calling the routine by name? | 12:24 | ||
multi foo { samewith 42 } eqv multi foo { foo 42 } | |||
jnthn | Maybe | 12:25 | |
Zoffix | :D | ||
jnthn | m: multi foo($i) { say 1; foo($i.Int); }; { multi foo(Int $i) { say 2 }; foo('42') } | 12:26 | |
camelia | (timeout)1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1… |
12:27 | |
jnthn | m: multi foo($i) { say 1; samewith($i.Int); }; { multi foo(Int $i) { say 2 }; foo('42') } | ||
camelia | (timeout)1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1… |
||
jnthn | Hmm | ||
So apparently the answer is "yes" :P | |||
But I'd kinda expected the latter to not infinitely recurse. | 12:28 | ||
That is, I thought it would manage to find the inner proto to redispatch to | |||
Geth | rakudo/nom: 545d82acc9 | (Zoffix Znet)++ | src/core/hash_slice.pm Use , instead of ; in nqp::stmts(); MasterDuke++ Even though it ends up working right, the comma is faster |
12:33 | |
SmokeMachine | Zoffix: thanks! I was going to fix that just now... Zoffix++ | 14:32 | |
MasterDuke++ | |||
Zoffix | Here's the stuff we use for .is-prime according to our docs: en.wikipedia.org/wiki/Miller%E2%80...t#Accuracy | 14:47 | |
samcv | good * | 15:23 | |
i had a good sleep | |||
Zoffix | -_- I was so busy this month, I forgot to pay for both my phone and electricity. A first in years :/ | 15:24 | |
samcv | you don't eed eitheir of those things | 15:25 | |
Zoffix would die without either of thos things :o | |||
samcv | no late charges i hope | 15:26 | |
Zoffix | Probably not. | ||
samcv | ok 1.8x faster worst case 3.33x faster best case | 15:27 | |
the speed bost to m:i/ / | |||
weee | |||
Zoffix | :o | 15:28 | |
samcv++ | |||
DrForr | When I moved into my apartment I was cut off because I somehow had 3 months of electricity back payments due on an apartment I'd yet to live in. | 15:29 | |
Zoffix | heh | ||
Geth | rakudo/nom: 3e275ddb74 | (Samantha McVey)++ | tools/build/NQP_REVISION Bump Moar/NQP for 1.8x-3.3x faster m:i/ / regex matching 1.8x faster in the worst case scenario (has to search until the end of the haystack with 0 results), or 3.33x faster in the best case (match is at the start of the haystack). samcv++ |
15:31 | |
rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....-g6c365c64 70d5556829 | (Zoffix Znet)++ | lib/Pod/To/Text.pm6 |
|||
samcv | Zoffix, if i give you a script that works can you integrate moarvm coverage with perl6.wtf maybe perl6.wtf/moar ? | 15:35 | |
moritz | \o | ||
samcv | hi | 15:36 | |
Zoffix | samcv: OK | 15:37 | |
samcv | cool. will let you know when i figure it out | ||
well it's mostly figured out. but still need to figure out some thngs | |||
Zoffix | New blog post: "But Here's My Dispatch, So callwith Maybe": perl6.party/post/Perl6-But-Heres-M...with-Maybe | 15:50 | |
samcv | Zoffix, looks like it got merged now | 15:59 | |
the thing you wanted merging in moarvm | |||
Zoffix | Yes. Thanks. | 16:03 | |
samcv | so test-t should get 13% faster | 16:04 | |
comparing best of 10 runs | 16:05 | ||
fastest of 10 runs each of rakudo 2017.03 and moar-blead is from 5.959 to 5.046 on my computer | |||
very nice :) | |||
hopefully shows up in tux's graph :) | 16:06 | ||
Zoffix pings [TuxCM] | 16:09 | ||
for an out-of-schedule bench run :D | |||
samcv | :d | 16:10 | |
:D | |||
would be curious if compile time changes at all or not. idk if we use :i that much in the setting | 16:15 | ||
TimToady is somewhat allergic to case-insensitive languages | 16:22 | ||
samcv | is csv case insensitive? | 16:24 | |
which _popular_ ones are? i have never used any | |||
except graphing clacutaltor whatever but there i onnly had uppercase anway | |||
ilmari | sql, kindof | 16:25 | |
Zoffix | PASCAL :o | 16:26 | |
b2gills | Visual Basic | ||
ilmari | lisp | 16:29 | |
Zoffix | AutoIT | ||
ilmari | any language that started out all-upper-case/ | ||
? | |||
because people quickly realised that was incredibly tedious to type | 16:30 | ||
yeah, capslock exists, but still | |||
samcv | NOT AT ALL | 16:34 | |
why does this laptop not have a caps lock key :( | 16:35 | ||
lenovo :( | |||
and i have absolutely 0 indicators anywhere | |||
only light i have is a the Fn button light that idk what it does. | 16:36 | ||
only the power button glow and the Fn button has a light on it. probably to signal if it's a toggle or if it has to held down | |||
no hd light, no wifi light, no caps lock light no num lock light. no thinklight | |||
Zoffix | #courage | 16:51 | |
samcv | #sad | 16:56 | |
at least quad core cpu coming next week i think | |||
to put in it | |||
Zoffix, what is your lappy | 17:14 | ||
Zoffix | samcv: don't really use one. I have desktops at both places I occupy during daytime. The one lappy I have is like 10-11 years old Dell.. umm. XPS M1150 or something or other. I have it sitting in my music room where I just use it to browse music tabs or I move it to the kitchen to watch TV shows while cooking... | 17:17 | |
[Coke] | (CI) ColdFusion | 17:24 | |
Zoffix | My work setup: i.imgur.com/fU4qNex.jpg and my home setup: i.imgur.com/4Mexr4A.jpg | 17:25 | |
timotimo | neo2 has this cool trick where holding both shift keys at the same time activates and deactivates capslock | 18:02 | |
that frees up capslock for a whole layer | |||
AlexDaniel | right | 18:06 | |
yoleaux2 | 09:28Z <timotimo> AlexDaniel: if you update your moarvm, you'll get better error messages for "must be composed before whatever" | ||
AlexDaniel | now the question is why do you need caps lock at all | ||
timotimo | tbh i'm surprised CSV would even have :i in it | ||
i need capslock for the [] and the () and the {} and the () and the ! and the ? and : and - and ` and ~ and $ and # | 18:07 | ||
and ¹²³ and ›‹ and ¢¥ and ‚‘’ | |||
AlexDaniel | uh… oh… wait what :) | 18:08 | |
ah, right, right, that's what you get if there's no thumb key for shift | 18:09 | ||
timotimo | thumb key for shift? | 18:11 | |
AlexDaniel | yea, if your keyboard has any thumb keys at all | 18:12 | |
timotimo | keys next to the spacebar? | ||
or the kind of keys you get with two-halves keyboards? | |||
AlexDaniel | timotimo: yes, those on ergonomic keyboards. Or regular Japanese keyboards | 18:13 | |
timotimo | ah, yeah, i seem to recall you have a japanese one with just the shortest spacebar | 18:14 | |
AlexDaniel | yea | ||
can't get anything better than that for a laptop | |||
I'm glad Japan exists… | |||
Zoffix | One place where m:i used: every parse of harness6's test's description | 19:05 | |
Zoffix eyes perl6maven.com/encrypt-a-password | 19:15 | ||
"I think Crypt::Bcrypt or Crypt::Argon2 would be the recommended ones to use, but currently they are both broken due to a dependency being broken" | |||
And entire article dedicated to a broken function that's been hacked before, hasn't it? | |||
===> Testing [FAIL]: if:ver('0.1.0'):auth('github:FROGGS') | 19:17 | ||
Aborting due to test failure: if:ver('0.1.0'):auth('github:FROGGS') (use --force to override) | |||
And the failures for proper modules seem to be due to failure in testing module -_- | |||
"Cannot find method 'symtable' on object of type GLOBAL" is that the braids change stuff? | 19:21 | ||
Looks like. Adding the same fix from Slang::Tuxic fixed it (but not the module; tests fail :/) | 19:25 | ||
ZOFVM: Files=1230, Tests=132984, 115 wallclock secs (21.74 usr 2.99 sys + 2403.60 cusr 128.66 csys = 2556.99 CPU) | 19:26 | ||
5s less than usual :D | |||
timotimo | nice | 19:32 | |
Zoffix | I don't get TimToady's fix... tho: my Mu $MAIN-grammar := nqp::atkey(%*LANG, 'MAIN'); my $grammar := $MAIN-grammar.HOW.mixin($MAIN-grammar, Tuxic); try nqp::bindkey(%*LANG, 'MAIN', $grammar); | ||
Isn't .HOW.mixin mutating the *LANG<LANG> anyway? | |||
So %*LANG<MAIN>.^mixin(BetterWorld); is equivalent of all of the above? :/ | 19:33 | ||
ZOF6VM: Files=1230, Tests=132984, 235 wallclock secs | |||
And 6s less than last time for harness6 | 19:34 | ||
m: role Foo {}; BEGIN dd %*LANG<MAIN>.^mixin(Foo).^name; BEGIN dd %*LANG<MAIN>.^name | 19:36 | ||
camelia | "Perl6::Grammar+\{Foo}" "Perl6::Grammar" |
||
Zoffix | hm, OK, then I'm wrong about .^mixin | 19:37 | |
m: my $x = 42; $x.^mixin: role Foo {}; dd $x | |||
camelia | Int+{Foo} $x = 42 | ||
AlexDaniel | timotimo: well, the error message is better, but how do I make it work? | ||
Zoffix | But I guess ^ that is due to constant caching | ||
And I'm guessing you don't need to use nqp? And this should work for slang stuff? my $grammar := %*LANG<MAIN>.^mixin(BetterWorld); try %*LANG<MAIN> := $grammar; try $*LANG.define_slang('MAIN', $grammar, $*LANG.actions); | 19:39 | ||
It got rid of error in if.pm6 but the tests still fail :( | |||
m: my $x = *²; for ($x(2), $x(3)) { .say } | 19:40 | ||
camelia | 4 9 |
||
Zoffix | .seen FROGGS | 19:47 | |
yoleaux2 | I saw FROGGS 2 Mar 2017 16:23Z in #moarvm: <FROGGS> [Coke]: I did | ||
Zoffix | .tell FROGGS if.pm6 is busted and that breaks install of some crypto modules. Any ideas for how to fix? The role's method never gets run; dunno where to take it from here: github.com/FROGGS/p6-if/issues/2 | 19:48 | |
yoleaux2 | Zoffix: I'll pass your message to FROGGS. | ||
timotimo | AlexDaniel: it won't give you a sensible backtrace with the exception? | 19:50 | |
AlexDaniel | timotimo: no backtrace and no line number | 19:59 | |
timotimo: but to be honest I don't care about the error message, I just want to know how use something through Inline::Python in a module… | 20:00 | ||
timotimo | not even with --ll-exception?! | ||
have you considered "no precompilation;"? | |||
AlexDaniel | oh! | 20:02 | |
yes! Yes! | 20:03 | ||
thank you very much! | |||
timotimo: fwiw, --ll-exception backtrace that has nothing about my files | 20:04 | ||
s/that// | |||
RT #131079 is a nice find | 20:09 | ||
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=131079 | ||
AlexDaniel | I wonder why it works, shouldn't it complain about the lack of MONKEY-SEE-NO-EVAL? | 20:11 | |
timotimo | AlexDaniel: ah, it probably happens in the parser. that'd make a lot of sense actually | 20:16 | |
geekosaur | the <$foo> syntax exists to be exactly that kind of escape hatch, iirc | 20:32 | |
timotimo | i wonder why the first part didn't work | 20:33 | |
the one with just { } in it | |||
Zoffix | <$foo> syntax is like eval: it'll want a MONKEY if it's dangerius (not all EVAL needs a monkey) | 20:37 | |
and the first part with just { } catches that arbitrary code is exevuted | 20:38 | ||
m: my $c = '<::(say("pwned"), exit)>'; '' ~~ /<$c>/ | 20:42 | ||
camelia | pwned | ||
Zoffix | jesus | ||
samcv grumbled something about MONKEY-SEE-NO-EVAL | 20:43 | ||
Zoffix | m: my $c = '<&say("pwned")>'; '' ~~ /<$c>/ | 20:44 | |
camelia | 5===SORRY!5=== Error while compiling /home/camelia/EVAL_0 Prohibited regex interpolation (use the MONKEY-SEE-NO-EVAL pragma to override this error, but only if you're VERY sure your data contains no injection attacks) at /home/camelia/EVAL_0:1… |
||
timotimo | you can make a slang that makes it the default, or you can make a slang that gives it a different name | ||
Zoffix | Don't even need a slang just a module that exports a constant | 20:45 | |
or a sub rather; we do it in Test.pm6: github.com/rakudo/rakudo/blob/nom/...st.pm6#L44 | 20:46 | ||
Speaking of monkeys.... is it a bug or not that method-form EVAL doesn't care about monketlys? | 20:50 | ||
monkeys | |||
moritz | IMHO the method-form of EVAL itself is a bug. | 20:53 | |
Zoffix | heh why? | ||
It operates on a string. | |||
Zoffix often wants a method form of try | 20:54 | ||
as I recall roast actually has .perl.EVAL in it. So it's not a bug :) | 20:59 | ||
But is its not needing a monkey a bug? :) | |||
m: sub foo { 'say "pwned"' }; EVAL foo | 21:01 | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> EVAL is a very dangerous function!!! (use the MONKEY-SEE-NO-EVAL pragma to override this error, but only if you're VERY sure your data contains no injection attacks) at <tmp>:1 ------> 3sub foo { 's… |
||
Zoffix | m: sub foo { 'say "pwned"' }; foo.EVAL | ||
camelia | pwned | ||
timo1 | the triple exclamation marks really sell it | ||
Zoffix | Hm. I'm tempted to say not a bug because of ^ that. It's useful after methods and stuff, so making it want a monkey is lta | 21:02 | |
But then, everyone will just use that instead of monkeys :/ | |||
(I know I do) | |||
samcv | i don't like that warning | 21:12 | |
well. i can see why you ai mean i dont think it should be an error | |||
it should be a warning. that can be supressed with MONKEY-SEE-NO-EVAL | |||
but it's silly to make it an error | |||
just frustrates users | |||
Zoffix | Meh, a warning is more annoying. It's language being indecisive if it wants to stop you or to let you proceed. | 21:14 | |
samcv | i suppose that makes sense too | 21:15 | |
Zoffix | Alright. I have 20 minutes in which to fix the coverage parser | 21:17 | |
Zoffix gets cracking | |||
samcv | i thought it was merged | ||
need to get the installation fixed? | |||
timotimo | the coverage parser was a bit crappy (the one i wrote) so zoffix is rewriting it :) | 21:18 | |
samcv | ah | ||
is that the part that makes it into html? or is it all one thing | 21:19 | ||
not sure if there's intermediate formats and things | |||
timotimo | there's the format that moarvm spits out where it's just lines of "HIT filename linenumber" | 21:20 | |
samcv | i would like to get moarvm.wtf working too with clang coverage. but will have to find some way to do it | ||
ah | |||
timotimo | put it onto perl6.wtf, such gtlds are far too expensive | ||
samcv | yes lol. | ||
timotimo | they are affordable in the first year, then their price rises like 10x to 100x | 21:21 | |
samcv | what's the best way to get every function we have in a list | 21:22 | |
jnthn | Well, a way is: strings libmoar.so | grep MVM_ | 21:25 | |
Though it's a slight over-estimate | 21:26 | ||
MasterDuke | and not every function has MVM_ in the name | ||
what about something like ctags? | 21:27 | ||
jnthn | True, the static ones don't | ||
samcv | nah but some don't start with mvm jnthn | ||
jnthn | Depends what's needed | ||
samcv | that's the issue | ||
jnthn | Well yeah, if you don't want just the public ones... :) | ||
samcv | sometimes public ones call other ones | ||
jnthn | Ah, you're doing it for coverage so you probably do what all the things :) | 21:28 | |
So yeah, ctags may be a better bet, though I dunno how that works :) | |||
samcv | yeah. but don't want the 3rdparty files | ||
or i could say screw it and fix that problem afterward | |||
MasterDuke | --exclude=pattern Exclude files and directories matching 'pattern'. | 21:29 | |
from ctags --help | |||
`ctags --c-kinds=f -R src/*` looks like it produces pretty much exactly what you want | 21:33 | ||
Zoffix | m: my %stats = :file-on-disk<foo>; dd "coverage/%stats<file-on-disk>.coverage.html" | 21:34 | |
camelia | "coverage/\%stats<file-on-disk>.coverage.html" | ||
Zoffix | TIL that dot for NOT a method prevents interpolation :/ | ||
m: my %stats = :file-on-disk<foo>; dd "coverage/%stats<file-on-disk>\.coverage.html" | |||
camelia | "coverage/foo.coverage.html" | ||
Zoffix | m: my $meow = "foo"; dd "coverage/$meow.coverage.html" | 21:35 | |
camelia | "coverage/foo.coverage.html" | ||
Zoffix | Actually, looks more like a bug... | ||
samcv | this looks nice enough though cry.nu/overview.html | ||
Zoffix | purty | 21:36 | |
samcv | the functions are even better Zoffix | 21:38 | |
i guess this is missing some info cry.nu/profile.html | |||
but you can still see which don't get run | |||
if you scroll to the highlighted code | 21:39 | ||
timotimo | i wonder if you have to turn debugging off to make results more correct | 21:40 | |
like, all of sc.h is uncovered? i can hardly believe that | |||
samcv | it is off. but those results are not correct | 21:41 | |
it's just missing some data | |||
timotimo | is there any MVM_STATIC_INLINE that's actually covered? | ||
samcv | timotimo, more info cry.nu/fullprof.html | 21:42 | |
idk | |||
uh yes it is | |||
see the file i just linked | |||
that's got full info | |||
left column is number of times it has been through that line during running nqp test suite | 21:43 | ||
timotimo | OK | 21:45 | |
samcv | actually maybe that's not everything, just any function that starts with MVM | 21:46 | |
including the inline ones | |||
pretty schweet | 21:47 | ||
MasterDuke | ah, you haven't done coverage for a rakudo spectest run yet? | 21:49 | |
samcv | yeah that i'm going to be working on now | 21:51 | |
Zoffix | "Only identical operators may be list associative; since 'and' and 'andthen' differ, they are non-associative" | 21:54 | |
What is this! The middle ages? :) | |||
m: 1 and 2 andthen 3 | 21:55 | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Only identical operators may be list associative; since 'and' and 'andthen' differ, they are non-associative and you need to clarify with parentheses at <tmp>:1 ------> 031 and 27⏏5 andthen 3 … |
||
Zoffix | Oh well :) | ||
samcv | MasterDuke, before i do that i'm making it so i can automate the test collation | 21:57 | |
collection/compilation | |||
MasterDuke | nice | 21:59 | |
samcv | so will have three scripts, one to replace nqp-m/rakudo-m, one to compile the files into the final output | 22:00 | |
then the third will process it | |||
well. output it | |||
Zoffix | Actually, looks like I lied. new parser is 10s slower :P | 22:44 | |
But it does the coverage parsing faster :P it just does it in the faster of the two threads, so the extra fastnest is irrelevant | 22:45 | ||
BUT.... it works! \o/ | |||
MasterDuke | Zoffix++ | 22:46 | |
Zoffix | 40 lines shorter too | 22:47 | |
samcv | almost got something rough | ||
timotimo | you got more correctness, right? :) | 22:48 | |
that's good | |||
Zoffix | perl6.wtf/ | 22:49 | |
I removed the "line offset" or whatever it was; the last column. Since now it's irrelevant | 22:50 | ||
timotimo | we have numbers again \o/ | 23:05 | |
# U+227C PRECEDES OR EQUAL TO | 23:12 | ||
only sub infix:<≼>($a, $b --> Bool:D) is pure { | |||
that's a bad miss :D | |||
samcv | ok full instruction for generating coverage with nqp test suite. github.com/samcv/MoarVM-cover | 23:13 | |
can be very easily adapted to roast. which i'm gonna do after a little break. but finally automated and got all the commands working and documentation | |||
only differencre with roast will be you will just change the nqp-profile script to perl6-profile or something like that, but nqp and perl6 are almost identical shell scripts originally | 23:15 | ||
Zoffix | timotimo: what file is that in? | 23:18 | |
I don't got numbers | 23:19 | ||
SETTING::src/core/set_operators.pm | |||
But I see the missing stuff | 23:20 | ||
Also, I remember adding the date the report was generated on, long time ago. | |||
Looks like one of those rebases was off a wrong branch :P | |||
I have broken chars in Fifox, but not Chrome. Already re-building with a fix tho | 23:21 | ||
Fix force-pushed to the PR and perl6.wtf updated | 23:24 | ||
timotimo | it's just a missing meta tag or something | 23:25 | |
Zoffix | was yeah | 23:26 | |
timotimo | playing some vidya games, so i'm slow and unhelpful :) | 23:27 |