MasterDuke isn't there some reason that usually happens? fwiw, it used to just be a single method, signature of `(var, int $i, int $m, int $monkey, int $s, int $a, $context)` 01:00
and it's now `proto (|), (Iterable:D \var, ...), (Mu:D \var, ...), (Mu:U \var, ...)` 01:02
ugexe fwiw Net::HTTP broke sometime recently, complaining of using a `last` outside of a loop construct. as a workaround i redid the loop to not use `last`, but I also couldn't golf it 01:41
raw.githubusercontent.com/ugexe/Pe...ransport.t was one of the failing tests 01:59
AlexDaniel- c: HEAD gist.githubusercontent.com/AlexDan...b8/test.p6 02:00
committable6 AlexDaniel-, Successfully fetched the code from the provided URL.
AlexDaniel-, ¦HEAD(a72214c): «1..4␤===SORRY!===␤last without loop construct «exit code = 1»»
AlexDaniel- here
c: 2017.07 gist.githubusercontent.com/AlexDan...b8/test.p6
committable6 AlexDaniel-, Successfully fetched the code from the provided URL.
AlexDaniel-, gist.github.com/73e11623eb911ed075...c7afed24db 02:01
AlexDaniel- bisect: old=2017.07 gist.githubusercontent.com/AlexDan...b8/test.p6
bisectable6 AlexDaniel-, Successfully fetched the code from the provided URL.
AlexDaniel-, Bisecting by exit code (old=2017.07 new=a72214c). Old exit code: 0
AlexDaniel- *heavy breathing*
bisectable6 AlexDaniel-, bisect log: gist.github.com/5e61264647a48c145c...d93178087d
AlexDaniel-, (2017-10-07) github.com/rakudo/rakudo/commit/b5...7c3d408371
AlexDaniel- Geth: ver github.com/rakudo/rakudo/commit/b5...7c3d408371 02:02
Geth AlexDaniel-, version bump brought in these changes: github.com/perl6/nqp/compare/2017....0-ga6a1aa0
AlexDaniel- Geth: ver github.com/perl6/nqp/commit/a6a1aa...eee98b028a
Geth AlexDaniel-, version bump brought in these changes: github.com/MoarVM/MoarVM/compare/2...3-ga4fef0b
AlexDaniel- ugexe: pretty sure it's a JIT issue looking at this bump
but could be anything, I can't bisect into moar with a bot yet
let's double-check though 02:03
c: b59804bc^,b59804bc gist.githubusercontent.com/AlexDan...b8/test.p6
committable6 AlexDaniel-, Successfully fetched the code from the provided URL.
AlexDaniel-, gist.github.com/d58263ac81c276d0a3...266220ed2e
AlexDaniel- yeah, that is it
ugexe: rakudobug plz
AlexDaniel- & 02:04
MasterDuke .ask jnthn i've got a question about multis and find_best_dispatchee here irclog.perlgeek.de/perl6-dev/2017-..._15286003, with some relevant info here irclog.perlgeek.de/perl6-dev/2017-...i_15286163 02:09
yoleaux MasterDuke: I'll pass your message to jnthn.
MasterDuke .ask timotimo i've got a question about multis and find_best_dispatchee here irclog.perlgeek.de/perl6-dev/2017-..._15286003, with some relevant info here irclog.perlgeek.de/perl6-dev/2017-...i_15286163
yoleaux MasterDuke: I'll pass your message to timotimo.
MasterDuke .ask lizmat i've got a question about multis and find_best_dispatchee here irclog.perlgeek.de/perl6-dev/2017-..._15286003, with some relevant info here irclog.perlgeek.de/perl6-dev/2017-...i_15286163 02:10
yoleaux MasterDuke: I'll pass your message to lizmat.
travis-ci Rakudo build failed. Zoffix Znet 'Bump NQP' 04:38
travis-ci.org/rakudo/rakudo/builds/286282249 github.com/rakudo/rakudo/compare/e...2214c4f160
buggable [travis build above] ✓ All failures are due to: GitHub connectivity (1 failure).
[Tux] This is Rakudo version 2017.09-372-ga72214c4f built on MoarVM version 2017.09.1-591-gf2deedfc 06:04
csv-ip5xs 1.214 - 1.377
test 9.800 - 10.478
test-t 3.215 - 3.428
csv-parser 0.887 - 0.964
Geth nqp: 45cb3ee248 | pmurias++ | src/core/testing.nqp
[jvm] Workaround a try/CATCH bug in dies-ok
09:22
nqp: 0ccdf2e535 | pmurias++ | src/vm/jvm/runtime/org/perl6/nqp/sixmodel/reprs/P6bigintInstance.java
[jvm] Throw an exception when unboxing a too big bignum to an int
travis-ci NQP build failed. pmurias '[jvm] Throw an exception when unboxing a too big bignum to an int' 09:35
travis-ci.org/perl6/nqp/builds/286427600 github.com/perl6/nqp/compare/26abb...cdf2e535e7
buggable New CPAN upload: Config-1.2.2.tar.gz by TYIL cpan.metacpan.org/authors/id/T/TY/...2.2.tar.gz 10:06
timotimo ===> Testing: cro:ver<0.7> 11:20
WARNING: unhandled Failure detected in DESTROY. If you meant to ignore it, you can mark it as handled by calling .Bool, .so, .not, or .defined methods. The Failure was:
No such symbol 'Cro::Tools::LinkTemplate::HTTPS'
interesting
Zoffix awhile back some user had similar issue in #perl6. It was a `require` setup (I think with a `try`) from which the unhandled Failure was popping up and I couldn't see where it'd be coming from (IIRC the module was loading properly or the failure from require was being handled) 11:59
jnthn Yeah, it's RT'd 12:00
I'm sure we're disarming any Failure return gives us back
So I think it's some Rakudo bug. Not to mention that I'm sure that symbol does exist.
timotimo it could very well be we're accidentally cloning (or something?) the failure inside the module loader? 12:01
jnthn Dunno
Geth nqp/master: 4 commits pushed by pmurias++ 12:31
Zoffix ZOFVM: Files=1277, Tests=152650, 178 wallclock secs (21.69 usr 3.68 sys + 3415.87 cusr 217.02 csys = 3658.26 CPU) 12:37
Geth rakudo/nom: fbae69e2be | (Zoffix Znet)++ | src/core/traits.pm
Make `is default` on routines work earlier in setting

