| Geth | rakudo: ugexe++ created pull request #6634: Refuse a regex or branch made up of modifiers alone from 6.e |
00:54 | |||||||||||||||||||||||||||||||||||||
| [Coke] | github.com/coke/raku-blin-release-...ee/2026.09 - latest blin run through fdc7d63 | 01:09 | |||||||||||||||||||||||||||||||||||||
| I'll do a redo on the failing ones, just in case. | 01:14 | ||||||||||||||||||||||||||||||||||||||
| $ rak '[ ]' output-2026.09-2/failures.md | 01:16 | ||||||||||||||||||||||||||||||||||||||
| Segmentation fault (core dumped) rak '[ ]' output-2026.09-2/failures.md | |||||||||||||||||||||||||||||||||||||||
| rak 0.3.20, raku v2026.08. | 01:17 | ||||||||||||||||||||||||||||||||||||||
| Uni63 Sitemap Syndicate stayed failing | 02:08 | ||||||||||||||||||||||||||||||||||||||
| on d2e7633, 00ccf31, 00ccf31 | 02:12 | ||||||||||||||||||||||||||||||||||||||
| Geth | rakudo: ugexe++ created pull request #6635: Scope the language revision to the compilation unit |
02:39 | |||||||||||||||||||||||||||||||||||||
| nqp: ugexe++ created pull request #867: Give each repetition of a bounded quantifier its own NFA state |
03:15 | ||||||||||||||||||||||||||||||||||||||
| ugexe | 👀 | 03:23 | |||||||||||||||||||||||||||||||||||||
|
04:33
kurahaupo left
06:23
kjp left
06:27
kjp joined
06:31
finanalyst joined
|
|||||||||||||||||||||||||||||||||||||||
| lizmat | ugexe: nice set of raku PRs! | 07:42 | |||||||||||||||||||||||||||||||||||||
| s/raku/NQP | 07:43 | ||||||||||||||||||||||||||||||||||||||
| I will be mostly afk for the next week, so I won't be able to give much support | |||||||||||||||||||||||||||||||||||||||
| please make sure each NQP merge is combined with a separate NQP bump in Rakudo for bisectability | |||||||||||||||||||||||||||||||||||||||
|
07:55
lizmat left
08:27
kurahaupo joined
09:16
finanalyst left
|
|||||||||||||||||||||||||||||||||||||||
| [Tux] |
|
11:59 | |||||||||||||||||||||||||||||||||||||
| csv-test-xs 0.014 - 0.015 | |||||||||||||||||||||||||||||||||||||||
| tux.nl/Talks/CSV6/speed4-20.html / tux.nl/Talks/CSV6/speed4.html tux.nl/Talks/CSV6/speed.log | |||||||||||||||||||||||||||||||||||||||
| Sorry for missing timings. I did a too thorrough cleanup and removed things I should not have removed. Backups++ | 12:01 | ||||||||||||||||||||||||||||||||||||||
|
12:21
shareable6 left
12:23
shareable6 joined
|
|||||||||||||||||||||||||||||||||||||||
| Geth | rakudo: ugexe++ created pull request #6637: Keep a unit lexical container out of a dependent's serialization |
14:07 | |||||||||||||||||||||||||||||||||||||
| rakudo: ugexe++ created pull request #6638: Let make attach to a capture's own match in its code block |
|||||||||||||||||||||||||||||||||||||||
| ugexe | those two address the blin failures | 14:08 | |||||||||||||||||||||||||||||||||||||
| ab5tract | R#6638 description has some formatting funkiness | 15:03 | |||||||||||||||||||||||||||||||||||||
| linkable6 | R#6638 [open]: github.com/rakudo/rakudo/pull/6638 Let make attach to a capture's own match in its code block | ||||||||||||||||||||||||||||||||||||||
| ugexe | yeah i hate how various twigils mess up githubs formatting | 16:08 | |||||||||||||||||||||||||||||||||||||
| [Coke] | I fixed it already | 16:12 | |||||||||||||||||||||||||||||||||||||
| Geth | rakudo/main: 8bb5ba5a19 | (Nick Logan)++ (committed using GitHub Web editor) | 5 files RakuAST: Parse -M arguments as use statements (#6631) Previously a -M argument was split on :: into a bare module name, so adverbs such as -M'Foo:ver<1.*>:auth<x>' were looked up as a module named "Foo:ver<1.*>:auth<x>" and never found. A pragma given with -M was looked up as a module as well. ... (13 more lines) |
16:15 | |||||||||||||||||||||||||||||||||||||
| rakudo/main: 11 commits pushed by (Nick Logan)++ review: github.com/rakudo/rakudo/compare/8...3537869d27 |
16:20 | ||||||||||||||||||||||||||||||||||||||
| rakudo/main: a8c9e4d1ab | (Nick Logan)++ (committed using GitHub Web editor) | 5 files Refuse a regex or branch made up of modifiers alone from 6.e (#6634) Previously a branch of a regex alternation or conjunction made up of nothing but internal modifiers, such as the `:i` in `/ :i | foo | bar /`, compiled to an empty branch. That branch matches the empty string, so the regex matched every input. A regex or group holding only modifiers, such as `/ :i /`, matched the empty string the same way. ... (12 more lines) |
16:24 | ||||||||||||||||||||||||||||||||||||||
| rakudo/main: 6ec31943a4 | (Nick Logan)++ (committed using GitHub Web editor) | 21 files Scope the language revision to the compilation unit (#6635) Previously every compile-time check of the language revision read it from the compiler object, which holds a single value for the whole process. Any unit compiled in that process wrote to it: a `use v6.x` pragma, a module compiled in-process because it was not precompiled, or an EVAL. The legacy frontend reset it at the start of each unit, the ... (31 more lines) |
|||||||||||||||||||||||||||||||||||||||
| rakudo/main: 3815433cbf | (Nick Logan)++ (committed using GitHub Web editor) | 10 files Keep a unit lexical container out of a dependent's serialization (#6637) Previously a module that changed a unit lexical container while precompiling repossessed the container into its own serialization, since the container is declared static and the unit frame works on the serialized one itself. Loading that module then handed back the state its precompilation saw, so a registry filled by several modules ended ... (5 more lines) |
|||||||||||||||||||||||||||||||||||||||
| rakudo/main: 35f83b260d | (Nick Logan)++ (committed using GitHub Web editor) | 2 files Let make attach to a capture's own match in its code block (#6638) Previously make attached to the match of the cursor in the nearest enclosing regex frame. In a capture group's code block the legacy frontend resolves that cursor to the enclosing regex, while $/ is the capture's own match, so a make there landed on the enclosing match and the capture's made stayed empty. This attaches to the caller's $/ when it is a match of the parse the cursor belongs to, and falls back to the cursor's match when $/ has been overwritten by a match of another parse. |
|||||||||||||||||||||||||||||||||||||||
| nqp/main: f3c4afd604 | (Nick Logan)++ | 2 files Recompute block quantifier limits after a cursor restart A `** {code}` quantifier evaluates its limits when the regex reaches it and keeps them in frame registers. Backtracking into a subrule restarts its frame, which jumps straight to the pending mark without passing that code, so the landing saw a min and max of zero and accepted any repetition count. Previously `"burden" ~~ /(. ** {2})+ n/` matched with ... (10 more lines) |
16:26 | ||||||||||||||||||||||||||||||||||||||
| nqp/main: fb6f7ab328 | (Nick Logan)++ | 2 files Count the first repetition of a separated frugal block quantifier once The frugal branch of dynquant tested `min < 1` into the register that carries the repetition count across the atom. With a separator the entry path jumps past the store that resets that register, so the first repetition counted as two. Previously `"a,a" ~~ /^ (a **? {2} % ",") $/` failed to match and `**? {1..3} % ","` stopped one repetition short of its maximum. This tests the minimum in its own register. |
|||||||||||||||||||||||||||||||||||||||
| nqp/main: 502a904fb1 | (Nick Logan)++ (committed using GitHub Web editor) | 2 files Merge pull request #865 from ugexe/ugexe/dynquant-restart-limits Recompute block quantifier limits after a cursor restart |
|||||||||||||||||||||||||||||||||||||||
| nqp/main: a179809040 | (Nick Logan)++ (committed using GitHub Web editor) | 2 files Give each repetition of a bounded quantifier its own NFA state (#867) Previously the NFA builder for `x ** n..m` reused the caller's exit state as the landing state once the minimum count was reached, and built the next repetition from there. When the exit was a real state the remaining repetitions collapsed into self loops on it. When the exit was the fate state, which is how the last atom of a regex is ... (13 more lines) |
16:34 | ||||||||||||||||||||||||||||||||||||||
|
16:46
Pixi` is now known as Pixi
|
|||||||||||||||||||||||||||||||||||||||
| Geth | nqp/main: 3e6afa227e | (Nick Logan)++ (committed using GitHub Web editor) | 2 files Drop the cached match when backtracking trims captures (#866) A code block binds `$/` to the cursor's MATCH, which reifies the capture stack once and is then reused. Pushing a capture already discards that cache, but trimming captures on backtrack did not, so a later code block or assertion saw captures the regex had backtracked past. Previously `'abc' ~~ /(\w)+ <?{ $0.tail eq 'b' }>/` could never ... (6 more lines) |
17:14 | |||||||||||||||||||||||||||||||||||||
| rakudo: ugexe++ created pull request #6639: Various nqp bumps |
17:15 | ||||||||||||||||||||||||||||||||||||||
| rakudo/main: 4 commits pushed by (Nick Logan)++ | 18:21 | ||||||||||||||||||||||||||||||||||||||
| rakudo: ugexe++ created pull request #6640: Settle a channel's closed promise even when the marker is in flight |
18:53 | ||||||||||||||||||||||||||||||||||||||
|
19:17
finanalyst joined
|
|||||||||||||||||||||||||||||||||||||||
| Geth | nqp: ugexe++ created pull request #868: Flush the position before subrule arguments and limits blocks run |
20:48 | |||||||||||||||||||||||||||||||||||||
| [Coke] | ugexe: mini blin run at HEAD, verified those 3 issues fixed. | 21:16 | |||||||||||||||||||||||||||||||||||||
| doing another full run now to catch any nqp issues. | |||||||||||||||||||||||||||||||||||||||
| ugexe | 👍 | ||||||||||||||||||||||||||||||||||||||
|
21:23
lizmat joined
21:56
lizmat left
|
|||||||||||||||||||||||||||||||||||||||
| Geth | roast/ugexe/regex-zerowidth-groups: 2b4bca8439 | (Nick Logan)++ | S05-metasyntax/repeat.t Test block quantifier limits inside a capture A capture group runs in its own frame, and backtracking into it restarts that frame. Previously the restart skipped the code that evaluates a `** {code}` quantifier's limits, so `(\N ** {8})` backtracked one character at a time and could match fewer than eight characters. Fixes rakudo/rakudo#4309 |
23:14 | |||||||||||||||||||||||||||||||||||||
| linkable6 | RAKUDO#4309 [closed]: github.com/rakudo/rakudo/issues/4309 [regex] \N**{$foo} backtracks characters one by one | ||||||||||||||||||||||||||||||||||||||
| Geth | roast/ugexe/regex-zerowidth-groups: 276cfc518d | (Nick Logan)++ | S05-metasyntax/charset.t Test lookarounds over compound character classes Previously a lookahead over a character class that mixes backslash sequences with characters, or subtracts one class from another, consumed a character, and a negated one was not inverted at all. A plus sign in front of a negated backslash sequence subtracted instead of adding, and a lookahead over an empty enumeration always matched. This ... (5 more lines) |
||||||||||||||||||||||||||||||||||||||
| roast/ugexe/regex-zerowidth-groups: bd259e9b8d | (Nick Logan)++ | S05-metasyntax/charset.t Test lookarounds over compound character classes Previously a lookahead over a character class that mixes backslash sequences with characters, or subtracts one class from another, consumed a character, and a negated one was not inverted at all. A plus sign in front of a negated backslash sequence subtracted instead of adding, and a lookahead over an empty enumeration always matched. This ... (5 more lines) |
23:15 | ||||||||||||||||||||||||||||||||||||||
| nqp: ugexe++ created pull request #869: Honor zerowidth and negate on regex group nodes |
23:16 | ||||||||||||||||||||||||||||||||||||||
| rakudo: ugexe++ created pull request #6641: RakuAST: drop marker flags from character class subtraction |
23:18 | ||||||||||||||||||||||||||||||||||||||
| roast: ugexe++ created pull request #907: Test lookarounds over compound character classes |
23:19 | ||||||||||||||||||||||||||||||||||||||