releasable6 Next release in ≈1 day and ≈15 hours. There are no known blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft 03:00
timo oh, is this actually also a fix for the ndarray atpos spesh bug i diagnosed the other day? github.com/rakudo/rakudo/commit/a8745fe8 03:51
or i guess not since this commit is 2 months old?
06:10 [Coke] left 07:06 sena_kun joined 07:17 sena_kun left 08:08 [Coke] joined 08:51 finanalyst joined
lizmat m: class A { }; proto sub postcircumfix:<[; ]>(|) {*}; multi sub postcircumfix:<[; ]>(A:D, @a) { dd }; multi sub postcircumfix:<[; ]>(|c) { dd }; (A.new)[0;0] 09:46
camelia sub postcircumfix:<[; ]>(A:D, @a)
lizmat aha!
ab5tract There we go :) 10:01
10:04 finanalyst left 11:14 sena_kun joined 11:43 sena_kun left
lizmat so I'm working on a utility module META::varauthapi that will set the ^ver, ^auth, ^api of all classes provided by a distribution, using the info in the META6.json (aka $?DISTRIBUTION) 12:30
basically: add "use META::verauthapi $?DISTRIBUTION" and your classes will be in sync with the META info 12:31
problem is: I cannot seem to be able to map what is in META<provides>.keys to the actual classes 12:33
even passing UNIT:: as an additional argument in the use statement, doesn't work as UNIT:: does not appear to be populated at compile time 12:34
m: my class A { }; BEGIN dd UNIT::.keys; dd UNIT::.keys
camelia ().Seq
("\$?PACKAGE", "::?PACKAGE", "\$=pod", "\$=finish", "\$?LANGUAGE-REVISION", "\$/", "GLOBALish", "!UNIT_MARKER", "EXPORT", "\$¢", "A", "\$!", "\$_").Seq
lizmat nine ab5tract ideas ? 12:35
vrurg_ maybe?
vrurg_ I could only tell that I was trying to get this done on the compiler side not without a reason. 13:29
jdv blin finally finished. took longer than usual. 13:30
lizmat vrurg_ , yes, and I hope we will get there with RakuAST... but I want it now :-) 13:31
jdv looks like there is some fallout. i'll get it posted in a bit once i get it cleaned up
lizmat jdv++
vrurg_ lizmat: Do you want it for private classes too? Because I'd stick to what can be found in the META. 13:33
lizmat yes, that was the plan
although for now you can specify the classes as additional arguments 13:34
raku.land/zef:lizmat/META::verauthapi fwiw :-)
jdv github.com/rakudo/rakudo/issues/5648 is blin 14:01
ab5tract: one might be yours in there ^
lizmat: the rest might be yours ?
ab5tract jdv: ah, that appears to be an error in the test corpus 14:03
it's expecting 35 lines but I added another one to the preamble
lizmat bisectable6: my %h = a => 1, b => 2; dd %h{all(<a b>)}:exists 14:08
bisectable6 lizmat, Will bisect the whole range automagically because no endpoints were provided, hang tight
lizmat, Output on all releases: gist.github.com/576db79d2743283014...0359315acc 14:09
lizmat, Bisecting by output (old=2024.08 new=0b6c7dc) because on both starting points the exit code is 0
lizmat, bisect log: gist.github.com/6801879cda47ce6f91...3782ca8e34
lizmat, (2024-09-08) github.com/rakudo/rakudo/commit/dd...d52b101319
lizmat, Bisecting by exit code (old=2016.02 new=2016.03). Old exit code: 1
lizmat, bisect log: gist.github.com/f9474615db3d828964...32d2b50f57
lizmat, (2016-03-04) github.com/rakudo/rakudo/commit/25...d49404c588
lizmat, ⚠ New output detected, please review the results manually
lizmat, Output on all releases and bisected commits: gist.github.com/305a8f3a1100b393c0...f055862bea
14:13 sena_kun joined
Geth rakudo/main: 3ca83dc138 | (Elizabeth Mattijsen)++ | src/core.c/hash_slice.rakumod
Make sure we have a Bool to check against with :exists

d66162a4095ea0afbd0 introduced a short-cut that would make {}:exists always return false if the key was a Junction. Fix this by making sure we have a Bool:D to compare against (which should be optimized away pretty quickly if we already had a Bool:D).
The alternative would have been to either revert these optimizations, or to create almost identical candidates handling Junctions specifically. That felt like a not very DRY approach, so instead have a little larger bytecode footprint for the fast path.
14:35
lizmat jdv ^^ 14:36
jdv ab5tract the other failure is because $?LANGUAGE-REVISION => 2 has been added to a scope, which alters the number of elements tested for 14:42
so it is a flaky test
jdv cool, we're back on track for tomorrow's release then
lizmat flaky well, fragile
jdv yup
i added an issue to that repo 14:43
thanks all
timo m: class Wibble { method Bool() { Backtrace.new.Str.say; True } }; my %foo; say %foo<hello>:delete:exists(Wibble.new); 16:21
camelia in method Bool at <tmp> line 1
in block <unit> at <tmp> line 1