Sometimes it's needed but the `does` op it's using is defined late in the setting.
Mix in the marker role directly using .^mixin instead.
12:38
Zoffix timotimo: ^ that should make it work for you, if you still need it.
timotimo that's simple enough. thanks! 12:39
Zoffix is failing to find any tests for this feature :( 12:40
ah, S12-methods/default-trait.t 12:41
travis-ci NQP build failed. pmurias 'Add extra multidim tests' 12:45
travis-ci.org/perl6/nqp/builds/286493611 github.com/perl6/nqp/compare/0ccdf...d18b86e58a
samcv Zoffix, how would you feel about IO::Path.parent(2) or some number for how many parent directories to go up? 13:03
do you like that idea? 13:04
Geth rakudo/nom: 714c188d4a | (Timo Paulssen)++ | src/core/native_array.pm
generalize constraint for append

otherwise it'll only be called when an int64 array is passed. This makes it splice 32bit, 16bit and 8bit for basically free.
13:06
timotimo spec tests were clean
Zoffix samcv: is it different from IO::Path.add('../../') ? 13:08
samcv well. that's really a unixism 13:09
Zoffix Why?
samcv well it's not as clean
you want the parent to 2 levels not just 1. what if you want the 5th parent
or want to do it programatically?
based on depth?
Zoffix IO::Path.add('../' x $depth) 13:10
samcv just because there's one way to possibly do it doesn't mean there shouldn't be another 13:11
i don't like the idea of having to manipulate the path myself
by multiplying strings
and if we want people to use .child, it seems to follow that having .parent and being able to do a certain number of parents would make sense 13:12
why even have parent at all if you can just do .add('../') ?
Zoffix samcv: don't really care about it one way or another, but feels like a YAGNI: adding a million of options just because you thought of them. Perl's App::ZofCMS has this problem with its plugins and their docs are a mile long just because they have to document all of these options that ultimately make no difference 13:13
samcv curious what other peoples thoughts on this are?
Zoffix <Zoffix> samcv: is it different from IO::Path.add('../../') 13:15
Yeah, it is.
m: .parent.parent.resolve.say with "foo".IO
camelia "/home".IO
Zoffix m: .add('../../').resolve.say with "foo".IO
camelia "/home/camelia/foo/../..".IO
Zoffix needs to be .parent.add('../' x $depth-1) to be the same
samcv m: say $*CWD.parent.add('../') 13:16
camelia "/home/../".IO
Zoffix Ah, not even then. Looks like .parent is not symlink safe, while .add is
m: my $p = "foo/bar/ber/meows".IO; my $depth = 3; $p .= parent xx $depth; say 4p 13:17
camelia 5===SORRY!5=== Error while compiling <tmp>
Confused
at <tmp>:1
------> 3depth = 3; $p .= parent xx $depth; say 47⏏5p
Zoffix m: my $p = "foo/bar/ber/meows".IO; my $depth = 3; $p .= parent xx $depth; say $p
camelia "foo".IO
Zoffix m: my $p = "foo/bar/ber/meows".IO; my $depth = 3; $p .= add('../') xx $depth; say $p 13:18
camelia "foo/bar/ber/meows/../../../".IO
Zoffix samcv: well, you got the commit bit :) I have no opinion on this
Zoffix &
samcv ok :)
was also asking if adding just an int argument was fine with you, since you had done work on the IO operations arguments as well 13:19
though i think .parent a number by itself not a named argument makes most sense
also this: 13:20
m: $*CWD.parent.add('../').absolute.say
camelia /home/..
samcv so it seems to be different in general and i didn't know for sure about the symlink thing, but i had an inkling there was some difference 13:21
[Coke] ff 13:33
[Coke] is using rakudo for some devops stuff at work and is happy. 13:40
pmurias jnthn: is there anything besides BUILDALL on the jvm backend that might be affected by a change to BUILDALLPLAN? 13:50
timotimo lizmat: would be interested to hear startup timings with my last few moarvm commits 13:57
Zoffix bumps 14:14
samcv: yeah, int argument sounds fine 14:15
AlexDaniel :o even better startup times? :o :o
Zoffix m: $*CWD.parent.add('../').resolve.absolute.say
camelia /
Zoffix m: 'foo'.IO.parent.parent.say
camelia "..".IO
Zoffix m: 'foo'.IO.parent.parent.resolve.say 14:16
camelia "/home".IO
Zoffix m: 'foo'.IO.add('../..').resolve.say
camelia "/home/camelia/foo/../..".IO
Zoffix Basically .parent just chops off the path to get its value, while the .add() version adds the ../ things, which will stay if they can't be resolved. Were `foo` a symlink to some other dir, the result .parent could be said to be "wrong", as the '../' things would lead up the original dir. But I think doing `cd ..` in the shell would have the behaviour like what `.parent` does, so it makes sense to have two 14:17
versions to do this
ZOFVM: Files=1277, Tests=152650, 153 wallclock secs (22.21 usr 3.38 sys + 3336.72 cusr 180.39 csys = 3542.70 CPU) 14:22
Felt like tests were flying through a lot faster (need to take care of the few tests that sit there and hog everything eventually...)
ZOFFLOP: t/spec/S17-procasync/kill.t
Geth nqp: e9bca388a7 | (Zoffix Znet)++ | tools/build/MOAR_REVISION
Bump MoarVM
14:23
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...4-gb9d3f6d
rakudo/nom: a0f29e0dfa | (Zoffix Znet)++ | tools/build/NQP_REVISION
Bump NQP
¦ rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....4-ge9bca38
Zoffix $ time ./perl6 -e '' real0m0.122s $ time perl6 -e '' real0m0.146s with ./perl6 being HEAD and perl6 being 2017.09-87-g6bdb2dd 14:25
m: say 146/122
camelia 1.196721
Zoffix sweet
buggable New CPAN upload: TimeUnit-0.1.0.tar.gz by ATROXAPER cpan.metacpan.org/authors/id/A/AT/...1.0.tar.gz 14:26
Zoffix m: say 0.024*1277 14:31
camelia 30.648
Zoffix So that shaved off 30s off the spectest (were it run on 1 core)
off *stresstest
AlexDaniel :o 14:38
timotimo what did?
AlexDaniel timo*++
timotimo who, me?
Zoffix Yeah :) 14:39
timotimo whoa
Zoffix 20% off startup
AlexDaniel Plz more? :)
timotimo it didn't make it much faster on my machine :(
still 0.10s for every empty program 14:40
Zoffix perl -e '' is 0.003 :o
timotimo no way
Zoffix On my box, yeah
timotimo okay it goes down to 0.09 more than half the time now
Zoffix on same box perl6 -e '' is 0.177s this is 2017.09-223-gd565ded tho 14:41
AlexDaniel It is, yeah
Zoffix m: say .177/.003
camelia 59
timotimo oh, sorry, i thought perl6 -e '' was 0.003 on your box 14:42
travis-ci NQP build failed. Zoffix Znet 'Bump MoarVM'
travis-ci.org/perl6/nqp/builds/286545373 github.com/perl6/nqp/compare/ebd18...bca388a765
timotimo but it was perl5 14:43
AlexDaniel At this point we should be comparing it with python maybe
Zoffix time (for i in {1..85}; do perl -e ''; done) runs the same time as perl6 -e ''
:)
python takes .022s 14:44
timotimo how much time is one-core-stresstest on that same box, Zoffix?
1277 seconds, is that what? 14:45
Zoffix `time (for i in {1..9}; do python -c ''; done)` takes same time a `perl6 e ''`... So we're within an order of magnitude. Pretty good!
AlexDaniel- yeah it's getting closer
a few years ago it was unbearable 14:46
Zoffix timotimo: dunno, I never ran one-core stresstest. 1277 is the number of files in the stresstest, multiplied by the number of miliseconds the HEAD shaves off compared to older perl6
off start time
timotimo oh, ok 14:48
Zoffix That was for Python 2.7.3 btw
travis-ci Rakudo build passed. Zoffix Znet 'Make `is default` on routines work earlier in setting 14:52
travis-ci.org/rakudo/rakudo/builds/286496865 github.com/rakudo/rakudo/compare/a...ae69e2be32
AlexDaniel- hmmm. Here it went down from 0.161s to 0.156s
just 3% or so but it adds up 14:53
DrForr fg 15:00
Zoffix bash: fg: current: no such job 15:01
AlexDaniel- hmm, it's 0.140s now… nevermind 15:39
I think I had some background crap running
timotimo hum. my static js doesn't reach the browser for some reason 15:57
oh, haha
probably "cro trace"'s fault for trying to hexdump 1.2 megs of javasrcipt
buggable New CPAN upload: TimeUnit-0.1.1.tar.gz by ATROXAPER cpan.metacpan.org/authors/id/A/AT/...1.1.tar.gz 16:06
timotimo huh. i start{} some stuff from the mainline of the main file but they only get run after i hit ctrl-c? 16:09
AlexDaniel- timotimo: are you sure it's not output buffering? 16:51
travis-ci Rakudo build passed. Timo Paulssen 'generalize constraint for append 16:55
travis-ci.org/rakudo/rakudo/builds/286508647 github.com/rakudo/rakudo/compare/f...4c188d4aa0
AlexDaniel- Zoffix: so what if I move al 「testneeded」 tickets to roast issues and we make a roast squashathon next month? 16:57
does it make sense?
timotimo imgur.com/CziybHs 16:59
AlexDaniel-: it was in fact output buffering :)
Zoffix AlexDaniel-: I'm a bad person to ask this, because I don't like most of the PRs for tests :} 17:01
buggable: zen TESTING IS AN ART!
buggable Zoffix, "When an ordinary man attains knowledge, he is a sage; when a sage attains understanding, he is an ordinary man."
Zoffix ZofBot: what about an ordinary woman? 17:02
ZofBot Zoffix, d, and who wants to do them
Zoffix ouch. Bad robot! 17:03
AlexDaniel- hah
so I couldn't sleep last night and was thinking about it
so let's say we start moving RT testneeded tickets to roast github issues
because, you know, squashathon and hacktoberfest and stuff, it's just so much easier this way 17:04
problem is, some of these tickets should be resolved by tests in rakudo/t 17:05
… so… at what point do we stop banging our heads against the wall and open up rakudo/issues on github?
Zoffix another problem is some of them ain't even fixed.
Like the Duration.new(Inf) thing. The claimed fix just binds a Failure to a Rat attribute. Seems new behaviour is even worse. 17:06
AlexDaniel- well, great, then I'll move it back to RT :'(
I mean, look, I see no problem having to refer to tickets as RT #666 and GH #666 17:07
so old tickets can stay there, I'm fine with that
Zoffix and a third problem is you often need to read back like miles of text just to understand what exactly was wrong and how to properly cover it
AlexDaniel- but it'd be so much easier…
Zoffix Feels like we need some TESTNEEDED task force and people who like writing tests close those tickets in higher priority, rather than leaving them off as LHF for newcomers to hack on 17:08
AlexDaniel- hmmm
Zoffix I mean as a general thing, not as an argument against putting them for squashton
buggable: tag testneeded 17:09
buggable Zoffix, There are 55 tickets tagged with TESTNEEDED; See fail.rakudo.party/t/TESTNEEDED for details
Zoffix puts money where the mouth is and goes to close a couple
AlexDaniel- my problem right now is that RT makes it a nightmare for me 17:10
I have to jump through all of these hoops just because it is RT
Zoffix lizmat doesn't like RT either... Seems to me it's 2 against RT and no one actively objecting :) 17:11
objecting migration I mean 17:12
AlexDaniel- and my proposed solution is really that simple – just *open* rakudo/issues and see how it goes. We already use “RT” prefix for tickets consistently, I see no problem whatsoever
so I'm not proposing the massive migration just yet
pmurias Zoffix: what do you want to migrate RT to? 17:13
Zoffix pmurias: I have no opinion on this matter. I'm a silent-ish observer :) 17:14
AlexDaniel-: you got the keys to enable it tho, don't you?
AlexDaniel- the keys were not given for that purpose
Zoffix :)
Zoffix &
AlexDaniel- lizmat: what do you think about it? ↑ 17:18
do we even have anybody who is against using some other issue tracker in parallel to RT? 17:19
and by “anybody” I'm thinking someone who is relatively active. I touch RT every day and I'm so sick of it. If someone never has to interact with it and they're against the change, I couldn't care less. 17:20
Geth roast: 6e6045b783 | (Zoffix Znet)++ | S12-meta/exporthow.t
Test SUPERSEDE::class can be exported

