[00:41] <Geth> ¦ rakudo: ugexe++ created pull request #6630: RakuAST: fix several compile-time variable constructs

[00:41] <Geth> ¦ rakudo: review: https://github.com/rakudo/rakudo/pull/6630

[00:54] <Geth> ¦ roast: 48148911ee | (Nick Logan)++ (committed using GitHub Web editor) | S29-os/system.t

[00:54] <Geth> ¦ roast: Run a silent child in the RT #115390 loops (#899)

[00:54] <Geth> ¦ roast: 

[00:54] <Geth> ¦ roast: The 200 iterations ran raku -v with inherited standard output, so

[00:54] <Geth> ¦ roast: every child wrote a three line version banner into the harness

[00:54] <Geth> ¦ roast: stream. Under CI load a banner chunk can land inside a test line,

[00:54] <Geth> ¦ roast: which corrupts the numbering and fails the file with tests out of

[00:54] <Geth> ¦ roast: sequence. An empty -e program spawns the same way and prints

[00:54] <Geth> ¦ roast: nothing. The loops only pin that run() in a loop does not crash, in

[00:54] <Geth> ¦ roast: sink context and assigned, so the command output was never part of

[00:54] <Geth> ¦ roast: the test.

[00:54] <Geth> ¦ roast: review: https://github.com/Raku/roast/commit/48148911ee

[00:55] <Geth> ¦ roast: 3382e30698 | (Nick Logan)++ (committed using GitHub Web editor) | S32-io/IO-Socket-Async.t

