3 Oct 2026
lizmat yeah, push branches, we'll see when it breaks :-) 11:20
still plenty of time before release :-)
ShimmerFairy That's the good part about deciding to not rush it :) 11:22
Geth rakudo/main: d985b8974d | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | 5 files
RakuAST: add ::Name.from-identifier-list (#6789)

This is now the actuall workhorse of from-identifier-parts. It allows specification with a list. This is a significant performance improvement when slipping and slurping aren't needed.
Adjust internal calls where this would make sense.
12:04
rakudo/lizmat-52: 7704bc5c2e | (Elizabeth Mattijsen)++ | 4 files
RakuAST: use nqp::ifnull where possible

In a lot of cases, a rather elaborate structure was built to provide a value if the given value was nqp::null. Exactly for that purpose, nqp::ifnull was created. So use that instead, resulting in fewer variables and smaller bytecode footprint.
Appears to take off about .2 seconds on stage qast when building the core setting (for yours truly).
12:59
rakudo: lizmat++ created pull request #6790:
RakuAST: use nqp::ifnull where possible
rakudo/lizmat-53: 34a7d51698 | (Elizabeth Mattijsen)++ | 10 files
RakuAST: normalize "while !x" and "if !x" structures

Using "until" or "unless" as appropriate, or re-arrange the reverse the if/else structure, sometimes allowing for a scope level to be lost
13:42
rakudo: lizmat++ created pull request #6791:
RakuAST: normalize "while !x" and "if !x" structures
ShimmerFairy Y'know, realizing that the CI is gonna break regardless, I'm thinking I should just share the rest of my changes now, esp. since I don't want to leave things partially shared for too long. 14:21
Geth nqp/unicode-18.0: 011158ddac | Faye++ | t/nqp/106-unicodenames.t
Add tests for Jurchen and Small Seal scripts.

These tests ensure their Unicode names are properly generated by the backend.
14:33
nqp: ShimmerFairy++ created pull request #879:
Unicode 18.0 update
14:35
rakudo: ShimmerFairy++ created pull request #6792:
Update for Unicode 18.0
14:41
roast/unicode-18.0: 3b29e673c4 | Faye++ | 66 files
Update generated tests for Unicode 18.0.0
14:46
roast/unicode-18.0: 23450635d3 | Faye++ | S32-str/utf8-c8.t
Add tests for UTF-C8 synthetics in grapheme construction.

Inspired by a bug in MoarVM, these tests ensure that UTF-C8 synthetics get handled appropriately as Raku creates NFG strings. In particular, they should be treated as if they were ordinary control characters, meaning they always exist as 1-"codepoint" graphemes, never merging with any other codepoints into larger grapheme clusters. ... (10 more lines)
roast/unicode-18.0: d67e6fdee7 | Faye++ | 6 files
Update collation tests for bugfixes.

With some bugfixes to MoarVM's collation handling, the collation tests need to be regenerated, since the test generator is sensitive to the correctness of the very thing being tested.
roast: ShimmerFairy++ created pull request #923:
Update for Unicode 18.0
14:49
ShimmerFairy That's all the repos then. I haven't touched any of the ChangeLogs or FOO_REVISION files, for the record. 14:51
ugexe we can run Blin against a branch 14:52
lizmat: return could work for more than just Bool. things are they way they are right now because they have to be written that way, not because it is some gold standard 14:54
im also worried about people thinking they can make (what they think are) inconspicuous changes and ending up breaking either the constraint contracts or optimizations 14:56
that being said i've got like a bajillion thunk issues i've been trying to work through so no idea if i'll even get around to adding that return functionality 15:01
the thunk stuff for rakuast is exponentially more difficult to get right than legacy because legacy thunks are real blocks made at parse time so closures get the right outer for free, while rakuast thunks hang off expressions and every walk (thunks, phasers, regexes, roles, BEGIN time, etc, etc) has to independently agree on where each block gets declared 15:03
and every edge case fixed opens another
and that all gets further complicated by the various optimizations so everything has to be tested and considered with and without optimizations 15:05
m: role R { method m { 42 andthen 1 + 2 } }; say "compiled"; # one example
camelia compiled
ugexe c: role R { method m { 42 andthen 1 + 2 } }; say "compiled"
committable6 ugexe, ¦role: «Cannot find this revision (did you mean “coke”?)»
ugexe raku -e 'role R { method m { 42 andthen 1 + 2 } }; say "compiled"' 15:06
===SORRY!===
QAST::Block with cuid 3 referenced from '<dependencies+deserialize>' has not appeared in -e
ShimmerFairy I'll be heading off to bed now, hope the Unicode upgrade doesn't give people too much grief. o/ 15:17
ugexe hmmm, it looks like there is going to conflicts on the branch i've been working on too :( 15:24
these large resturcturings are going to make it difficult for me to fix these larger problems that have to touch many parts of the code base 15:26
i think it would be preferable to focus on fixing issues right now 15:27
i guess its inevitable and i'm just getting frustrated with this thunk stuff :/ 15:36