RT#132236: rt.perl.org/Ticket/Display.html?id=132236 Rakudo fix: github.com/rakudo/rakudo/commit/dd...d83edb3753
17:30
synopsebot RT#132236 [open]: rt.perl.org/Ticket/Display.html?id=132236 [REGRESSION] Meta object construction
Zoffix Hm. RT#132083 is marked as resolved but R6 still shows it 17:32
synopsebot RT#132083 [resolved]: rt.perl.org/Ticket/Display.html?id=132083 [REGRESSION] Broken math (-2147483648 != -2147483648)
Zoffix clicks the "Delete" button 17:33
[Coke] I'm against a full scale migration. I'm fine with opening a second one and letting RT eventually run out of live tickets.
github issues ain't great, but it's not horrible. 17:34
gfldex I strongly dislike RT but I do like to get e-mails when tickets I created are closed. So I'm leaning towards slow transition.
Zoffix This is one of the examples I meant by how it's hard to know what to test for: rt.perl.org/Ticket/Display.html?id...et-history 17:35
gfldex however, I'm all for making work smoother for those who do close those tickes
Zoffix Especially since precomp is involved and to verify my test covers the bug I have to do gymnastics with committable6 or build the buggy commit. 17:36
Geth roast: 807ed8137f | (Zoffix Znet)++ | S32-io/dir.t
Test concurrentyl using dir() works

