| [Coke] | NEW=59eafee5f3 - clear except for Injector | 00:40 | |
| c: 501af82c50 e | 00:57 | ||
| committable6 | [Coke], ¦501af82: «» | ||
| japhb | I get this trying to `zef install App::Prove6`: Serialization Error: missing static code ref for closure '' (src/Raku/ast/signature.rakumod:1312) | 01:36 | |
| Because it has several dependencies, I'm not sure which one is actually making it fail. Trying to read the tea leaves, it *might* be sigpipe (sigpipe:ver<0.0.3>:auth<zef:leont>) but I'm not positive. | 01:37 | ||
| (This came from the rubble after a build-everything run.) | 01:38 | ||
|
01:53
lizmat left
|
|||
| Geth | rakudo: ugexe++ created pull request #6799: RakuAST: recognize types from the outer context in term position |
03:06 | |
| rakudo/main: ed2d96829a | (Nick Logan)++ (committed using GitHub Web editor) | 7 files RakuAST: recognize types from the outer context in term position (#6799) Previously a type declared outside an EVAL, or on an earlier REPL line, was not recognized as a type by `is-name-type`. A lexical from that outer context resolves to a `RakuAST::Declaration::External`, which is not a `RakuAST::CompileTimeValue`. As such `A[Str]` parsed as a postcircumfix on `A`, `C(Int)` as a call to an undeclared routine, and `C:D` silently ... (15 more lines) |
03:57 | ||
| rakudo: ugexe++ created pull request #6800: Ugexe/rakuast eval begin outer context |
04:00 | ||
|
07:36
lizmat_ left
07:37
lizmat joined
08:45
rnddim joined
08:46
rnddim left,
ShimmerFairy left,
rnddim joined
08:49
rnddim left
08:50
rnddim joined,
rnddim left
08:51
rnddim joined
|
|||
| Geth | rakudo/main: d3c07b2578 | (Elizabeth Mattijsen)++ | 2 files RakuAST: tweak ::Type::Capture.from-identifier interface Decided to only have positional arguments to .from-identifier methods. They are for convenience, so should be simple. So the :smiley optional named argument has become an optional second positional argument. Since this API was introduced yesterday, it felt safe to do this change now. |
09:30 | |
|
09:52
rnddim is now known as ShimmerFairy
|
|||
| Geth | rakudo/main: 0a83ba536e | (Elizabeth Mattijsen)++ | 2 files RakuAST: in NQP, my @a := nqp::list is unnecessary Because a lexical array definition already allocates an nqp::list. So remove this essentially dead code. |
11:37 | |
| lizmat | notable6: weekly | 12:20 | |
| notable6 | lizmat, 3 notes: gist.github.com/b6ca5a6da7d2c3c61b...b7e4707eb0 | ||
| lizmat | notable6: weekly reset | 12:21 | |
| notable6 | lizmat, Moved existing notes to “weekly_2026-10-05T12:21:03Z” | ||
| [Coke] | huh. 49 bisect fails on last blin run to 40fca14d2657846c9bec388f8101bc04f99657f2 - doing a redo run... | 13:17 | |
| linkable6 | (2026-10-03) github.com/rakudo/rakudo/commit/40fca14d26 RakuAST: declare thunked code by the block it closes over | ||
|
13:24
japhb left
|
|||
| [Coke] | (Weird, we haven't had this many false negatives in a while) | 13:30 | |
| Need to make a module that when testing, dies once, then works on subsequent tests. | 13:31 | ||
|
13:32
Guest19 joined
|
|||
| Guest19 | Hello. Will a precompiled rakudo with the fix for the "constant MAIN" ticket be made available before the next monthly release? | 13:34 | |
| lizmat | Guest19: I doubt it. The workaround would be to just replace the "constant" by "my", which afaics should not make running the script noticeable slower | 13:35 | |
| Guest19 | Okay. In general, what is the policy for making precompiled installs available before monthly releases? | 13:36 | |
| lizmat | afaik it's never happened before | ||
| Guest19 | Ah, okay - noted. Thank you. | ||
| lizmat | if there is a really big problem, then a point release would happen | ||
| and that would become available in precompiled installs | 13:37 | ||
| your problem wasn't caught in spectest, or in the ecosystem, and you were the only one reporting | |||
| so it feels not urgent enough, I'm afraid | |||
| Guest19 | Understood | 13:38 | |
| lizmat | The first Raku Weekly News hits the Net: rakuweekly.blog/2026/10/05/2026-40-pythonesque/ | 13:49 | |
| ugexe | hmm yeah thats a lot of failures. we should refrain from refactoring / modifying any of the code from those commits until we figure out what the failures are from. otherwise its going to be difficult to revert them should the need arise | 13:55 | |
| lizmat | ugexe: understood, expect to be making PRs again :-) | 13:57 | |
| ugexe | it seems like github.com/rakudo/rakudo/pull/6800 might be exposing a JIT issue since it builds fine locally but all the variants fail CI | 14:01 | |
| lizmat | but the Mac version also failed, and that runs on Apple silicon, does it not? | ||
| ah, it fails in building rakudo ?? | 14:02 | ||
| Frame has no lexical with name '&INDIRECT_NAME_LOOKUP' at src/Raku/ast/resolver.rakumod:637 | 14:03 | ||
| ugexe | ah right, im pretty sure the CI would have switched off x86 apple awhile ago | 14:09 | |
| [Coke] | redo run is 87.44% done, only 7 failures at 40fca now | 14:20 | |
| (lots of locking going on as we're doing a lot of bisecting, apparently) | 14:21 | ||
| ah, that number is creeping back up. :( | 14:39 | ||
| back up to 19, with 19 left to test. | 14:41 | ||
|
14:47
Guest19 left
15:09
japhb joined
|
|||
| [Coke] | git@github.com:coke/raku-blin-release-results.git updated - injector + 38 failures on 40fca14d | 15:25 | |
| ugexe | for injector i have a local branch that implements type constraints on shaped hashes, but i haven't had time to finish reviewing it. and i probably wont have time to review it before looking at all these new failures. just mentioning to make it clear Injector isn't being ignored | 15:43 | |
| [Coke] | Thanks, no worries. | 15:46 | |
| I just keep calling it out so you didn't think *I* forgot it was already reported. :) | |||
| many Serialization Error: missing static code ref for closure '' | 15:51 | ||
| ugexe | yeah every subset ... where <expression> leaks AST into the precomp via Nil but Suggestion[$node] | 15:52 | |
| which reminds me... we need the "Did you mean" message to not mention IMPL- methods | |||
| [Coke] | mmm | 15:59 | |
| lizmat | ugexe: maybe that should be more general as in having them marked implementation-detail | 16:00 | |
| [Coke] | Ping me when it makes sense to do another blin | 16:12 | |
| lizmat | wrt implementation detail: I've come to the conclusion that either RakuAST typegraphs will need to be made by hand, or many classes / roles will need to be marked "implementation-detail" | 16:13 | |
| Geth | rakudo: ugexe++ created pull request #6801: RakuAST: don't call Mu.WHY on the where expression of a subset |
17:09 | |
| ugexe | oh our macOS CI job is x86 | 17:18 | |
| lizmat | ok, that would explain the failure there then :-) | ||
| ugexe | we should probably change that to arm64 at this point, but yeah seems like it hits a JIT issue | ||
| lizmat | I just found a very weird anomaly in NQP performance | 17:43 | |
| % time nqp -e 'my int $i := 100000000; my str $a := "e"; while --$i { my int $b := $a eq "a" }' | |||
| real0.29s | |||
| % time nqp -e 'my int $i := 100000000; my str $a := "e"; while --$i { my int $b := $a eq "a" || $a eq "b" }' | |||
| real1.54s | |||
| so the addition of: || $a eq "b" makes this 5x as slow ? | 17:44 | ||
| % time nqp -e 'my int $i := 100000000; my str $a := "e"; while --$i { my int $b := $a eq "a" || $a eq "b" || $a eq "c" }' | |||
| real2.11s | |||
| compare this to a lookup hash with 2 elements: | 17:46 | ||
| % time nqp -e 'my constant A := nqp::hash("a",1,"b",1); my int $i := 100000000; my str $a := "e"; while --$i { my int $b := nqp::existskey(A,$a) } | |||
| real0.30s | |||
| ugexe | i mean if you look at them from an optimization view point its kind of obvious | 17:47 | |
| $b is never used | 17:48 | ||
| lizmat | I get the same numbers if I move "my int $b" out of the while loop | 17:50 | |
| ugexe | ➜ ~ time nqp -e 'my int $i := 100000000; my str $a := "e"; my int $c := 0; while --$i { my int $b := $a eq "a"; $c := $c + $b }; nqp::say($c)' | ||
| 0 | |||
| nqp -e 1.10s user 0.01s system 100% cpu 1.104 total | |||
| ➜ ~ time nqp -e 'my int $i := 100000000; my str $a := "e"; my int $c := 0; while --$i { my int $b := $a eq "a" || $a eq "b"; $c := $c + $b }; nqp::say($c)' | |||
| 0 | |||
| nqp -e 2.01s user 0.02s system 100% cpu 2.022 total | |||
| linear | |||
| lizmat | ah, indeed | 17:51 | |
| TIL :-) | 17:52 | ||
| ok, with some more benchmarks, it looks like even a simple $a eq "a" || $a eq "b" would benefit from a lookup hash | 17:55 | ||
| if there's an unlikely hit | 17:56 | ||
| ugexe | but doesnt that just make the unlikely hit faster and slow down the likely hit? | 17:57 | |
| [Coke]: just merged the fix for most (all?) the blin failures | 17:58 | ||
| lizmat | didn't see Geth say anything here? | 17:59 | |
| Geth | rakudo/main: 88626a34b8 | (Nick Logan)++ (committed using GitHub Web editor) | 4 files RakuAST: don't call Mu.WHY on the where expression of a subset (#6801) Previously the check for a leading doc on the where block of a subset, added in 9c75134daa, called `.WHY` on any where. `nqp::can` finds a `WHY` on every node since `Mu` has one, so a where that is an expression rather than a block got `Mu.WHY`, which returns `Nil but Suggestion[$node]`. Parameterizing that role runs its body, and ... (14 more lines) |
||
| lizmat | ok, Github flubbed that one | 18:00 | |
|
18:01
ugexe left
18:04
ugexe joined
|
|||
| [Coke] | c: 88626a34b8 e | 18:47 | |
| committable6 | [Coke], ¦88626a3: «» | ||
| [Coke] | kicking off a run | 18:48 | |
|
20:07
hurufu joined
21:02
rnddim joined,
notable6__ joined
21:04
lucs_ joined
21:05
jdv_ joined
21:07
camelia left,
notable6 left,
ShimmerFairy left,
lucs left,
jdv left
21:22
camelia joined
21:38
hurufu left
|
|||
| [Coke] | aff385f36fd229a | 22:09 | |
| linkable6 | (2026-10-02) github.com/rakudo/rakudo/commit/aff385f36f RakuAST: some fixes / streamlining in ::Name | ||
| [Coke] | DateTime::React – Fail, Bisected: aff385f36fd229a0078b46c5d3bdc06062bdd902 | 22:10 | |
| (still mid run) | |||
| Geth | rakudo: ugexe++ created pull request #6802: Implement multidimensional shaped hashes |
22:21 | |
| [Coke] | do our current core devs agree with niner's thoughts on github.com/rakudo/rakudo/pull/5869? (that we would rather do more at the HLL and improve optimisations?) | 22:57 | |