samcv ok now cry.nu/coverage/ has resizeable and movable boxes at least 00:32
well almost 00:33
yeah now it works. had to make sure jquery used https due to my very tight security settings for my domain 00:35
.tell lizmat can you add my grant to the p6weekly? 04:56
yoleaux2 samcv: I'll pass your message to lizmat.
samcv ok so i made an overview of moarvm coverage for Roast cry.nu/coverage/roast.html you can see here 06:01
line by line here cry.nu/coverage/roast/ 06:09
lizmat . 06:50
yoleaux2 04:56Z <samcv> lizmat: can you add my grant to the p6weekly?
lizmat samcv: link ?
stackoverflow.com/questions/4319942...t-in-shell # comments anyone ? 06:56
[Tux] This is Rakudo version 2017.03-123-gcb27bce74 built on MoarVM version 2017.03-88-g21fc7a22 07:18
csv-ip5xs 3.103
test 12.504
test-t 4.958 - 5.119
csv-parser 13.280
lizmat samcv: found it and added it 07:43
samcv ok thanks :-) 07:46
Geth rakudo/nom: 0672082651 | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
Fix problem introduced by 38b341aec and 928a406a8e

  - spotted by perlawhirl++
  - if the last key checked was wrong, we didn't see it
  - turned out use of exhaustion of the iterator is not a good way to do it
  - so revert to returning out of the inner loop
07:53
lizmat m: say Mu (elem) set() #hmmmm 08:17
camelia Type check failed in binding to parameter '<anon>'; expected Any but got Mu (Mu)
in block <unit> at <tmp> line 1
lizmat m: dd set(Mu) 08:19
camelia set(Mu)
lizmat m: dd Mu.Set
camelia No such method 'Set' for invocant of type 'Mu'
in block <unit> at <tmp> line 1
lizmat hmmm
so, should Mu be allowed as part of a Set / Bag / Mix ? 08:26
aka, should we able to coerce Mu to a Set/Bag/Mix ?
m: dd Mix(Mu) # works 08:27
camelia Mix(Mu)
lizmat m: dd Mu.Mix # doesn't
camelia No such method 'Mix' for invocant of type 'Mu'
in block <unit> at <tmp> line 1
lizmat I guess this all boils down: 08:28
m: dd (1|2|3).Mix # does this create 3 Mixes with 1 value, or 1 Mix with 1 Junction
camelia any((1=>1).Mix, (2=>1).Mix, (3=>1).Mix)
lizmat afk for a few hours& 08:43
|Tux| Did IO signatures change? 09:24
Cannot resolve caller AUTOGEN(Text::CSV: IO::Handle, Str, Str, Str); none of these signatures match:
(Text::CSV $: IO:D $io, *%p --> Bool)
(Text::CSV $: IO:D $io, %c, *%_ --> Bool)
(Text::CSV $: IO:D $io, Capture $c, *%_ --> Bool)
(Text::CSV $: IO:D $io, @fld, *%_ --> Bool)
(Text::CSV $: IO:D $io, *@fld, *%_ --> Bool)
in block <unit> at t/20_file.t line 14
looks like quite a significant change
samcv what did you try to call on an IO::Handle? 09:25
i think you can call it on the path but not the handle. as i read
|Tux| my $fh = open $tf20, :w or die "$tf20: $!";
ok (!$csv.print ($fh, "abc", "def\007", "ghi"), "print bad character");
samcv hmm 09:26
don't see anything wrong with that code 09:27
is $tf20 an IO object?
|Tux| no, $fh is 09:28
$tf20 is a file name
samcv it's faling at the second line?
not the first?
|Tux| $csv.print ($fh, ...) causes the mismatch
samcv ah ok 09:29
|Tux| the first line is needed for you to see what $fh is
samcv ah
|Tux| with this change almost all IO related CSV test fail
samcv you're trying to print to the filehandle?
|Tux| yep 09:30
samcv that. seems like a wrong way to call it
$fh.print(blah here)
|Tux| it used to work for many years
samcv interesting it let you do that before
|Tux| NAH!
$csv.print ($fh, ...) makes thge CSV object use $fh to print to
printing to CSVB in not the same as plain printing 09:31
samcv but what is the underlying IO thing done inside the csv object?
looking at your code 09:32
|Tux| github.com/Tux/CSV/blob/master/lib...V.pm#L1493
samcv i see some changes to IO::Handle here rakudo.org/ 09:38
so you're giving it an already opened handle. which it then calls print on? 09:39
do you need to change it to IO::Handle not IO? 09:40
or maybe it shouldn't have broken @Zoffix ?
i remember something bout inherentence changing
i think handles don't inherit from paths anymore or something (i could be totally wrong) 09:41
bisectable6, say IO ~~ IO::Handle
bisectable6 samcv, On both starting points (old=2015.12 new=0672082) the exit code is 0 and the output is identical as well
samcv, Output on both points: Ā«FalseĀ»
samcv bisectable6, say IO::Handle ~~ IO 09:42
bisectable6 samcv, On both starting points (old=2015.12 new=0672082) the exit code is 0 and the output is identical as well
samcv, Output on both points: Ā«FalseĀ»
|Tux| submits change that makes all tests pass again, but I sincerely wonder how much will break in other places
pushed 09:44
timotimo travis-ci.org/timo/json_fast/builds/218282663 - kinda mysterious? perhaps recent changes to rakudo broke it? 09:51
Zoffix |Tux|: IO:D is not a thing anymore 10:02
|Tux| I saw that, but isn't that going to break a lot of stuff? 10:03
I already pushed the fix for CSV, but I guess I'm not the only one that used it like that
timotimo we can find out with ecosystem-all-modules
|Tux| FWIW, I agree to the change. It makes a lot of sense
jnthn m: say shell('/usr/bin/false').WHAT 10:04
camelia shell is disallowed in restricted setting
in sub restricted at src/RESTRICTED.setting line 1
in sub shell at src/RESTRICTED.setting line 15
in block <unit> at <tmp> line 1
jnthn c: HEAD say shell('/usr/bin/false').WHAT
committable6 jnthn, Ā¦HEAD(0672082): Ā«shell is disallowed in restricted settingā¤ in sub restricted at src/RESTRICTED.setting line 1ā¤ in sub shell at src/RESTRICTED.setting line 15ā¤ in block <unit> at /tmp/mgK62t6xIg line 1ā¤ Ā«exit code = 1Ā»Ā»
jnthn arrghhh...
Can we please have a bot that isn't using the restricted setting...
timotimo no, CSV is the only module which uses IO:D or anything IO:*, except for method calls like .IO:d 10:05
which ... huh?
m: say "foobar".IO:d
camelia "foobar".IO
timotimo that's not right, is it?
like in tony-o/perl6-green bin/green: last if $dir.IO:d; 10:06
jnthn Anyway, the reason that the try doesn't work out is shell returns a Proc
And so the try block returns the Proc
And that is then sunk, producing the exception outside of the try block 10:07
Zoffix |Tux|: dunno if you read the weekly but there are two upgrade notices that went out recently: rakudo.org/2017/04/02/upgrade-infor...rant-work/ and rakudo.org/2017/04/03/part-2-upgrad...rant-work/
|Tux|: as for break stuff, well, the use of IO:D is broken as is IMO. It accepts IO::Path, IO::Handle, and IO::Socket*; all of which have vastly different interfaces. role IO did not provide any of the methods (other than semi-broken `umask`) 10:08
|Tux| I read them most of the time, but I've been on ski-holiday :)
|Tux| is in catching-up mudus 10:09
masak timotimo: I suspect the .IO method gets a :d named parameter, which it discards 10:40
Zoffix [Coke]: FWIW, when commenting on stuff, the page the user sees is kinda borked: i.imgur.com/zjOVhgs.png
masak m: class C { method IO(:$d) { say $d ?? "yup" !! "naye" } }; C.IO:d 10:41
camelia naye
masak I... guess not.
timotimo m: class C { method IO(:$d) { say $d ?? "yup" !! "naye" } }; C.IO():d
camelia yup
masak right, but it didn't say that... :) 10:42
so how *is* it parsed and evaluated?
masak wishes he had a source-to-ast converter right now
jnthn --targert=ast :) 10:48
Zoffix --target=optimize # more accurate 10:50
jnthn True :) 10:52
Zoffix m: class C { method IO(:$d) { say $d ?? "yup" !! "nope" } }; C.IO :d 10:56
camelia yup
Geth rakudo/nom: 5b7ef3e89a | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
Make (cont)/(elem) 25% to 5x faster for QuantHashes

  - based on a 10 element Set/Bag
  - no coercion needed for Bags/Mixes
  - rewrite with nqp where possible