RT#129845: rt.perl.org/Ticket/Display.html?id=129845 Rakudo fix: github.com/rakudo/rakudo/commit/231cb3f
17:47
synopsebot RT#129845 [open]: rt.perl.org/Ticket/Display.html?id=129845 [TESTNEEDED] [CONC] `.dir` returns corrupted `IO::Path`s under concurrent load
Zoffix umm 17:48
it's only ~.3s but I guess since it's just covering a non-dir-related bug...
.in 4hr move this to stresstest github.com/perl6/roast/commit/807ed8137f
yoleaux Zoffix: I'll remind you at 21:48Z
timotimo Zoffix: i've tried the "say 'a' a million times" thing with "say 1" instead - in order to not do the braid switching - and it seems to make barely any difference at all in performance 17:53
Zoffix timotimo: ah, too bad then. 17:54
timotimo ;(
5.37% time spent in or under find_symbol 17:55
MATCH is responsible for 9.28% time but it also has 560k entries compared to 60k find_symbol 17:56
visit_children from the optimizer also spends about 8.9% of the whole program time
and 4.84% is under !alt 17:57
!cursor_pass (which i believe is also responsible for calling action methods) has an inclusive time of 28%
but funnily enough the first entry from Actions.nqp is at 8.17% inclusive (1.3% exclusive) time - it's term:sym<name> 17:58
Zoffix With `echo -n` echoing 10000x of these lines and measuring with `time perl6 -c` I get: `1.say;` = 6.9s; `1;` = 3.5s; `;` = 0m0.730s 18:02
timotimo i wonder if we have a "shortcut" for ; separated by whitespace
Zoffix Ah prolly 18:03
AlexDaniel- Zoffix: awwww I remember that ticket 18:06
maybe I can find the one liner that reproduces the issue… let's see… 18:07
timotimo only say(); over and over gets me to 4.37s (with say 1; it was 6.5s)
Zoffix AlexDaniel-: what issue? 18:08
AlexDaniel- Zoffix: RT #131924. Ah also, I don't think you have to care about precomp when using committable
synopsebot RT#131924 [new]: rt.perl.org/Ticket/Display.html?id=131924 [REGRESSION] \n\r and string concatenation improvements
Zoffix Ah
AlexDaniel- Zoffix: I never did and it always works, I still don't know why
I guess precomp files are different depending on what version you use? No idea actually…
Zoffix AlexDaniel-: I meant the bug manifests itself only in precomp 18:09
timotimo i get 4.06s with code like "sub boop { say 'a' };" and then only "boop;" lines
AlexDaniel- hmmmmmm oh.
timotimo also: it's somewhat hilarious to run a file that consists only of "boop;" lines without the declaration
imgur.com/ebkdPZQ 18:10
AlexDaniel- pwahahahah :D 18:11
masak next up: compiler error art
Zoffix timotimo: what did you use to get your timings?
timotimo "time"
the time that fish gives me
Zoffix I meant for "MATCH is responsible for 9.28% time" 18:12
timotimo oh, that was --profile-compile
Zoffix Ah. I get 0.26%
oh nm, there's more than one entry
(I'm painfully navigating the callgraph :P)
timotimo yeah, you should use the routines tab instead and sort by "exclusive" time :) 18:13
Zoffix ok :) 18:14
AlexDaniel- c: 5363a0742d9e^,5363a0742d9e my $a = "a" ~ "\n\r"; my $b = "\n\r"; say ($a ~ $b).chars
committable6 AlexDaniel-, ¦5363a0742d9e^: «Cannot find this revision (did you mean “e73ff23”?)» ¦5363a07: «Cannot find this revision (did you mean “e192924”?)»
AlexDaniel- :|
that's a moar sha
c: 2017.08~100,HEAD my $a = "a" ~ "\n\r"; my $b = "\n\r"; say ($a ~ $b).chars 18:15
committable6 AlexDaniel-, ¦2017.08~100,HEAD(a0f29e0): «4»
AlexDaniel- c: 2017.08~50,HEAD my $a = "a" ~ "\n\r"; my $b = "\n\r"; say ($a ~ $b).chars
committable6 AlexDaniel-, ¦2017.08~50,HEAD(a0f29e0): «4»
AlexDaniel- c: 2017.08~200,HEAD my $a = "a" ~ "\n\r"; my $b = "\n\r"; say ($a ~ $b).chars
committable6 AlexDaniel-, ¦2017.08~200,HEAD(a0f29e0): «4»
AlexDaniel- cries
Zoffix c: releases my $a = "a" ~ "\n\r"; my $b = "\n\r"; say ($a ~ $b).chars
committable6 Zoffix, ¦releases (23 commits): «4»
AlexDaniel- c: b81597bd,HEAD my $a = "a" ~ "\n\r"; my $b = "\n\r"; say ($a ~ $b).chars
committable6 AlexDaniel-, ¦b81597b,HEAD(a0f29e0): «4»
jnthn huh, surely that should be 3...
timotimo is that what you mean when you say \r gets turned into \n? 18:16
jnthn: did you see it's \n\r rather than \r\n?
jnthn Yes, but
Zoffix But when you concat you get \r\n in the middle
timotimo yeah
AlexDaniel- a \n \r\n \r
jnthn Oh! 18:17
I didn't see the a at the start
Zoffix ?
Ah :)
jnthn So yeah, 4 is right
AlexDaniel- ok that's not the right snippet I think
Zoffix AlexDaniel-: doesn't the fix say "this only was problematic with precompilation"?
jnthn blames post-dinner carb crash :) 18:18
timotimo is pre-dinner-grocery-shopping even :|
AlexDaniel- Zoffix: of course it does, but I'm blind
Zoffix What does empty string do in grammar? github.com/rakudo/rakudo/blob/nom/....nqp#L1237
What does <!!{}> do in gammar? 18:19
tyil confuse people
jnthn timotimo: Ah, got delivery :)
Lazy Wednesday :)
timotimo not a bad idea in itself
jnthn Zoffix: Note that it's a rule 18:20
Zoffix Ah. OK. What about <!!{}?
jnthn Zoffix: Everything before that point is code decls and adverbs, so don't trigger sigspace. The '' is to force it
timotimo "4 years ago" :D
Zoffix `<!!{ $*LANG := $*LEAF := $/.clone_braid_from(self); 1 }>` 18:21
timotimo indeed, the commit that introduced that line was all about turning tokens into rules
github.com/rakudo/rakudo/commit/37...a783c61499
jnthn Oh, wich something in it
So a negative lookahed is not an LTM terminator
While a positive lookahead or other code block is 18:22
timotimo what a nasty trick :)
jnthn So that's a sneaky way to run some code without it having any implication for LTM
Zoffix Oh lol :)
jnthn Yeah, :my $ = ...the code...; is the other trick :P
AlexDaniel- what about just {} ?
timotimo i wonder how completely that's going to break a future refactoring that passes LTM results down into recursive rules etc 18:23
well, { } immediately terminates LTM
jnthn AlexDaniel-: {} is an LTM terminator
AlexDaniel- e: run ‘wget’, ‘gist.githubusercontent.com/AlexDan...ader.pm6’, ‘-O’, ‘sandbox/Header.pm6’ 18:29
evalable6 --2017-10-11 20:29:15-- gist.githubusercontent.com/AlexDan...5df0e643…»
AlexDaniel-, Full output: gist.github.com/9a7c07b87ff102c5f6...28fd1460d4
AlexDaniel- e: run ‘wget’, ‘gist.githubusercontent.com/AlexDan...mple.pm6’, ‘-O’, ‘sandbox/Simple.pm6’
evalable6 --2017-10-11 20:29:40-- gist.githubusercontent.com/AlexDan...5df0e643…»
AlexDaniel-, Full output: gist.github.com/3aa1874910e113456c...a97fa738d8
AlexDaniel- c: HEAD gist.githubusercontent.com/AlexDan...e/basic.p6 18:30
committable6 AlexDaniel-, Successfully fetched the code from the provided URL.
AlexDaniel-, ¦HEAD(a0f29e0): «Default constructor for 'Simple' only takes named arguments␤ in block <unit> at /tmp/fdlvKoHhpc line 7␤ «exit code = 1»»
AlexDaniel- :|
oh the test file is wrong 18:31
actually, I really don't know what this whole thing is about anymore… nevermind I guess
c: HEAD use lib ‘sandbox’; use Simple; say buggy-str 18:32
committable6 AlexDaniel-, ¦HEAD(a0f29e0): «: ␤␤»
AlexDaniel- c: HEAD use lib ‘sandbox’; use Simple; say buggy-str eq “: \n\r\n\r” 18:33
committable6 AlexDaniel-, ¦HEAD(a0f29e0): «04===SORRY!04=== Error while compiling /tmp/59bVh9RBUf␤Undeclared routine:␤ eq used at line 1␤ «exit code = 1»»
AlexDaniel- c: HEAD use lib ‘sandbox’; use Simple; say buggy-str() eq “: \n\r\n\r”
committable6 AlexDaniel-, ¦HEAD(a0f29e0): «True»
AlexDaniel- c: b81597bd867a use lib ‘sandbox’; use Simple; say buggy-str() eq “: \n\r\n\r”
committable6 AlexDaniel-, ¦b81597b: «False»
AlexDaniel- \o/ \o/ \o/ \o/
Zoffix: yaayayay!!
c: b81597bd867a use lib ‘sandbox’; use Simple; my $x = buggy-str(); say $x; say $x eq “: \n\r\n\r” 18:34
committable6 AlexDaniel-, ¦b81597b: «: ␤␤␤False»
AlexDaniel- ok that doesn't help
but yeah, that *is* the test case
Zoffix AlexDaniel-: what's "Simple"? 18:35
AlexDaniel- Zoffix: unit class Simple; sub buggy-str is export { “: {‘’}\n\r” ~ “\n\r” }
Zoffix
.oO( fetch all the files from multi-file gist )
18:36
AlexDaniel- you don't need one of the files!
Zoffix But you got Simple.pm6 on the bot box, dinnitu? 18:37
AlexDaniel- Zoffix: I used 「run ‘wget’, …」 above to get it, yeah
Zoffix AlexDaniel-: is roast/t/spec/packages/Test/Util.pm somewhere on the box?
AlexDaniel- Zoffix: I've left a comment here: rt.perl.org/Ticket/Display.html?id...xn-1498385
e: run ‘git’, ‘clone’, ‘github.com/perl6/roast.git’, ‘sandbox/roast’ 18:39
Zoffix e: run «wget raw.githubusercontent.com/perl6/ro...st/Util.pm -O sandbox/Test/Util.pm»
evalable6 Cloning into 'sandbox/roast'...
(exit code 1) sandbox/Test/Util.pm: No such file or directory
The spawned command 'wget' exited unsuccessfully (exit code: 1)
in block <unit> at /tmp/Rl5DqFmior line 1
AlexDaniel- will probably not make it in 10 seconds though
Zoffix e: use lib <sandbox/roast/packages/>; use Test::Util; say make-temp-dir
evalable6 "/tmp/perl6_roast_4uf4VGBnNR_line1_0_5513874120385511507747188".IO
Zoffix \o/
neat
AlexDaniel- but you have ssh access to it, you can do whatever you want 18:40
Zoffix: fwiw I think your last wget failed because sandbox/Test directory does not exist 18:42
Zoffix mhm
AlexDaniel- e: mkdir ‘sandbox/Test’; run «wget raw.githubusercontent.com/perl6/ro...st/Util.pm -O sandbox/Test/Util.pm»
evalable6 --2017-10-11 20:42:55-- raw.githubusercontent.com/perl6/ro...ages/Tes…»
AlexDaniel-, Full output: gist.github.com/bb2582feeb6b93d9be...94200968fc
AlexDaniel- yep 18:43
Geth roast: 28481cea18 | (Zoffix Znet)++ | S10-packages/precompilation.t
No funny business in precomped string strands

