| 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 |