11:02
Zoffix samcv: looks like you're breaking barriers with your grant. Looking at past grants, the only other women who did a grant were Audrey Tang and Tina Connolly, but they have other people listed on the grant as well. Yours is the first solo one! 11:44
samcv++ Amelia Earhart of Perl hacking :)
dogbert17 Zoffix: although I'm a bit late ... happy birthday 11:48
you should treat yourself to some new cool FPS game 11:49
moritz Tina Connolly the author? 11:50
but yes, samcv++
Zoffix dogbert17: thanks. 12:05
moritz: yeah, the author
moritz Zoffix: wow, I heard/read some of her fiction, never knew she was involved with perl at some point 12:06
Zoffix :) 12:08
[Coke] zoffix: I have no idea how to fix that, but will open a ticket. 12:36
(in review) ermergerd, --targert 12:38
ZOMG SO MUCH SPAM 12:39
(in mt comment admin)
Zoffix [Coke]: don't have that page in front of me any more, but by the looks of the breakage, it looks like a forgotten close tag somewhere. 12:42
[Coke] ok. I opened a tpf ticket for it so we don't lose it. 12:43
argh. marking mt comments as spam... doesn't delete them. 12:44
perlpilot samcv++ 12:45
[Coke] and now this round of TPF grants have comments. Please poke me if your comment gets stuck in moderation. 12:56
Zoffix \o/ 12:57
Geth rakudo/nom: 49807eb5dc | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
Make Setty (|) Setty about 25x faster

  - make infix:<(|)> a multi
  - add zero and 1 argument handling for infix:<(|)>
  - add candidate for handling Setty (|) Setty