RT#131924: rt.perl.org/Ticket/Display.html?id=131924 MoarVM fix: github.com/MoarVM/MoarVM/commit/5363a0742
18:56
synopsebot RT#131924 [new]: rt.perl.org/Ticket/Display.html?id=131924 [REGRESSION] \n\r and string concatenation improvements
AlexDaniel- Zoffix++ 18:58
Zoffix: any other TESTNEEDED tickets you have problems with? 18:59
Zoffix not yet 19:02
AlexDaniel- ugexe++ 19:07
Zoffix ? 19:08
What happened?
Zoffix is news-deprived
Just learned that DDG has !p6mod bang
AlexDaniel- releasable6: status
releasable6 AlexDaniel-, Next release in 9 days and ≈23 hours. 1 blocker. Changelog for this release was not started yet
AlexDaniel-, Details: gist.github.com/4ddde42705e2c6114d...2d5b3f7a37
AlexDaniel- Zoffix: he submitted that ticket ↑ 19:09
Zoffix ah 19:10
So Failure.self blows up the Failures and I thought it was awesome at the time, but I find myself needing to comment why the hell I'm adding .self into places :) 19:11
Well, I guess it's still better than not having that option, but the method doesn't make the code self-describing 19:12
ZofBot: .if-this-is-a-Failure-then-blow-it-up-otherwise-gimme-self 19:13
ZofBot Zoffix, anyway, this is not something we can close atm
AlexDaniel- “method self” 19:14
“Defined as:”
“method exception(Failure:D: --> Failure:D)”
huh?
docs.perl6.org/type/Failure#method_self
Zoffix hm... t/spec/S32-io/dir.t flopped.. The new test that tests dir() does not produce crap results under load 19:15
AlexDaniel-: fixed
AlexDaniel- was just about to push… :)
Zoffix too slow
Geth rakudo/nom: 25c87d0d1c | (Zoffix Znet)++ | src/core/Duration.pm
Blow up Failures in Duration.new

