Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm Set by Zoffix on 27 July 2018. |
|||||||||||||||||||||||||||||||||||||||
00:12
[Tux] joined
02:29
grayrider joined
02:44
grayrider left
|
|||||||||||||||||||||||||||||||||||||||
samcv | releasable6, status | 07:10 | |||||||||||||||||||||||||||||||||||||
releasable6 | samcv, Next release will happen when it's ready. 3 blockers. 262 out of 312 commits logged | ||||||||||||||||||||||||||||||||||||||
samcv, Details: gist.github.com/d6b7e07a17ec4536f3...047febb7d8 | |||||||||||||||||||||||||||||||||||||||
samcv | sounds good | ||||||||||||||||||||||||||||||||||||||
lizmat | Files=1267, Tests=88064, 402 wallclock secs (20.75 usr 6.30 sys + 2915.36 cusr 224.46 csys = 3166.87 CPU) | 07:36 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: 616b757a46 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Iterator.pm6 Make sure hash slice auto-vivifies using infix metaop Fixes R#2718 |
07:59 | |||||||||||||||||||||||||||||||||||||
synopsebot | R#2718 [open]: github.com/rakudo/rakudo/issues/2718 [regression] Assigning to Hash slice with »=» no longer auto-vivifies the Hash | ||||||||||||||||||||||||||||||||||||||
Geth | roast: a3b365fcda | (Elizabeth Mattijsen)++ | S13-overloading/metaoperators.t Add test for R#2718 |
||||||||||||||||||||||||||||||||||||||
10:04
dct joined
10:09
dct left
|
|||||||||||||||||||||||||||||||||||||||
[Tux] |
|
13:03 | |||||||||||||||||||||||||||||||||||||
13:12
lucasb joined
15:05
gfldex_ is now known as gfldex
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | samcv: ok, running Blin for the last time (hopefully) | 16:29 | |||||||||||||||||||||||||||||||||||||
MasterDuke | AlexDaniel: how long does a full Blin run take? | 16:57 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | MasterDuke: I think about an hour | ||||||||||||||||||||||||||||||||||||||
± something | |||||||||||||||||||||||||||||||||||||||
some luck involved also :) If it starts bisecting the last tested module then it might take some extra time doing just that, even though everything else is finished | 17:00 | ||||||||||||||||||||||||||||||||||||||
I think you can shave off a few minutes if you reorder modules taking into account the time it took to install them during the last run | 17:02 | ||||||||||||||||||||||||||||||||||||||
or, well, just stop rakudo development so that there's nothing to bisect xD | |||||||||||||||||||||||||||||||||||||||
MasterDuke | that's not too bad at all | 17:04 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | I'm not sure… | ||||||||||||||||||||||||||||||||||||||
the ecosystem is growing, so I wouldn't be surprised if we somewhat soon get like 10x the modules we have now | |||||||||||||||||||||||||||||||||||||||
that'd mean you either wait more than 10 hours or you create a machine with 240 cores xD | 17:05 | ||||||||||||||||||||||||||||||||||||||
although… if you make zef faster, then it can get much faster | 17:06 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | or just divide the list and run on 10 machines? | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | yes | ||||||||||||||||||||||||||||||||||||||
what's the progress on getting JSON::Fast into rakudo, btw? | |||||||||||||||||||||||||||||||||||||||
or, more precisely, replacing the built-in internal parser with code from JSON::Fast | |||||||||||||||||||||||||||||||||||||||
though currently we only get around 300 new modules per year or so? | 17:08 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | iirc, the internal one and JSON::Fast aren't 100% compatible | 17:09 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | yeah, I think a lot of json libs are not very compatible | 17:10 | |||||||||||||||||||||||||||||||||||||
but does that incompatibility affect us in any way? | |||||||||||||||||||||||||||||||||||||||
MasterDuke | don't remember exactly, but i think the reason for not using JSON::Fast in zef was because it could lead to problems | 17:12 | |||||||||||||||||||||||||||||||||||||
but i don't know why rakudo's internals couldn't be replaced by JSON::Fast | 17:13 | ||||||||||||||||||||||||||||||||||||||
maybe someone could try that, do a Blin run, and see if anything can't be installed | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | mmm I don't think this is going to show anything | 17:14 | |||||||||||||||||||||||||||||||||||||
MasterDuke | if everything is fine, then just use that going forward (and zef will get that change automatically, because i think it uses the internal parser) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | Blin starts from scratch and attempts to install thing on HEAD first | ||||||||||||||||||||||||||||||||||||||
it won't even try the --old version if something installs fine on HEAD | 17:15 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | AlexDaniel: i don't see the problem? | 17:19 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | MasterDuke: maybe I don't understand how that's going to help… but you can change the internal rakudo to-json/from-json routines to produce xml instead of json and Blin won't notice :) | 17:21 | |||||||||||||||||||||||||||||||||||||
or not? | |||||||||||||||||||||||||||||||||||||||
ahhhh, wait now I remember | |||||||||||||||||||||||||||||||||||||||
zef is using from-json to parse the huge list of modules, right? That's what we were trying to speed up? | 17:22 | ||||||||||||||||||||||||||||||||||||||
but then you can just test that the list of modules is parsed correctly | |||||||||||||||||||||||||||||||||||||||
MasterDuke | yeah. i don't remember if it's one big blob of json, or lots of small blobs though | 17:23 | |||||||||||||||||||||||||||||||||||||
hm, maybe for that part. but zef also has to parse the META6.json, and i think that's where there are worries about incompatibility | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | mmm | ||||||||||||||||||||||||||||||||||||||
right | |||||||||||||||||||||||||||||||||||||||
well, I'm not too worried. Who's going to put combiners at the start of the strings in META6.json | 17:24 | ||||||||||||||||||||||||||||||||||||||
or what the other edge cases are | |||||||||||||||||||||||||||||||||||||||
IIRC there was a consensus that the code of the rakudo json parser can be replaced, and there was someone working on it | 17:25 | ||||||||||||||||||||||||||||||||||||||
except that it never happened in the end | |||||||||||||||||||||||||||||||||||||||
MasterDuke | timotimo? don't know who else it would be | 17:27 | |||||||||||||||||||||||||||||||||||||
timotimo | i didn't work on it | 17:28 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | o there's a ticket github.com/rakudo/rakudo/issues/2311 | 17:37 | |||||||||||||||||||||||||||||||||||||
looks like nobody was working on it… | 17:40 | ||||||||||||||||||||||||||||||||||||||
17:40
Kaiepi left
|
|||||||||||||||||||||||||||||||||||||||
timotimo | and it got forgot | 17:41 | |||||||||||||||||||||||||||||||||||||
MasterDuke | m: my @a = ("a".."k").pick(*) xx 100; my $b; for @a -> $a { $b = $a.starts-with("b" | "j") }; say so $b # what am i doing wrong here? | 17:42 | |||||||||||||||||||||||||||||||||||||
camelia | Type check failed for return value; expected Bool:D but got Junction (any(Bool::False, Bool...) in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | oooh… | 17:45 | |||||||||||||||||||||||||||||||||||||
c: 2018.12 my @a = ("a".."k").pick(*) xx 100; my $b; for @a -> $a { $b = $a.starts-with("b" | "j") } | |||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦2018.12: «» | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: HEAD my @a = ("a".."k").pick(*) xx 100; my $b; for @a -> $a { $b = $a.starts-with("b" | "j") } | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦HEAD(616b757): «Type check failed for return value; expected Bool:D but got Junction (any(Bool::False, Bool...) in block <unit> at /tmp/2fxq5B351T line 1 «exit code = 1»» | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | MasterDuke: I don't think you're doing anything wrong | ||||||||||||||||||||||||||||||||||||||
bisect: old=2018.12 my @a = ("a".."k").pick(*) xx 100; my $b; for @a -> $a { $b = $a.starts-with("b" | "j") } | |||||||||||||||||||||||||||||||||||||||
timotimo | i'd expect the return value of the loop body has to be an Any | ||||||||||||||||||||||||||||||||||||||
bisectable6_ | AlexDaniel, Bisecting by exit code (old=2018.12 new=616b757). Old exit code: 0 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel, bisect log: gist.github.com/53c4d742899c8d64d6...66b223f632 | |||||||||||||||||||||||||||||||||||||||
AlexDaniel, (2018-12-28) github.com/rakudo/rakudo/commit/2c...7d8fcbebc6 | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | yeah | 17:46 | |||||||||||||||||||||||||||||||||||||
that's what I was looking for | |||||||||||||||||||||||||||||||||||||||
timotimo | oh, huh | ||||||||||||||||||||||||||||||||||||||
the starts-with sub takes a capture, so the autothread the junctions part doesn't trigger there, right | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | m: say ‘foo’.starts-with(‘a’ | ‘b’) | 17:47 | |||||||||||||||||||||||||||||||||||||
camelia | any(False, False) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | but why does that work? | ||||||||||||||||||||||||||||||||||||||
m: say <foo bar>.starts-with(‘a’ | ‘b’) | |||||||||||||||||||||||||||||||||||||||
camelia | Type check failed for return value; expected Bool:D but got Junction (any(Bool::False, Bool...) in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | ahhh I see, only on Cool | ||||||||||||||||||||||||||||||||||||||
timotimo | m: my @a = ("a".."k").pick(*) xx 100; my $b; for @a -> $a --> Mu { $b = $a.starts-with("b" | "j") }; say so $b | ||||||||||||||||||||||||||||||||||||||
camelia | Type check failed for return value; expected Bool:D but got Junction (any(Bool::False, Bool...) in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | MasterDuke: yeah btw you're calling .starts-with on a list | ||||||||||||||||||||||||||||||||||||||
MasterDuke | ah, right. AlexDaniel++ | 17:48 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | I'm pretty sure that needs to be reverted | ||||||||||||||||||||||||||||||||||||||
MasterDuke: can you file a ticket? | |||||||||||||||||||||||||||||||||||||||
maybe not fully, but for anything that can potentially take a Junction as an argument | 17:49 | ||||||||||||||||||||||||||||||||||||||
m: <foo %s bar>.printf(‘abc’ | ‘bca’) | 17:54 | ||||||||||||||||||||||||||||||||||||||
camelia | This representation (Null) does not support elems (for type VMNull) in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
AlexDaniel | interesting | ||||||||||||||||||||||||||||||||||||||
c: 2018.12 <foo %s bar>.printf(‘abc’ | ‘bca’) | |||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦2018.12: «This representation (Null) does not support elems (for type VMNull) in block <unit> at /tmp/uU1_VVBdCG line 1 «exit code = 1»» | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: all <foo %s bar>.printf('abc' | 'bca') | ||||||||||||||||||||||||||||||||||||||
probably never worked | |||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/66f6be2225f8e8cf10...6b0b45ef8a | 17:55 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | somehow only these are affected: starts-with ends-with substr-eq contains | ||||||||||||||||||||||||||||||||||||||
MasterDuke | btw, the reason i was trying the above code, github.com/ugexe/zef/blob/master/l...m6#L50-L93 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | hah… huh… | ||||||||||||||||||||||||||||||||||||||
it's interesting that we didn't catch it earlier | 17:56 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | i'm not sure this profile (of `zef info zef`) can be trusted (the numbers are insane), but it's pointing out those as some of thing at the top by exclusive time | 17:58 | |||||||||||||||||||||||||||||||||||||
18:01
lucasb left
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | benchable6: compare HEAD my @a = ("a".."k").pick(*).join xx 50000; my $b; for @a -> $a { $b = $a.starts-with("b" | "j") }; ||| my @a = ("a".."k").pick(*).join xx 100000; my $b; for @a -> $a { $b = ($a.starts-with("b") || $a.starts-with("j")) }; | 18:05 | |||||||||||||||||||||||||||||||||||||
benchable6 | MasterDuke, starting to benchmark the 1 given commit | ||||||||||||||||||||||||||||||||||||||
MasterDuke, ¦HEAD: «Benchmark: «timed out after 25 seconds»» | |||||||||||||||||||||||||||||||||||||||
MasterDuke | benchable6: compare HEAD my @a = ("a".."k").pick(*).join xx 50000; my $b; for @a -> $a { $b = $a.starts-with("b" | "j") }; ||| my @a = ("a".."k").pick(*).join xx 50000; my $b; for @a -> $a { $b = ($a.starts-with("b") || $a.starts-with("j")) }; | 18:06 | |||||||||||||||||||||||||||||||||||||
benchable6 | MasterDuke, starting to benchmark the 1 given commit | ||||||||||||||||||||||||||||||||||||||
MasterDuke, ¦HEAD: «Benchmark: «timed out after 25 seconds»» | |||||||||||||||||||||||||||||||||||||||
MasterDuke | benchable6: compare HEAD my @a = ("a".."k").pick(*).join xx 10000; my $b; for @a -> $a { $b = $a.starts-with("b" | "j") }; ||| my @a = ("a".."k").pick(*).join xx 10000; my $b; for @a -> $a { $b = ($a.starts-with("b") || $a.starts-with("j")) }; | ||||||||||||||||||||||||||||||||||||||
benchable6 | MasterDuke, starting to benchmark the 1 given commit | ||||||||||||||||||||||||||||||||||||||
MasterDuke, gist.github.com/7235651a82ff79fd2d...026fccfdf1 | 18:07 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | MasterDuke: so, ticket? | 18:44 | |||||||||||||||||||||||||||||||||||||
thanks | 18:48 | ||||||||||||||||||||||||||||||||||||||
19:50
Kaiepi joined
21:24
dct joined
21:29
Kaiepi left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: b27a7381ac | (Nick Logan)++ (committed using GitHub Web editor) | .circleci/config.yml Add CircleCI config |
21:37 | |||||||||||||||||||||||||||||||||||||
roast/6.c-errata: 1af03334be | (Elizabeth Mattijsen)++ (committed by Aleks-Daniel Jakimenko-Aleksejev) | S15-unicode-information/unival.t Make unival tests less picky about how they die |
21:54 | ||||||||||||||||||||||||||||||||||||||
roast/6.d-errata: 94c9b40b48 | (Elizabeth Mattijsen)++ (committed by Aleks-Daniel Jakimenko-Aleksejev) | S02-types/WHICH.t Remove mention of ForeignCode As discussed in github.com/rakudo/rakudo/issues/2575 |
21:55 | ||||||||||||||||||||||||||||||||||||||
roast/6.d-errata: f3dee0dc6c | (Elizabeth Mattijsen)++ (committed by Aleks-Daniel Jakimenko-Aleksejev) | S02-types/instants-and-durations.t Make test for Instant + Instant less picky In light of github.com/rakudo/rakudo/commit/e48712a30a |
|||||||||||||||||||||||||||||||||||||||
roast/6.d-errata: f6ff2a7788 | (Elizabeth Mattijsen)++ (committed by Aleks-Daniel Jakimenko-Aleksejev) | S15-unicode-information/unival.t Make unival tests less picky about how they die |
|||||||||||||||||||||||||||||||||||||||
roast/6.d-errata: 94c9b40b48 | (Elizabeth Mattijsen)++ (committed by Aleks-Daniel Jakimenko-Aleksejev) | S02-types/WHICH.t Remove mention of ForeignCode As discussed in github.com/rakudo/rakudo/issues/2575 |
|||||||||||||||||||||||||||||||||||||||
roast/6.d-errata: f3dee0dc6c | (Elizabeth Mattijsen)++ (committed by Aleks-Daniel Jakimenko-Aleksejev) | S02-types/instants-and-durations.t Make test for Instant + Instant less picky In light of github.com/rakudo/rakudo/commit/e48712a30a |
|||||||||||||||||||||||||||||||||||||||
roast/6.d-errata: f6ff2a7788 | (Elizabeth Mattijsen)++ (committed by Aleks-Daniel Jakimenko-Aleksejev) | S15-unicode-information/unival.t Make unival tests less picky about how they die |
|||||||||||||||||||||||||||||||||||||||
rakudo: 176127fe44 | (Nick Logan)++ (committed using GitHub Web editor) | README.md Add CircleCI badge |
22:04 | ||||||||||||||||||||||||||||||||||||||
22:13
robertle left
|
|||||||||||||||||||||||||||||||||||||||
Geth | roast/6.c-errata: 894dee8d4d | (Aleks-Daniel Jakimenko-Aleksejev)++ | S11-repository/curli-install.t Test installation with proper Distribution usage This change was adapted from b82233a6973ad18d7b74a2fdd0ae8789a1977a76 (@ugexe++). “The intent of this test is installing a Distribution, and the fact it used a class called Distribution to do it should be irrelevant. This instead installs something that *does* Distribution.” |
23:25 | |||||||||||||||||||||||||||||||||||||
23:40
Kaiepi joined
|