13:22
Zoffix ZOFVM: Files=1231, Tests=133144, 114 wallclock secs (20.93 usr 3.50 sys + 2351.28 cusr 165.12 csys = 2540.83 CPU) 13:34
Geth rakudo/nom: 75c3f29100 | (Zoffix Znet)++ | src/core/Failure.pm
Awesomify 'unhandled Failure in DESTROY' warning

I've seen this warning many times, but it never really clicked why I was seeing it. Awesomify the warning, to suggest how the user can get rid of this warning.
Fixes RT#130857: rt.perl.org/Ticket/Display.html?id=130857
13:48
Zoffix Cool. If we add 3 more test files, we'll have 1234 test files in roast :D 13:57
m: say 234567-133144 13:58
camelia 101423
Zoffix And 1101423 more tests to have 1234567 tests :)
.oO( the real trick is sticking that many tests into just 3 files! )
13:59
m: say 567890-133144
camelia 434746
Zoffix Though we can add 3 more files with 434746 tests in them that makes the stresstest run 9 seconds longer to make it read "Files=1234, Tests=567890, 123 wallclock secs" 14:01
dogbert17: the spectre of Zoffix also sent a PR fixing code that was never valid: github.com/supernovus/exemel/pull/43 14:10
huggable: known IO breakage killstreak :is: 3 14:12
huggable Zoffix, Added known IO breakage killstreak as 3
Zoffix huggable: known IO breakage killstreak :is: 3 (doc test suite; Text::CSV; XML.pm6) 14:13
huggable Zoffix, Added known IO breakage killstreak as 3 (doc test suite; Text::CSV; XML.pm6)
Zoffix Wow, US is really going nuts with travel to it: www.wsj.com/articles/trump-adminis...1491303602 14:57
On an off chance they catch a terrorist who didn't wipe their phone before comming in? heh 14:58
At least that gives me hope YAPC::NA will be moved to Canada :)
moritz or Mexico :-) 15:11
Zoffix Too far and too hot :P 15:13
[Coke] Zoffix: getting an IO-related error in make xtest on docs; need to update my rakudo? 15:21
Zoffix [Coke]: what's the error?
[Coke] No such method 'spurt' for invocant of type 'IO::Handle+{File::Temp::File::Temp::AutoUnlink}' in block <unit> at t/pod-htmlify.t line 58
Zoffix [Coke]: yeah, need to upgrade. 15:22
Or change that line from .spurt to .path.spurt
[Coke]: FWIW, I'm not running xtest with my changes ATM to save time, but will run it when I'm done and will fix all the errors, if any. 15:24
(when done = Apr. 17th) 15:25
[Coke] ok. 15:44
AlexDaniel ā€œCan we please have a bot that isn't using the restricted setting...ā€ yes, I'm working on itā€¦ 16:13
gonna take a little bit though 16:14
likeā€¦ weeksā€¦
Zoffix AlexDaniel++ 16:15
AlexDaniel by the way, there's a little feature I implemented yesterdayā€¦ not sure if there's a need to announce it though
because I'm not really expecting anybody to use it on purpose, but 16:16
say 42
evalable6 42
AlexDaniel thing is, I've parsed the whole irc history and came up with some rules on when this is actually some code without m: rather than just somebody starting his message with ā€œsayā€ 16:17
Zoffix say, that's a brilliant idea!
hah, OK :D
AlexDaniel it matches ā‰ˆ1400 messages out of which 5-10 are not really code, but very code-like 16:18
Zoffix :)
AlexDaniel but that's good enough I guess
Zoffix say "42"
evalable6 42
Zoffix put "42"
dd "42"
AlexDaniel well let's see if somebody ever used put or ddā€¦
masak say, that's interesting 16:22
say... can I trick it into running my sentence? :)
AlexDaniel if you try hard enough, yes
masak say "heh"
evalable6 heh
masak say I try hard enough
AlexDaniel you can also trick it into not running your code :) 16:23
masak ...it seems pretty good at first blush
AlexDaniel say pi
say Ļ€
masak AlexDaniel: I'm fine with false positives/negatives, as long as neither ends up being annoying/noisy :)
AlexDaniel the last one I was kinda expecting to workā€¦
masak AlexDaniel++
"in 2017, we developed technology to allow us to skip the `m: ` prefix..." :P
AlexDaniel I wonder if people now will skip it on purposeā€¦ 16:24
masak "we called it Code Auto-Detectionā„¢"
say 1 + 2 + 3 + 4
evalable6 10
masak say "that's a distinct possibility
evalable6 masak, Full output: gist.github.com/cc37bcf657330d8078...3596cfae99
(exit code 1) 04===SORRY!04=== Error while compiling /tmp/Zb8LtXGIIL
Unable ā€¦
masak wohoo!
I got something strange out of it :P 16:25
AlexDaniel well, that's clearly some code
that's its normal output :D
masak yeah, that's a pretty reasonable response
say ...
:)
Zoffix say ā€¦
AlexDaniel I know that it may get triggered if you use too many smileys
evalable6 (exit code 1) Potential difficulties:
Apparent sequence operator parsed as stubbed funā€¦
Zoffix, Full output: gist.github.com/bc767e500a39c2fc32...dd4ec4a610
Zoffix hah
AlexDaniel say what? :O :O :O amazing!!!!! :) 16:26
evalable6 AlexDaniel, Full output: gist.github.com/9b20ab5c918dc6deb3...699a2381e0
(exit code 1) 04===SORRY!04=== Error while compiling /tmp/W5BW6j8CYk
Unsuppoā€¦
AlexDaniel say what? :O :O :O amazing!!!!!
so yeah, smileys suck.
Zoffix: I see only one interesting message there: gist.github.com/Whateverable/d7b5d...3cbdb31332 16:28
Zoffix: dd is more interesting, but not interesting enough: gist.github.com/Whateverable/7962a...fd7de003dd
(by the way, this output is coming out of a new bot)
you give it a perlĀ 6 regex, it gets back to you in a minute with this kind of gist :) 16:30
Zoffix Where is `defined` defined? 16:31
SourceBaby can't find it neither under &defined nor under &prefix:<defined>
in Mu: github.com/rakudo/rakudo/blob/75c3...Mu.pm#L846 16:36
Stupid robot
s: &defined
SourceBaby Zoffix, Something's wrong: ā¤ERR: Cannot resolve caller sourcery(Sub+{<anon|63810960>}); none of these signatures match:ā¤ ($thing, Str:D $method, Capture $c)ā¤ ($thing, Str:D $method)ā¤ (&code)ā¤ (&code, Capture $c)ā¤ in block <unit> at -e line 6ā¤ā¤
Zoffix m: say &defined ~~ Callable
camelia False
Zoffix interesting
Geth rakudo/nom: 87fe800d1d | TimToady++ | src/Perl6/Grammar.nqp
don't die on 'for $x()', only on 'for $x ()'