False
timo is this funny? i'm not sure if this is funny
m: class Wibble { method Bool() { Backtrace.new.full.say; True } }; my %foo; say %foo<hello>:delete:exists(Wibble.new); # this is what i wanted to look at 16:28
camelia in method new at SETTING::src/core.c/Backtrace.rakumod line 99
in method Bool at <tmp> line 1
in any at src/vm/moar/dispatchers.nqp line 4390
in sub postcircumfix:<{ }> at SETTING::src/core.c/hash_slice.rakumod line 49
in block <uni…
timo jdv: the Data::Dump::Tree output has "please contact the author [...] deprecated code [...]" but what exactly was deprecated isn't in the part that's posted. anything important? or just PERL6LIB? 16:32
jdv that's not why it failed its test suite 16:35
timo ok that's fair
jdv a lot of stuff still emits that:( 16:36
timo we are generating links to modules.raku.org in the blin output, which unfortunately currently just redirects directly to raku.land/ without trying to get you to the right dist, or even the search function
i'll ticket that in blin
jdv yeah. i meant to fix that but there didn't seem to be a 1:1 solution that was quick and easy
timo fair 16:37
jdv iirc raku.land requires more than just the dist name in a query
timo probably also the auth 16:38
jdv any only a few people read that report but it definitely should be fixed:)
[Coke] looks forward to working on blin tickets. :) 17:49
jdv nice. i hope to rebuild the docker image i use by eoy. i just don't have the time:( 18:00
i hope next month's run doesnt take 11h and oom my box again 18:01
[Coke] jdv++ 18:30
19:46 finanalyst joined 21:26 sena_kun left
ab5tract can we please move beyond the idea that `dd` is an implementation detail? 21:43
I will outright refuse to use an Raku implementation that decides its too fancy to support `dd`
of all the bonkers, used once in a million years by a mostly mad person things that a Raku implementation is required to support, the idea that `dd` is a theoretically useful afterthought ... frankly it comes off as disrespectful 21:45
jdv isn't .raku supposed to do "that" 21:47
iirc its because dd shows impl details but i don't remember enough to be useful 21:49
ab5tract m: dd Int; say Int.raku 21:50
camelia Int
Int
ab5tract even if all it is is a wrapper function that looks like: `dd ($arg) { say $arg.raku }` (which it isn't), it would still be a required element of a Raku implementation imo 21:52
but I'll take a deep breath and do some searches through #raku history to see what kinds of justifications have been wielded against it 21:53
timo i'm thinking it was just never proposed to become a part of the language 21:54
ab5tract what would such a proposal look like? spec tests?
because I'e
because I've added a few features to the language that still have spec tests pending :) 21:55
(not proud of that, but it is what it is)
timo we do what we can 21:57
ab5tract in terms of routines, methods, etc marked as implementation details, there is nothing that comes close to the usage count of `dd` for me
anyway, I'm going to add an explicit exception to the Comma inspection for implementation details, which is the only reason I've had this somewhat contained explosive reaction 21:58
timo i'm pushing the debian packages stuff a bit further to actually getting up-to-date packages into debian sid (one day before the next release, but oh well) 22:01
ab5tract timo: that's seriously cool 22:05
so many distros hang off the debian vetting process 22:06
or maybe a better way to say, so many distro installations hang off that process
jdv ab5tract: what's rrally buggin you? 22:21
*really
:) 22:22
ab5tract 0 < $bugging < Inf 22:23
:)
luckily we aren't pushing <= on the last part of the clause ;)
jdv ha 22:24
timo++
timo well, you can \+\+timo for now instead of timo\+\+ 22:27
ab5tract timo: I've been meaning to ask what happened to the other half of timotimo :) 22:28
timo i'm timo on github and libera, but i'm timotimo on salsa
difficult to say, really!
ab5tract I'm very pleased to have as much timo as we can get around here :) 22:29
timo hm, what's the limit on nickname length on here then? :P
ab5tract I don't know if I ever properly expressed my level of stoked-ness upon seeing your `$nick.subst(0, $nick.comb / 2)` resurface here on the regular :) 22:31
jdv i did albeit privately. i concur.
timo <3 22:33
22:39 finanalyst left
timo salsa is keeping me hanging :| 22:54
leaving me hanging* 22:55
jdv i like my salsa scorching, nothing less;) 22:57
releasable6 Next release in ≈19 hours. There are no known blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft 23:00
jdv pipe down there