Otherwise we end up binding it to Rat attribute and it explodes only later, producing really confusing errors
19:16
travis-ci Rakudo build passed. Zoffix Znet 'Bump NQP' 19:18
travis-ci.org/rakudo/rakudo/builds/286545369 github.com/rakudo/rakudo/compare/7...f29e0dfad7
Zoffix hm hm hm 19:19
Zoffix ponders Duration.new with zero-denominator Rats 19:21
I guess it's fine to leave it in. We'll just need to improve the div-by-zero error to be more useful so when a zero-denomator Rat explodes somewhere, the error doesn't talk about "using `div`" 19:22
m: say [ $_ ≤ $_ or $_ ≥ $_ ] with Duration.new(0/0) 19:23
camelia [False]
Zoffix :)
m: say Duration.new(0/0)
camelia Attempt to divide by zero using div
in block <unit> at <tmp> line 1
Zoffix Yeah, more like attempt to give an unhelpful error
m: my $d = Duration.new(0/0); ␤␤␤␤␤ say "Computing";␤␤my $d2 = $d + 42; say "Done computing";␤␤␤␤␤ say $d2 19:24
camelia Computing
Attempt to divide by zero using div
in block <unit> at <tmp> line 13

Done computing
Zoffix m: for $*OUT, $*ERR -> { .open: .path, :w, :0buffer }; my $d = Duration.new(0/0); ␤␤␤␤␤ say "Computing";␤␤my $d2 = $d + 42; say "Done computing";␤␤␤␤␤ say $d2 19:25
camelia Too many positionals passed; expected 0 arguments but got 1
in block <unit> at <tmp> line 1
Zoffix m: for $*OUT, $*ERR { .open: .path, :w, :0buffer }; my $d = Duration.new(0/0); ␤␤␤␤␤ say "Computing";␤␤my $d2 = $d + 42; say "Done computing";␤␤␤␤␤ say $d2 19:26
camelia Too many positionals passed; expected 1 argument but got 2
in block <unit> at <tmp> line 1
Zoffix Fine, be that way!
m: my $d = Duration.new(0/0); ␤␤␤␤␤ note "Computing";␤␤my $d2 = $d + 42; note "Done computing";␤␤␤␤␤ note $d2
camelia Computing
Done computing
Attempt to divide by zero using div
in block <unit> at <tmp> line 13
Zoffix oh right, .open doesn't take a path, duh 19:27
pmurias If I want to add a test to roast for a yet unfixed bug I should fudge it? 19:29
Zoffix Yes
Geth roast: a821b71c7b | (Zoffix Znet)++ | S32-temporal/DateTime-Instant-Duration.t
Test Duration.new with iffy values

RT#127341: rt.perl.org/Ticket/Display.html?id=127341
  - Nums representable as zero-denominator Rat work
  - Wrong type of arg throws
19:34
synopsebot RT#127341 [open]: rt.perl.org/Ticket/Display.html?id=127341 [LTA] error message mentions $!tai ( Duration.new(∞) )
Geth rakudo/nom: 5d3ebc09ba | (Zoffix Znet)++ | t/05-messages/01-errors.t
Test Duration.new with bad args does not mention guts

RT#127341: rt.perl.org/Ticket/Display.html?id=127341
19:37
nqp: usev6++ created pull request #373:
[jvm] Don't wait for child when program ends
19:44
AlexDaniel- .tell jnthn Can we open rakudo/issues on github? See irclog.perlgeek.de/perl6-dev/2017-...i_15289848 and the start of the discussion on irclog.perlgeek.de/perl6-dev/2017-...i_15289680 20:19
yoleaux AlexDaniel-: I'll pass your message to jnthn.
Geth nqp/jvm_killprocasync: c5f4c14055 | usev6++ | 2 files
[jvm] Support signals 1, 9, 15 for killprocasync