We'll issue the looks-like-P5 error only if it would be two terms in a row anyway, so there should be no false positives. (Yes, P5 allows one to use no space there, but people almost always put the space there regardless, so merely catching most of the errors is plenty good enough for a heuristic.)
Fixes #131076
16:50
Zoffix \o/ 16:53
timotimo i'm glad for that 16:54
AlexDaniel I actually had exactly the same fix in a local branch somewhere 17:04
but then imagined how people are going to complain that it is valid p5 code even without the space
so never got to finishing itā€¦
Zoffix wouldn't think many would've complained :) 17:05
timotimo helps to be toady
geekosaur did say something about that the first time it came up :p 17:06
TimToady "The programmer did something stupid, and we couldn't catch it, so that somehow becomes our fault, not theirs?" :)
geekosaur (and I did think about the whitespace issue but I kinda hate significant whitespace in that context as it is)
Zoffix wouldn't shed any tears if all the X::Obsolete warnings would go away 17:08
m: say "x" =~ 42
camelia 5===SORRY!5=== Error while compiling <tmp>
Unsupported use of =~ to do pattern matching; in Perl 6 please use ~~
at <tmp>:1
------> 3say "x" =~7ā5 42
Zoffix Except maybe that one.
timotimo it'd be much more useful if it stringified 42 and assigned it to "x" there! 17:09
Zoffix :) 17:10
awww.. you can't have space before a postfix? 17:12
My dream lies in shatters
timotimo only unspace
Zoffix m: sub postfix:<or-fail> ($v) { 42 }; sub foo {}; dd foo() or-fail
camelia WARNINGS for <tmp>:
Useless use of "-" in expression "-fail" in sink context (line 1)
Nil
Failed
in block <unit> at <tmp> line 1
Zoffix m: sub postfix:<ā™„or-fail> ($v) { 42 }; sub foo {}; dd foo ā™„or-fail 17:18
camelia 42
Zoffix Ahhh
My dream is back in one piece :D
AlexDaniel: using āˆØ in my code right now and I'm 100% -1 for it being a Mexican "or". It's just like "v" 17:24
if foo āˆØ-bar {} 17:27
Valid code :D
ilmari huh, no Ā¬ operator? 17:28
m: say Ā¬ True
camelia 5===SORRY!5===
Argument to "say" seems to be malformed
at <tmp>:1
------> 3say7ā5 Ā¬ True
Bogus postfix
at <tmp>:1
------> 3say 7ā5Ā¬ True
expecting any of:
infix
infix stopper
postfix
ā€¦
Zoffix
.oO( make a module :P )
ilmari m: sub prefix:<Ā¬>($x) { ! $x }; say Ā¬ True 17:29
camelia False
[Coke] m: ?now, do .WHAT
camelia WARNINGS for <tmp>:
Useless use of "?" in expression "?now" in sink context (line 1)
Zoffix Actually, you probably can't make a module. 17:30
Same reason you couldn't do the ā‰¤ as a module
Well, *can* but it'd have to be a slang.
"===SORRY!=== MVMArray: Can't pop from an empty array" 17:32
I dream of the day when my programming in Perl 6 won't involve bugs.
Unless I want to, I mean :)
m: sub postfix:<!> is equiv(&infix:<orelse>) { $^v }; 42! 17:37
camelia ===SORRY!===
MVMArray: Can't pop from an empty array
TimToady m: module NottyNice { sub prefix:<Ā¬>($x) is export { ! $x }; }; import NottyNice; say Ā¬ True
camelia False
TimToady should work fine in a module
Zoffix s: &trait_mod, \(sub {}, :equiv) 17:38
SourceBaby Zoffix, Something's wrong: ā¤ERR: ===SORRY!=== Error while compiling -eā¤Undeclared routine:ā¤ trait_mod used at line 6ā¤ā¤
Zoffix TimToady: what about short-curcuiting and chaining with and?
Ah, I see conversation got changed to prefix Ā¬
Never mind :)
s: &trait_mod:<is>, \(sub {}, :equiv) 17:39
SourceBaby Zoffix, Sauce is at github.com/rakudo/rakudo/blob/87fe...ts.pm#L107
Zoffix m: sub postfix:<!> is prec({:assoc("list")}) { $^v }; 42! 17:51
camelia ===SORRY!===
MVMArray: Can't pop from an empty array
Zoffix seems the error is about making postfix ops list assoc
m: sub infix:<!> is prec({:assoc("list")}) ($, $) { }; 42!42 17:52
camelia 5===SORRY!5===
Expression needs parens to avoid gobbling block
at <tmp>:1
------> 3sub infix:<!> is prec({:assoc("list")}7ā5) ($, $) { }; 42!42
Missing block (apparently claimed by expression)
at <tmp>:1
------> 3sub infix:<!> is pā€¦
Zoffix *sigh*
m: sub infix:<!> ($, $) is prec({:assoc("list")}) { }; 42!42
camelia 5===SORRY!5=== Error while compiling <tmp>
Negation metaoperator not followed by valid infix
at <tmp>:1
------> 3$, $) is prec({:assoc("list")}) { }; 42!7ā0542
expecting any of:
infix
infix stopper
Zoffix (ā•ÆĀ°ā–”Ā°ļ¼‰ā•Æļøµ ā”»ā”ā”» 17:53
Does it make sense for prefix/postfix ops to be list associative? 17:59
No idea where src/vm/moar/HLL/Backend.nqp is 18:00
But on line 1099 is pops from an array that ain't got things for infix and postfix ops.
No one's around 18:02
Zoffix just files this bug 18:03
rt.perl.org/Ticket/Display.html?id=131099 18:05
TimToady list associativity makes no sense on a unary operator, since there can only be one of it, and associativity is about how two or more operators relate when precedence doesn't decide 18:11
we can stretch the notion of associativity slightly to say how to parse things like ++$x++, but that's about it 18:12
Zoffix OK cool. 18:13
I'll take care of that ticket then (gonna throw). Is there a saner way to check if an op is prefix/postfix than checking if .name.starts-with('postfix:') or .name.starts-with('prefix:') ? 18:16
TimToady how 'bout only allowing it on 'infix'? 18:21
Zoffix OK
Staring at the test run, wondering why the test I added doesn't show up in the output... 18:49
Turns out I made the fix on one box, but added the test on a completely different one!
m: 42.?name.starts-with: 'foo'; # sad kitty is sad 18:59
camelia Invocant requires an instance of type Cool, but a type object was passed. Did you forget a .new?
in block <unit> at <tmp> line 1
Zoffix would be sweet to make .? shortcurcuit the method chain or something. It's not very useful in its current form 19:00
m: sub x {}; dd &x.^lookup("name") 19:02
camelia ForeignCode <anon> = ForeignCode.new
Zoffix Do all Routines have .name?
the method I mean 19:03
Oh
m: dd Routine.^lookup('name')
camelia ForeignCode <anon> = ForeignCode.new
Zoffix \o/
moritz m: say Routine.can('name')
camelia (<anon>)
moritz too slow 19:04
Zoffix :)
*sigh* what's its problem? Tried like 4 different variations and getting this non-descript error :/ gist.github.com/zoffixznet/27711f3...6ac1565212 19:21
(my diff with the change is at the bottom) 19:22
Wonder if some core ops is trying to set a list assoc and my check for whether its an infix op is sucky 19:26
samcv hello perl 6 people 19:27
Zoffix \o 19:28
Hm. Nope. Changed it to `note` instead of `die` and it's still unhappy :/ 19:29
lizmat Zoffix: is this a current issue in HEAD ? 19:30
Zoffix lizmat: yeah. Well, there's no issue without my change. 19:31
well, almost head. There's a 1-line addition in traits.pm I have locally; but it passes the stresstest 19:32
lizmat so what's different from HEAD that it causes you grief ? 19:34
ah, at the bottom
Zoffix Yeah 19:35
Zoffix tries rewriting that in nqp ops
Hm still throws: gist.github.com/zoffixznet/d74b81e...4b136d3c78 19:37
Zoffix tries deleting things to find what breaks
lizmat Zoffix: it would be quite possible that at that point in the setting, it doesn't know about Str.starts-with
yeah, Str.starts-with doesn't exist until line 12619 in the setting, and the trait lives at line 180 19:39
so, rewriting with nqp ops *should* work
note that that code runs at compile time 19:40
so it cannot be late bound
Zoffix Well, this crashes too, so I'm guessing it's the attempt to look up stuff in the hash? gist.github.com/zoffixznet/c150dfd...24657631a0 19:42
It's probably not a Perl 6 hash 19:44
This dies too. I give up: gist.github.com/zoffixznet/e652bd5...eb3ef916ac 19:47
lizmat Zoffix: if you do s/note/nqp::say./ ? 19:49
because I don't think "note" is known at that time either 19:50
Zoffix Gonna try in ~1hr. Gotta relocate
lizmat ack 19:51
Geth rakudo/nom: f9f0883c6c | (Zoffix Znet)++ | src/core/traits.pm
Delete .prec<assoc> in is equiv() trait