[00:55] <Geth> ¦ roast: Make the EADDRINUSE quit test deterministic (#898)

[00:55] <Geth> ¦ roast: 

[00:55] <linkable6> ROAST#898 [closed]: https://github.com/Raku/roast/pull/898 Make the EADDRINUSE quit test deterministic

[00:55] <Geth> ¦ roast: Previously this test picked a random port between 5000 and 10000 and

[00:55] <Geth> ¦ roast: tapped the same listen supply twice, expecting the first tap to win the

[00:55] <Geth> ¦ roast: bind and the second to quit. When something on the machine already held

[00:55] <Geth> ¦ roast: that port both listens failed. The first tap had no quit handler, and a

[00:55] <Geth> ¦ roast: failed listen also panics MoarVM on the next listen tap cancellation,

[00:55] <Geth> ¦ roast: which killed the test file after test 26. This binds a holder listener

[00:55] <Geth> ¦ roast: on port 0 first so the port is guaranteed to be in use, taps a single

[00:55] <Geth> ¦ roast: listener on that port with a quit handler, and checks the promise

[00:55] <Geth> ¦ roast: status rather than the always-truthy promise object.

[00:55] <Geth> ¦ roast: review: https://github.com/Raku/roast/commit/3382e30698

[00:55] <Geth> ¦ roast: 177d7af123 | (Nick Logan)++ (committed using GitHub Web editor) | S17-channel/basic.t

[00:55] <Geth> ¦ roast: Wait for the Channel Supply to drain before checking what it saw (#897)

[00:55] <Geth> ¦ roast: 

[00:55] <linkable6> ROAST#897 [closed]: https://github.com/Raku/roast/pull/897 Wait for the Channel Supply to drain before checking what it saw

[00:55] <Geth> ¦ roast: Previously the test closed the channel and immediately checked @seen,

[00:55] <Geth> ¦ roast: but Channel.Supply delivers values to its tap on a thread pool thread.

[00:55] <Geth> ¦ roast: Nothing synchronized the check with that delivery, so under load the

[00:55] <Geth> ¦ roast: main thread could read @seen before the tap finished pushing the last

[00:55] <Geth> ¦ roast: values. This taps with a done callback and awaits its promise after

[00:55] <Geth> ¦ roast: closing the channel, which Channel.Supply keeps only once the channel

[00:55] <Geth> ¦ roast: is drained.

[00:55] <Geth> ¦ roast: review: https://github.com/Raku/roast/commit/177d7af123

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: 2a58ec1d55 | (Nick Logan)++ | 4 files

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: Reach the run time type check with a value the compiler cannot judge

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: 

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: Rakudo is learning to report a store of a value a variable's type can

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: never accept while it compiles, instead of leaving it to the run time

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: check. A test written as `dies-ok { my Int $x = "str" }` names a literal

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: the compiler can judge, so it stops reaching the check it was written

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: for.

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: <…commit message has 6 more lines…>

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: review: https://github.com/Raku/roast/commit/2a58ec1d55

[00:56] <Geth> ¦ roast/ugexe/xor-warning-line: 455d32022f | (Nick Logan)++ | S03-operators/short-circuit.t

[00:57] <Geth> ¦ roast/ugexe/xor-warning-line: Judge the xor precedence warning by its own line

[00:57] <Geth> ¦ roast/ugexe/xor-warning-line: 

[00:57] <Geth> ¦ roast/ugexe/xor-warning-line: Previously the three assertions searched the whole of stderr for the

[00:57] <Geth> ¦ roast/ugexe/xor-warning-line: operand the warning is about and for the absence of the others. A

[00:57] <Geth> ¦ roast/ugexe/xor-warning-line: compiler that quotes the source under a warning prints every operand

[00:57] <Geth> ¦ roast/ugexe/xor-warning-line: there, so the search found the excluded ones in the excerpt rather

[00:57] <Geth> ¦ roast/ugexe/xor-warning-line: than in the warning. This looks only at the lines carrying the warning,

[00:57] <Geth> ¦ roast/ugexe/xor-warning-line: which is what the test was written to judge.

[00:57] <Geth> ¦ roast/ugexe/xor-warning-line: review: https://github.com/Raku/roast/commit/455d32022f

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: 82fcecf41c | (Nick Logan)++ | S03-operators/short-circuit.t

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: Judge the xor precedence warning by its own line

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: 

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: Previously the three assertions searched the whole of stderr for the

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: operand the warning is about and for the absence of the others. A

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: compiler that quotes the source under a warning prints every operand

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: there, so the search found the excluded ones in the excerpt rather

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: than in the warning. This looks only at the lines carrying the warning,

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: which is what the test was written to judge.

[00:58] <Geth> ¦ roast/ugexe/xor-warning-line: review: https://github.com/Raku/roast/commit/82fcecf41c

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: 17f760dd7c | (Nick Logan)++ | S03-operators/short-circuit.t

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: Judge the xor precedence warning by its own line

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: 

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: Previously the three assertions searched the whole of stderr for the

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: operand the warning is about and for the absence of the others. A

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: compiler that quotes the source under a warning prints every operand

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: there, so the search found the excluded ones in the excerpt rather

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: than in the warning. This looks only at the lines carrying the warning,

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: which is what the test was written to judge.

[00:59] <Geth> ¦ roast/ugexe/xor-warning-line: review: https://github.com/Raku/roast/commit/17f760dd7c

[00:59] <Geth> ¦ roast: ugexe++ created pull request #902: Judge the xor precedence warning by its own line

[00:59] <Geth> ¦ roast: review: https://github.com/Raku/roast/pull/902

[01:01] <Geth> ¦ roast/ugexe/literal-store-compile-time: a82b8bc0d4 | (Nick Logan)++ | 2 files

[01:01] <Geth> ¦ roast/ugexe/literal-store-compile-time: Hold the rejected string in one variable

[01:01] <Geth> ¦ roast/ugexe/literal-store-compile-time: 

[01:01] <Geth> ¦ roast/ugexe/literal-store-compile-time: Previously the native declarator tests held their string in a variable

[01:01] <Geth> ¦ roast/ugexe/literal-store-compile-time: of their own beside the one the typed declarator tests use. This has

[01:01] <Geth> ¦ roast/ugexe/literal-store-compile-time: every test store the same string.

[01:01] <Geth> ¦ roast/ugexe/literal-store-compile-time: review: https://github.com/Raku/roast/commit/a82b8bc0d4

[01:02] <Geth> ¦ roast: 74193e17bd | (Nick Logan)++ | 4 files

[01:02] <Geth> ¦ roast: Reach the run time type check with a value the compiler cannot judge

[01:02] <Geth> ¦ roast: 

[01:02] <Geth> ¦ roast: Rakudo is learning to report a store of a value a variable's type can

[01:02] <Geth> ¦ roast: never accept while it compiles, instead of leaving it to the run time

[01:02] <Geth> ¦ roast: check. A test written as `dies-ok { my Int $x = "str" }` names a literal

[01:02] <Geth> ¦ roast: the compiler can judge, so it stops reaching the check it was written

[01:02] <Geth> ¦ roast: for.

[01:02] <Geth> ¦ roast: <…commit message has 6 more lines…>

[01:02] <Geth> ¦ roast: review: https://github.com/Raku/roast/commit/74193e17bd

[01:02] <Geth> ¦ roast: a82b8bc0d4 | (Nick Logan)++ | 2 files

[01:02] <Geth> ¦ roast: Hold the rejected string in one variable

[01:02] <Geth> ¦ roast: 

[01:02] <Geth> ¦ roast: Previously the native declarator tests held their string in a variable

[01:02] <Geth> ¦ roast: of their own beside the one the typed declarator tests use. This has

[01:02] <Geth> ¦ roast: every test store the same string.

[01:02] <Geth> ¦ roast: review: https://github.com/Raku/roast/commit/a82b8bc0d4

[01:02] <Geth> ¦ roast: 18a00054c7 | (Nick Logan)++ (committed using GitHub Web editor) | 4 files

[01:02] <Geth> ¦ roast: Merge pull request #900 from Raku/ugexe/literal-store-compile-time

[01:02] <Geth> ¦ roast: 

[01:02] <Geth> ¦ roast: Reach the run time type check with a value the compiler cannot judge

[01:02] <Geth> ¦ roast: review: https://github.com/Raku/roast/commit/18a00054c7

[01:02] <Geth> ¦ roast: c65cc7a8de | (Nick Logan)++ (committed using GitHub Web editor) | S03-operators/short-circuit.t

[01:02] <Geth> ¦ roast: Judge the xor precedence warning by its own line (#902)

[01:02] <Geth> ¦ roast: 

[01:02] <linkable6> ROAST#902 [closed]: https://github.com/Raku/roast/pull/902 Judge the xor precedence warning by its own line

[01:02] <Geth> ¦ roast: Previously the three assertions searched the whole of stderr for the

[01:02] <Geth> ¦ roast: operand the warning is about and for the absence of the others. A

[01:02] <Geth> ¦ roast: compiler that quotes the source under a warning prints every operand

[01:02] <Geth> ¦ roast: there, so the search found the excluded ones in the excerpt rather

[01:03] <Geth> ¦ roast: than in the warning. This looks only at the lines carrying the warning,

[01:03] <Geth> ¦ roast: which is what the test was written to judge.

[01:03] <Geth> ¦ roast: review: https://github.com/Raku/roast/commit/c65cc7a8de

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: 3312f0629f | (Nick Logan)++ | 3 files

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: Reach the run time type check with a value the compiler cannot judge

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: 

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: Rakudo is learning to report a store of a value a variable's type can

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: never accept while it compiles, instead of leaving it to the run time

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: check. A test written as `dies-ok { my Int $x = "str" }` names a literal

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: the compiler can judge, so it stops reaching the check it was written

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: for.

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: <…commit message has 6 more lines…>

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: review: https://github.com/Raku/roast/commit/3312f0629f

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: ae21fc7cad | (Nick Logan)++ | S04-declarations/my.t

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: Hold the rejected string in one variable

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: 

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: Previously the native declarator tests held their string in a variable

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: of their own beside the one the typed declarator tests use. This has

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: every test store the same string.

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: review: https://github.com/Raku/roast/commit/ae21fc7cad

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: 61c0a329f9 | (Nick Logan)++ | S29-os/system.t

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: Run a silent child in the RT #115390 loops (#899)

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: 

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: The 200 iterations ran raku -v with inherited standard output, so

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: every child wrote a three line version banner into the harness

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: stream. Under CI load a banner chunk can land inside a test line,

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: which corrupts the numbering and fails the file with tests out of

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: sequence. An empty -e program spawns the same way and prints

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: nothing. The loops only pin that run() in a loop does not crash, in

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: sink context and assigned, so the command output was never part of

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: the test.

[01:12] <Geth> ¦ roast/ugexe/6.c-errata-sync: review: https://github.com/Raku/roast/commit/61c0a329f9

[01:12] <Geth> ¦ roast/ugexe/6.d-errata-sync: 5 commits pushed by (Nick Logan)++

[01:12] <Geth> ¦ roast/ugexe/6.d-errata-sync: 954a354dcb | Reach the run time type check with a value the compiler cannot judge

[01:12] <Geth> ¦ roast/ugexe/6.d-errata-sync: ee71647c2c | Hold the rejected string in one variable

[01:12] <Geth> ¦ roast/ugexe/6.d-errata-sync: c0407e2ef0 | Run a silent child in the RT #115390 loops (#899)

[01:13] <Geth> ¦ roast/ugexe/6.d-errata-sync: ef0ef6e23e | Make the EADDRINUSE quit test deterministic (#898)

[01:13] <Geth> ¦ roast/ugexe/6.d-errata-sync: 13186888df | Judge the xor precedence warning by its own line (#902)

[01:13] <Geth> ¦ roast/ugexe/6.d-errata-sync: review: https://github.com/Raku/roast/compare/954a354dcb26^...13186888dff5

[01:13] <Geth> ¦ roast: ugexe++ created pull request #903: Sync recent roast adjustments to 6.c-errata

[01:13] <Geth> ¦ roast: review: https://github.com/Raku/roast/pull/903

[01:13] <Geth> ¦ roast: ugexe++ created pull request #904: Sync recent roast adjustments to 6.c-errata

[01:13] <Geth> ¦ roast: review: https://github.com/Raku/roast/pull/904

[01:51] <Geth> ¦ rakudo: ugexe++ created pull request #6631: RakuAST: Parse -M arguments as use statements

[01:51] <Geth> ¦ rakudo: review: https://github.com/rakudo/rakudo/pull/6631

[02:03] *** japhb left
[02:18] <Geth> ¦ rakudo/main: d5a78515a6 | (Nick Logan)++ (committed using GitHub Web editor) | 13 files

[02:18] <Geth> ¦ rakudo/main: RakuAST: Show the source around a compile time problem (#6629)

[02:18] <Geth> ¦ rakudo/main: 

[02:18] <Geth> ¦ rakudo/main: Previously only the grammar's own errors carried the excerpt of source

[02:18] <Geth> ¦ rakudo/main: that renders as the `------>` line with the problem marked in it, since

[02:18] <Geth> ¦ rakudo/main: the cursor position was at hand when they were built. Every problem the

[02:18] <Geth> ¦ rakudo/main: frontend found after parsing rendered with a file and line and nothing

[02:18] <Geth> ¦ rakudo/main: of the source: check time sorries and worries, a BEGIN or CHECK block

[02:18] <Geth> ¦ rakudo/main: <…commit message has 9 more lines…>

[02:18] <Geth> ¦ rakudo/main: review: https://github.com/rakudo/rakudo/commit/d5a78515a6

[02:20] *** japhb joined
[02:56] <ugexe> so all these years we have been using :auth<...>

[02:57] <ugexe> but that way doesnt actually work with spaces

[02:59] <ugexe> m: use Test:auth<Yet Another Society>;

[02:59] <camelia> rakudo-moar d5a78515a: OUTPUT: «===SORRY!=== Error while compiling <tmp>␤Could not find Test:auth<Yet Another Society> in:␤    /home/camelia/.raku␤    /home/camelia/rakudo-m-inst-2/share/perl6/site␤    /home/camelia/rakudo-m-inst-2/share/perl6/vendor␤    /home/camelia/raku…»

[02:59] <ugexe> m: use Test:auth("Yet Another Society");

[02:59] <camelia> rakudo-moar d5a78515a: ( no output )

[04:07] *** vrurg_ left