Since SIGHUP (1) is the default signal used in Rakudo when calling nqp::killprocasync we have to cheat and pretend we got a SIGTERM.
The only other signal supported on the JVM is SIGKILL (used under the hood by destroyForcibly). For all remaining signals we throw an Exception.
20:21
bartolin AlexDaniel-: one thought that crossed my mind was that it's somewhat difficult for non-insiders to choose the right place to open an issue: roast, rakudo, nqp, doc, moarvm ... IMHO it would be nice to have one place where different types of new issues are accepted (like RT was before). 20:35
AlexDaniel-: maybe something like github.com/google/github-issue-mover can be used to move issues to the appropriate repo (if needed). (I haven't tested that issue mover, but maybe we can find a good tool for something like that.) 20:36
AlexDaniel-: all in all I'd be fine with using github issues for new bug reports 20:38
AlexDaniel- bartolin: is it really that big of a problem for non-insiders? There are only two choices: rakudo and doc
moar and nqp problems are still rakudo issues and we want to have a ticket for that anyway, I think 20:39
bartolin well, it wasn't meant as an objection. I just thought about it when you talked about making rt tickets to roast issues. 20:43
AlexDaniel- right
pmurias bartolin: the BUILDPLAN changes are causing a test failure on the JVM backend, but I can't figure out why 20:46
bartolin pmurias: the failure in t/nqp/060-bigint.t ? 20:49
bartolin builds a fresh nqp
pmurias bartolin: yep 20:55
Geth roast: 906d96ede1 | (Zoffix Znet)++ | S32-str/Collation.t
Add "v" to "v6.d" to avoid potential grep missage
21:18
Zoffix # TODO add test with "\c[woman facepalming]", "\c[man facepalming]"
Test for what? Any idea?
bottom of S32-str/Collation.t
Geth roast: 5091bdd995 | (Zoffix Znet)++ | S32-str/Collation.t
Test collation with 'A' vs 'a'

RT#132216: rt.perl.org/Ticket/Display.html?id=132216 MoarVM fix: github.com/MoarVM/MoarVM/commit/e9d331d4
21:21
synopsebot RT#132216 [new]: rt.perl.org/Ticket/Display.html?id=132216 [UNI] [TESTNEEDED] 'a' coll 'A" not Same but More with disabled tertiary and primary levels
Geth roast: 47a21ea017 | (Zoffix Znet)++ | S32-str/Collation.t
Remove debug output from TAP
AlexDaniel- “Now, GitHub will help potential first-time contributors discover issues labeled with 「help wanted」 or 「good first issue」” 21:22
three word tag… awesome 21:23
now what, mark issues with three tags at the same time? /o\ 「LHF」 「Hacktoberfest」 「good first issue」 21:24
teatime please tell me there is literally one called [THREE WORD TAG] 21:25
if there is, Zoffix made it. I am sure.
AlexDaniel- doesn't get the joke
Geth roast: 061b040e2b | (Zoffix Znet)++ | 2 files
Move dir() stress test into stresstest

Also bump number of iterations
21:28
rakudo/nom: de564a51b8 | (Zoffix Znet)++ | t/spectest.data
Add S32-io/dir-stress.t to list of test files to run
teatime AlexDaniel-: Three Word Tag is a Three Word Tag, like TLA 21:31
(Three Letter Acronyum)
AlexDaniel- ah
Zoffix Some of the fudges in S32-io/dir.t look bogus.... "dirname is not yet absolute RT #124786" It's not meant to be. "dir() returns IO::Local RT #124785" we ain't got an IO::Local
synopsebot RT#124786 [new]: rt.perl.org/Ticket/Display.html?id=124786 [IO] S32-io/dir.t line:18 reason: 'dirname is not yet absolute'
RT#124785 [new]: rt.perl.org/Ticket/Display.html?id=124785 [IO] S32-io/dir.t line:16 reason: 'entries are still IO::Path'
AlexDaniel- like YABA… 21:32
Geth roast: 73cb9e7ace | (Zoffix Znet)++ | S32-io/dir.t
Remove/Unfudge test for IO::Local

We don't have this type no more. Closes Rt#124785: rt.perl.org/Ticket/Display.html?id=124785
21:34
Zoffix m: dir.head.say 21:35
camelia ".cpanm".IO
Zoffix ... the test looks for $*CWD :S
Ah, .dirname ok 21:36
Geth roast: 66fb7a1a3b | (Zoffix Znet)++ | S32-io/dir.t
Rewrite bogus-ish dir.head.dirname test

The routine returns IO::Path objects which are composed of $!CWD and $!path. These objects can be made cheaper by setting $!CWD to the dir being dir()ed and $!path to the found stuff--without having to resolve anything. For this reason, it doesn't make much sense to require .dirname to be set to absolute paths.
Change the test to instead test that the generated IO::Paths actually point to proper filesystem entities.
21:47
bartolin pmurias: hmm, I don't think the nqp failure was caused by the BUILDPLAN changes. I reverted the commit from lizmat++ and still got that error. but if I change this line with the next one, all tests are clean: github.com/perl6/nqp/blob/e9bca388...e.java#L10 21:48
yoleaux Zoffix: move this to stresstest github.com/perl6/roast/commit/807ed8137f
Zoffix yoleaux: just did it bruh 21:49
oh haha 21:50
m: IO::Local.new
camelia IO::Local is disallowed in restricted setting
in sub restricted at src/RESTRICTED.setting line 1
in method new at src/RESTRICTED.setting line 32
in block <unit> at <tmp> line 1
bartolin pmurias: I don't understand why that makes a difference, but when I printed 'field' around here I got 'private static final BigInteger org.perl6.nqp.sixmodel.reprs.P6bigintInstance.SMALLEST_UNBOXABLE': github.com/perl6/nqp/blob/e9bca388...java#L2778 21:58
Zoffix ZOFLOP: t/spec/S17-supply/supplier-preserving.t 22:07
Seems only one test in the file " No races in Supplier::Preserving".. and the flop suggests there might be
Oh
Non-zero wait status: 11
Parse errors: Bad plan. You planned 1 tests but ran 0.
So it was a SEGV. No idea why
jnthn :S 22:08
yoleaux 20:19Z <AlexDaniel-> jnthn: Can we open rakudo/issues on github? See irclog.perlgeek.de/perl6-dev/2017-...i_15289848 and the start of the discussion on irclog.perlgeek.de/perl6-dev/2017-...i_15289680
Geth rakudo/nom: 50a674346b | (Zoffix Znet)++ | src/RESTRICTED.setting
Remove trailing whitespace
rakudo/nom: 4b8a0ef651 | (Zoffix Znet)++ | src/RESTRICTED.setting
Remove classes we no longer have in core
jnthn Zoffix: I fixed a couple of SEGV sources yesterday; dunno if the revision files were bumped since 22:09
Zoffix Yeah, they were.
jnthn Well, guess we know 2 bugs it isn't, at least... 22:10
Zoffix :)
FWIW, reproed with `while t/fudgeandrun t/spec/S17-supply/supplier-preserving.t; do true; done` on about 10th run 22:11
No idea how to debug SEGVs; maybe dogbert2 will be able to offer his expertise
MasterDuke jnthn: any idea what could cause multis to always go through find_best_dispatchee?
jnthn MasterDuke: The result not being cacheable
MasterDuke and why might that be the case? too many arguments to the method? 22:12
jnthn That can be because of a where clause, signature unpack, or because it was called with flattenned args
May be other reasons but I can't think of them off hand 22:13
Pretty sure the "too many arguments" thing can't happen any more
Zoffix Filed SEGV as rt.perl.org/Ticket/Display.html?id=132273
jnthn (The old multi cache had a fixed limit, I think I elimianted it)
timotimo i wonder if reverting my recent commits helps that bug any? 22:14
Zoffix I'm on HEAD
MasterDuke hm, this is INTERPOLATE after i broke it out into `proto (|), (Iterable:D \var, ...), (Callable:D \var, ...), (Mu:D \var, ...), (Mu:U \var, ...)`
Zoffix Oh reverting..
No idea
MasterDuke and i don't believe it's ever called with flattened args
jnthn MasterDuke: Hmm, then not immediately sure, but I'd start by looking at if add_to_cache is being called for that multi, and if so, would look in MVMMultiCache.c or whatever it's called 22:16
MasterDuke will do, thanks 22:17
timotimo: i've seen that test flop before
add_to_cache is being called the exact same number of times as find_best_dispatchee 22:18
now off to see if there's anything interesting in MVMMultiCache.c... 22:19
Geth roast: 30e9d1624e | (Zoffix Znet)++ | fudgeandrun
Propagate exit code
22:27
Zoffix :| github changed again 22:30
ZofBot: I don't like things that are different!
ZofBot Zoffix, com/rakudo/rakudo/blob/4de858a555fe0f6abfa813f0ff29e32edc159c2f/src/Perl6/ModuleLoader
Zoffix Though this reminds how much the black bar annoyed me when it changed, but now I don't even pay attention to it
buggable: zen
buggable Zoffix, "A follower of the way has neither form nor shape, neither root nor trunk; nor dwelling place; like a fish leaping in the water."
MasterDuke hm, not sure how to interpret the output of turning MVM_MULTICACHE_DEBUG on 22:31
jnthn MasterDuke: That's likely not very interesting (it shows what's in the cache iirc, while I think what you're after is the resasons things don't get inserted) 22:32
MasterDuke ah, so likely have to stick some fprintfs in MVM_multi_cache_add? 22:33
jnthn Probably, yeah 22:38
MasterDuke lots of `if (!cs->is_interned) return cache_obj;` happened. not the exact number of add_to_cache/find_best_dispatchee call though 22:42
timotimo then check the callsite_try_intern code 22:44
it's got the logic for what is allowed to get inlined
er, interned
MasterDuke a bunch of has_flattening and some num_flags >= MVM_INTERN_ARITY_LIMIT 22:48
not yet sure how to match them up to the INTERPOLATE calls 22:50
afk for a bit, but thanks, making progress
jnthn Sleep time for me; 'night o/ 22:53
Zoffix \o 22:54
timotimo gnite jnthn :)
i'll also go rest soon
MasterDuke ah, think it's arity 23:12
timotimo hmpf, both JSON::Tiny and JSON::Fast generate invalid json when enum values are involved 23:17
c: use JSON::Fast; enum Blop <Moo Meep Squee>; say to-json([Moo, Meep, Squee]).perl;
committable6 timotimo, ¦use: «Cannot find this revision (did you mean “all”?)»
timotimo c: HEAD use JSON::Fast; enum Blop <Moo Meep Squee>; say to-json([Moo, Meep, Squee]).perl; 23:18
committable6 timotimo, gist.github.com/2d51be550475556f1f...a12b20cf7e
timotimo oh, not available, eh?
anyway, the output is just [ Moo, Meep, Squee ] i.e. missing quotation marks
MasterDuke i can reproduce it manually. `multi method f(Mu:D \v, int $i, int $m, int $monkey, int $s, int $a)` is ok, but add one more parameter and no caching 23:19
timotimo oh? that's a somewhat low limit, isn't it?
MasterDuke src/core/callsite.h:106:#define MVM_INTERN_ARITY_LIMIT 8
timotimo yeah, and with it being a method it counts the $self, too 23:20
MasterDuke hm, comment right above it: /* Maximum arity + 1 that we'll intern callsites by. */
AlexDaniel- c: HEAD use lib ‘data/all-modules/cpan/TIMOTIMO/JSON-Fast’; use JSON::Fast; enum Blop <Moo Meep Squee>; say to-json([Moo, Meep, Squee]).perl; 23:22
committable6 AlexDaniel-, ¦HEAD(4b8a0ef): «"[\n 0,\n 1,\n 2\n]"»
AlexDaniel- timotimo: ↑
MasterDuke ugh, can't just increase MVM_INTERN_ARITY_LIMIT, that causes segfaults 23:26
timotimo oh? 23:31
i can't get it to output them as integer values 23:34
something to figure out tomorrow. gnite!
Zoffix . 23:49
yoleaux 23:07Z <HoboWithAShotgun> Zoffix: i saw your video ( www.youtube.com/watch?v=paa3niF72Nw ), that was very enjoyable. why not make a few more?
Zoffix haha: twitter.com/bcrypt/status/918222753500508160 23:52
rakudo (nom)$ git log --all --pretty='%H %ae' | sort -k1,1 | head -1
00006b16dd961d20bc20e1ac1d32df6d44320e05 [email@hidden.address] 23:53
:)
cosimo for roast and smsl for docs :)