This mirrors what is tighter and is looser do. Though they leave other bits (like `thunky`) as is, so the whole thing is a bit iffy.
Fixes RT131099: rt.perl.org/Ticket/Display.html?id=131099
19:53
roast: 75f42755ec | (Zoffix Znet)++ | S06-traits/precedence.t
Test `is equiv` does not set .prec<assoc>

RT#131099: rt.perl.org/Ticket/Display.html?id=131099
Zoffix (that was the previous commit I already had; not the one I was strugglign to compile)
samcv ok. perl6 wizards. how can i determine which command line argument to the perl6 executable will actually be a file 19:59
lizmat Zoffix: if nqp::can($r,'prec') && $r.prec<assoc> && $r.prec<assoc> eq 'list'
samcv since usually it's the 1st one, but i fthere are options passed to it. then it can be other ones
is is almost always the LAST one?
lizmat hmmm... not working either :-( 20:00
samcv at least as far as it is used in roast?
Zoffix samcv: wouldn't it be any arg, if you consider args passed to the program too. Sometimes there isn't a file at all, like -e, or when reading the program from stdin 20:11
timotimo yo Zoffix, remember when JSON::Fast took a long time and a lot of memory to parse that one json document you had? 20:12
Zoffix timotimo, and now it fails tests? :p
timotimo only when tests are run by zef for some reason 20:13
Zoffix read #moarvm
Hm.
lizmat Zoffix: $r.prec('assoc') eq "list"
Zoffix timotimo, what about zef --/tap-harness test . 20:15
timotimo one sec
i'm just recompiling rakudo
Zoffix lizmat++ thanks
lizmat, I don't get why that's that way tho :s 20:16
lizmat not sure what is causing the run error of the BEGIN block 20:17
Zoffix m: dd &[orelse].prec('assoc')
camelia "list"
Zoffix m: dd &[orelse].prec
camelia {:assoc("list"), :prec("c="), :thunky(".b")}
Zoffix hm. OK
lizmat but passing it as a parameter, will return '' if it doesn't exist
so you don't need to lookup twice
Zoffix Cool. That'll do the job. Thanks. 20:18
lizmat yw :-)
timotimo Zoffix: with that flag it passes 20:21
Zoffix timotimo: and without it fails? 20:22
Looks like a job for TAP::Harness Fixer Person! 20:23
:)
Hoe can I repro it?
timotimo gist.github.com/timo/da1ed310c0375...b2ffc89002 20:24
should be able to just "zef install JSON::Fast"
ok 12 - JSON string Ā«[\n...[11]Ā» parsed 20:26
this is the one that it doesn't find for some reaso
Zoffix looks 20:38
everything passes on 2017.03-101-ga5800a1 20:39
m: say $*PERL.compiler.version
camelia v2017.03.129.gf.9.f.0883
Zoffix upgrades
timotimo: the failure's in github.com/timo/json_fast repo right now, right? 20:40
samcv Zoffix, well yeah i know about -e. i only really care about ones that are asking for files 20:41
idk maybe i can do some path detection if something has a './' or a slashes in it 20:42
to see if i'm missing any coverage for roast
Zoffix samcv: perl6 foo.p6 -some -args -to -the script that works, right?
So it can be anywhere
samcv ok but how to i figure it out from inside the perl6 sh script 20:43
Zoffix dunno
samcv maybe try the 1st one, and if it has `.t` or `.pl` `.p6` or something otherwise try the next one
timotimo Zoffix: indeed, it's the master branch 20:44
samcv or actually better may be, to just see if it starts with a `-`
and if it does go to the next one
and if it's -e just put it into a randomly generated -e profile
so i can make sure to save it all 20:45
AlexDaniel Zoffix: renders very similarly to ā€œvā€ here as well
Zoffix: Ā¬ āˆ§ āŠ» are very distinguishable though
Zoffix samcv: perl6 -M Test script.p6 works 20:46
samcv also i have all theese getout-RANDOM-RANDOM i think the Util.pm creates
Zoffix AlexDaniel: I'd have a hard time remembering which is which tho :P
samcv well it says `my $fnbase = 'getout';` so i think that's wheere all those files are coming from
why it gotta be so complicated XD 20:47
Zoffix samcv: yeah, I have them sometimes as well. I think it's `is_run` that creates them. FWIW, I added make-test-file on the weekened that shoves these into $*TMPDIR so perhaps all such uses could be replaced vOv
samcv so i think those profiles should be added to the roast profiles
even thoug they're not associated with one of the /t/ files
lizmat decommute from Amsterdam.PM meeting&
samcv well i'm sure they are somewhere?
AlexDaniel Zoffix: yeah, wellā€¦ maybe this has to be moved to questionable section 20:48
samcv but it saves profiles based on the 1st argument to the perl6 script
basically `t/blah/blah.t` will create coverage/t/blah/blah.t.profraw
or whatever directory/file it is
Zoffix timotimo: `zef test .` passes for me :/ 20:49
On rakudo's head now
2017.03-129-gf9f0883
timotimo: do you have TAP::Harness installed by any chance? 20:50
samcv maybe we can somehow find a way to associate those is-run files with certain .t files
Zoffix timotimo: zef uninstall TAP::Harness
samcv err getout or something
since they are ran under a certain .t file
Zoffix samcv: make-test-file does. Includes the test file name and line number in file's name 20:51
though I guess if is_run were to use them, then those would be wrong :(
samcv yea
also where is make-test-file 20:52
i can't find it by grepping /t/ in rakudo
Zoffix samcv: t/spec/packages/Test/Util.pm
samcv: zef uninstall TAP::Harness
oops
samcv: github.com/perl6/roast/blob/master...#L237-L265
samcv oh ok
Zoffix timotimo: yeah, with ecosystem's TAP::Harness I get same failures as yours. Get rid of it, so zef uses core one 20:55
samcv m: say $*PROGRAM 20:57
camelia "<tmp>".IO
samcv m: say $*PROGRAM-NAME 20:58
camelia <tmp>
timotimo !!!> Found no matching candidates to uninstall 20:59
Zoffix dafuq 21:00
timotimo: well, I can't repro the issue on HEAD zef, HEAD rakudo, and HEAD JSON::Fast 21:01
When that module is not installed.
timotimo: here first pass; then I install that module and get failures: gist.github.com/zoffixznet/9c77efe...24f60d2a26 21:02
timotimo oh 21:11
i spelled it Tap instead of TAP
soooo 21:12
will someone open an issue on the TAP::Harness repo?
anyway, dinner time real soon
Zoffix hah :D
timotimo: I did open the issue, but one that says something along the lines of "having two tap harnesses sucks" 21:13
I kinda mentioned the module was broken to the author, but it was while debating the suckiness of TAP spec in another github repo 21:14
And the author was of the opinion that not escaping backslashes is dumb (but we do it now, so his module is broken). 21:15
timotimo oh, huh 21:16
i didn't know TAP::Harness isn't good
Zoffix Well, here's that convo: github.com/TestAnything/testanythi...-271145559 21:17
IMO it's pretty fucking stupid. All major TAP harnesses and TAP producers escape and handle escapes. Not speccing that feature is ignoring reality.
timotimo AFK
Zoffix $work gave me a free cake for bday. Anyone want a piece? 21:25
samcv hmm it seems somewhere in roast is passing
Zoffix 2,300 calories. All for me :/
samcv "-e ''" as the 1st command line argument
that's not two seperate command line arguments but only one. idk maybe that's a purposeful test. wish i knew where it came from 21:26
argh
also how do you open files with perl 6 that start with a `-` 21:27
or is it impossible.... 21:28
Zoffix samcv: S17-procasync/basic.t:110:$pc = Proc::Async.new($*EXECUTABLE, "-e ''"); # It taps a warning, but it is safe to catch.
samcv kk
Zoffix there are three more places actually... Run grep -nFR 'e '\'''\''' 21:29
well, 1 more, since other two use shell
samcv hmm
k
AlexDaniel Zoffix: I'd eat it :S 21:34
Zoffix /dcc AlexDaniel $rest-of-cake 21:35
AlexDaniel thanks! Butā€¦ I think I just need a robot that would make it for me 21:36
samcv is it okay if i alter this github.com/perl6/roast/blob/master...-rxtrace.t 21:38
cause it's failing when i use coverage because it takes stderr
Zoffix samcv: alter how? 21:46
samcv: it's not part of 6.c-errata; so I think it's fine to change it, as long as it still covers the original bug 21:48
samcv like this gist.github.com/samcv/401e93e49375...b36cbc4593
yeah it does. and i tested it and made sure it failed and acted identically when it wasn't under profile 21:49
like if i change the say "hello" thing to note, it does output stderr and fails with exact same characters as before change. also works under profile as well
Zoffix samcv: yeah, but maybe add that env var to README so people don't wonder what it's about 21:50
samcv which readme
of roast?
hmm or maybe i can be super fancy and strip it out INSIDE the profiling script. 21:53
Zoffix YEAH
I mean yeah
:)
samcv the call is coming from inside the house
YEAH 21:54
timotimo aynway 21:55
hooray for JSON::Fast!
samcv yay is it more fast?
timotimo well, yeah? 21:57
remember when i pasted the new time + memory use?
samcv yep
missed the memory part but looked now. so a little bit of memory and a ton of speed improvement 21:58
Zoffix timotimo++ awesome improvement 21:59
timotimo um
no, only 1/10 of the memory
samcv Zoffix, will it seems to have worked. the uh changing it inside the executable 22:00
though maybe i can be cool and like. save that error to a log somewhere
Zoffix I finally managed to compile my list fix. I didn't use .prec('assoc') 'cause that would've made it die AFTER mixing in the role, which I found iffy, but using nqp ops all the way, including nqp::atkey() made it compile finally 22:01
samcv so i can actually see it (since prove makes it so i can't see it, though can see it if i execute the scritp normally)
Zoffix bah t/spec/S06-traits/precedence.rakudo.moar .......................... Dubious, test returned 1 (wstat 256, 0x100)
screw you, computer!
oh, it's the test I added today. 22:03
what am I doing with my life... 22:11
New compilation errors. Yeye 22:27
This is stupid.
Zoffix stashes the diff for another day
Time for.... 22:28
IO NINJAING \o\ -o )o) o-
AlexDaniel \o/ 22:29
timotimo yeah! 22:31
samcv ok i installed llvm 5.0 maybe profiling will have magical cool othings in it? I can hope. we will see 22:52
wow there's so many extra columns to the report overview 22:53
timotimo whoa 22:56
samcv oh my dear lord
samcv brain asplodes
wooo and you can link lines in html by line number 22:59
too cool
uploading now
as well as a "jump to first uncovered line" link at the very top of each file :O 23:00
amazing cry.nu/coverage/cov-index.html
timotimo that's cool! 23:02
samcv amazingly cool
and css style we could change if we want
i can do `llvm-cov show help` and get like some list, which most of them i don't care about 23:10
then there's like --help-list-hidden which shows some crazy number of things 23:11
most of them idk why i would ever need to do
133 options
timotimo wow 23:12
samcv see timotimo gist.github.com/samcv/99a8edb933e3...eb3400236d 23:13
timotimo yeah no
Zoffix damn, now spurt is doing my head in.
timotimo those are for *everything*
samcv pretty much
Zoffix And it's quite ironic that a day after I removed the desk-flip emoji from my keyboard hot key, I want to use it. 23:14
m: spurt "foo", "meoweeeee".encode; spurt "foo", "bar"; slurp("foo").say
camelia spurt is disallowed in restricted setting
in sub restricted at src/RESTRICTED.setting line 1
in sub spurt at src/RESTRICTED.setting line 17
in block <unit> at <tmp> line 1
Zoffix I'm getting "baroweeeee" as output :/ 23:15
samcv also timotimo there's -help-hidden and -help-list-hidden
timotimo oh, spurt doesn't truncate, eh?
Zoffix .... because I'm dumb
Zoffix spots the bug 23:16
timotimo we probably want it to, though
samcv oh i see. --help-hidden shows them grouped in subtype
Zoffix it does. It's the New and Improvedā„¢ version :)
samcv timotimo, i hope they have spectesting for all of their 1000 options :)
timotimo they must have dominion over about a gajillion different machines
samcv they are confusing 23:17
i'm sure there's no person on earth who knows whet EVERY one of those options does 23:19
they seem super specialized
ugexe any other perl6 devs going to the perl toolchain summit (nine, lizmat)? 23:22
Zoffix is afraid of traveling to other countries, so no 23:23
ugexe: are you gonna be there?
ugexe yeah
Zoffix ugexe: Would be nice to figure out a security policy: what are the procedures when we discover a security issue. 23:24
I think lizmat is gonna be there too
tool chain summit
lizmat just got back from Amsterdam
but yes, Toolchain summit, yes, going to be there
Zoffix <Zoffix> Would be nice to figure out a security policy: what are the procedures when we discover a security issue. 23:25
lizmat we can learn from p5p in that respect :-) 23:26
samcv oh timotimo and it's nice. the coverage report doesn't list my full hd directory either on the new reports 23:27
woo. this is great.
timotimo \o/
samcv still need to learn how to combine libmoar.so and moar reports....
ugh
Zoffix m: dd utf8.new(73,32,226,153,165,32,80,101,114,108,32,54) eqv Buf[uint8].new(73,32,226,153,165,32,80,101,114,108,32,54) 23:28
camelia Bool::False
Zoffix m: dd utf8.new eqv Buf[uint8].new
camelia Bool::False
Zoffix Is it supposed to be this way?
m: with "/tmp/bar42".IO { dd "foo".encode; .spurt: "foo".encode; dd .slurp("foo", :bin) } 23:30
camelia utf8.new(102,111,111)
Too many positionals passed; expected 1 argument but got 2
in block <unit> at <tmp> line 1
Zoffix huh
timotimo Zoffix: yeah, utf8 is different from Buf, it's more like Blob
Zoffix timotimo: Buf is Blob trho 23:31
m: with "/tmp/bar42".IO { dd "foo".encode; .spurt: "foo".encode; dd .slurp(:bin) }
camelia utf8.new(102,111,111)
Buf[uint8].new(102,111,111)
timotimo yeah, so why would they be eqv anyway?
what's more important, though, is that the utf8 type claims the contents are valid utf8
Zoffix m: utf8.new(102,111,111)[1] = 42 23:32
camelia Cannot modify an immutable Int
in block <unit> at <tmp> line 1
Zoffix OK, I think I get it. Thanks
timotimo yeah, buf is read-write, utf8 is read-only
lizmat is tired and goes to bed 23:35
timotimo gnite lizmat! 23:36
Zoffix night