| Geth | rakudo/main: 6fd3fde7f9 | (Nick Logan)++ (committed using GitHub Web editor) | tools/templates/NQP_REVISION Bump NQP to check the object types declared on parameters (#6693) |
00:28 | |
| rakudo: ugexe++ created pull request #6694: RakuAST: enforce the parameter and return types node methods declare |
00:40 | ||
| ugexe | i guess we need to do github.com/rakudo/rakudo/blob/b830...=1#L48-L50 as well | 02:19 | |
| [Coke] | with this blin run nearly done, no zef failures running with the latest version | 03:14 | |
| github.com/rakudo/rakudo/commit/84...d3e5f80ec5 seems to have broken Terminal::UI | 03:15 | ||
| ... which makes no sense, so maybe a flapper. | |||
| Doesn't seem to be a potential timer/race issue. | 03:18 | ||
|
06:34
finanalyst joined
08:02
vrurg_ joined
08:04
vrurg left
|
|||
| Geth | rakudo/main: a60447bb59 | (Elizabeth Mattijsen)++ | 2 files RakUAST: streamline setting up native vars The logic had become quite convoluted and unclear, with superfluous conditions and dead code. Replace if structure with simple lookups in constant lists using primspec as index. This passes spectest ok, but broke an implementation test about the ... (5 more lines) |
10:36 | |
| roast/6.c-errata: 2a35ab744a | (Elizabeth Mattijsen)++ | S03-operators/adverbial-modifiers.t Change iffy test from "todo" to "skip" Not sure what that syntax was meant to do, but in RakuAST it has become a syntax error, and thus was killin the whole test file |
10:49 | ||
| roast/6.c-errata: 738f220b5e | (Elizabeth Mattijsen)++ | S03-sequence/basic.t Change some tests from "is" to "is-deeply" The intent of the test was to check the behaviour of some (smart) sequences, *not* how they would be rendered as strings. To be more precise: in RakuAST the Rat <1/3> is rendered as "¹/₃", as opposed to "<1/3>", which was breaking these tests. |
10:57 | ||
| roast/6.c-errata: 3bda2bd926 | (Elizabeth Mattijsen)++ | S04-exceptions/fail.t Fix test that was failing because of a "useless use" Not entirely sure why this wasn't a problem before, but in RakUAST the useless use was already seen at compilation time, and thus crashed the whole file wrt testing. |
11:02 | ||
| roast/6.c-errata: 11652f99de | (Elizabeth Mattijsen)++ | S04-declarations/state.t Skip test using :Perl5 regex adverb This is no longer supported in any language version |
11:04 | ||
| roast/6.c-errata: 0d39e8bc55 | (Elizabeth Mattijsen)++ | S04-declarations/constant.t Adjust tests for errors in constants 1. constant %h = 42 used to fail in 6.c with a typecheck error, it now fails with odd number of argume ts. Since the original test most likely predated the GLR, and I think the new error is actually more informative, change the test to just check for throwing an error instead of checking for a specific error. 2. using a constant as a type constraint never worked. In RakuAST it became a compile time error, so change the test from "todo" to "skip" |
12:51 | ||
| lizmat | bisectable6: old=2026.08 multi x(int $x is rw) { dd }; multi x(Int $x) { dd }; x my int $ = 42 | 13:03 | |
| bisectable6 | lizmat, On both starting points (old=2026.08 new=a60447b) the exit code is 0 and the output is identical as well | ||
| lizmat, Output on both points: «sub x(Int $x)» | |||
| lizmat | bisectable6: old=2026.01 multi x(int $x is rw) { dd }; multi x(Int $x) { dd }; x my int $ = 42 | ||
| bisectable6 | lizmat, On both starting points (old=2026.01 new=a60447b) the exit code is 0 and the output is identical as well | ||
| lizmat, Output on both points: «sub x(Int $x)» | |||
| lizmat | bisectable6: old=2025.01 multi x(int $x is rw) { dd }; multi x(Int $x) { dd }; x my int $ = 42 | 13:04 | |
| bisectable6 | lizmat, On both starting points (old=2025.01 new=a60447b) the exit code is 0 and the output is identical as well | ||
| lizmat, Output on both points: «sub x(Int $x)» | |||
| lizmat | bisectable6: old=2025.01 use v6.c; multi x(int $x is rw) { dd }; multi x(Int $x) { dd }; x my int $ = 42 | 13:05 | |
| bisectable6 | lizmat, On both starting points (old=2025.01 new=a60447b) the exit code is 0 and the output is identical as well | ||
| lizmat, Output on both points: «sub x(Int $x)» | |||
| lizmat | so why do we have a test in 6.c-errata that expects the "int $x is rw" candidate to be called | ||
| ? | |||
| bisectable6: multi x(int $x is rw) { dd }; multi x(Int $x) { dd }; x my int $ = 42 | 13:09 | ||
| bisectable6 | lizmat, Will bisect the whole range automagically because no endpoints were provided, hang tight | ||
| lizmat, Output on all releases: gist.github.com/5894e4456fd8d8826f...ee87e43c9f | 13:10 | ||
| lizmat, Bisecting by output (old=2017.07 new=2017.08) because on both starting points the exit code is 0 | |||
| lizmat, bisect log: gist.github.com/d7cecb747249dcecaf...89fa626677 | |||
| lizmat, (2017-07-29) github.com/rakudo/rakudo/commit/6d...4b7d04be0f | |||
| lizmat, Output on all releases and bisected commits: gist.github.com/931db032d77fb525c9...88ab56a989 | |||
| lizmat | right, so this never worked | 13:11 | |
| [Coke]: could it be that the 6.c-errata branch was never clean? | |||
| anyways, feels like this *should* always select the int $c is rw candidate | 13:12 | ||
| because if *does* do that if that candidate is changed to "int $x is raw" | 13:13 | ||
| [Coke] | the 6.c errata branch is run *every release* | 13:26 | |
| We can track in rakudo/tools/releaseable (sp?) when that was added, but it's been there since I started working on releases again | 13:27 | ||
| any time there's a failure, we fix it immediately or I open a ticket on roast to call it out | 13:28 | ||
| lizmat | and the 6.c-errata branch is supposed to be clean, right? | ||
| ok | |||
| [Coke] | Yes. | ||
| lizmat | hmmm... weird | 13:29 | |
| m: my $_ = 42; .say | |||
| camelia | Potential difficulties: Redeclaration of symbol '$_'. at <tmp>:1 ------> my $_<HERE> = 42; .say 42 |
||
| lizmat | m: Q|my $_ = 42; .say|.AST.EVAL | 13:30 | |
| camelia | Potential difficulties: Redeclaration of symbol '$_'. at /home/camelia/EVAL_0:1 ------> my $_<HERE> = 42; .say 42 |
||
| lizmat | so far, so good | ||
| m: { my $_ = 42; .say } | |||
| camelia | Potential difficulties: Redeclaration of symbol '$_'. at <tmp>:1 ------> { my $_<HERE> = 42; .say } 42 |
||
| lizmat | m: Q|{ my $_ = 42; .say }|.AST.EVAL | ||
| camelia | ===SORRY!=== Lexical '$_' already declared |
||
| lizmat | meh | ||
| [Coke] | fwiw, last 1/2 releases have been done on ubuntu 26.04 - last dozen before that on some version of ubuntu that I don't have around to check. | ||
| lizmat | I don't think these cases would depend on the OS being used | 13:31 | |
| bisectable6: my $_ | 13:39 | ||
| bisectable6 | lizmat, Will bisect the whole range automagically because no endpoints were provided, hang tight | ||
| lizmat, Output on all releases: gist.github.com/848dc4ad36610a7093...9c476fbcf2 | 13:40 | ||
| lizmat, Bisecting by output (old=2024.10 new=2024.12) because on both starting points the exit code is 0 | |||
| lizmat, bisect log: gist.github.com/56f3f20ed3bab49104...49bab59f2e | |||
| lizmat, (2024-11-22) github.com/rakudo/rakudo/commit/a9...b4dced35bc | |||
| lizmat, Bisecting by output (old=2020.06 new=2020.07) because on both starting points the exit code is 0 | |||
| lizmat, bisect log: gist.github.com/4183586d58d3661212...f775c90851 | 13:41 | ||
| lizmat, (2020-07-05) github.com/rakudo/rakudo/commit/3f...4d7e503eb6 | |||
| lizmat, Bisecting by output (old=2016.08.1 new=2016.09) because on both starting points the exit code is 0 | |||
| lizmat, bisect log: gist.github.com/d71c9cfe23523a5215...744b82a787 | |||
| lizmat, (2016-08-30) github.com/rakudo/rakudo/commit/76...ccfef298af | |||
| lizmat, ⚠ New output detected, please review the results manually | |||
| lizmat, Output on all releases and bisected commits: gist.github.com/d8dbcc9ba583a71b3f...48cca275a6 | |||
| lizmat | meh, the "Lexical '$_' already declared" is from the MAST stage, looks like RakuAST isn't catching that earlier | 13:45 | |
| leaving this one for ugexe, as they may have a quicker graps on where to fix this | 13:50 | ||
| ugexe | i mean it is already declared though | 13:56 | |
| lizmat | yeah, but the error occurs at the MAST stage, leaving no information on where the "my $_" actually occured | 13:57 | |
| [Coke] | github.com/coke/raku-blin-release-...ailures.md is updated with the latest blin run through 7a3abc5aba (formatting is wonky for some reason) | 14:00 | |
| linkable6 | (2026-09-18) github.com/rakudo/rakudo/commit/7a3abc5aba RakuAST: make my num $a initialize to NaN in 6.c | ||
| Geth | rakudo/main: 6 commits pushed by (Nick Logan)++
|
14:01 | |
| roast/6.c-errata: 1eff537303 | (Elizabeth Mattijsen)++ | S12-class/augment-supersede.t Make class syntactically correct In RakuAST, the 'class F is ::F' was *first* seen as an incomplete class specification *before* it could see that it inheriting from itself. Fix this by make the 'class F is ::F { }' definition complete. |
14:03 | ||
| [Coke] | note that the monthly testing of any roast has always only been on LEGACY | 14:14 | |
| lizmat | understood | ||
| Geth | roast/6.c-errata: d610a795df | (Elizabeth Mattijsen)++ | S12-attributes/smiley.t Make smiley tests less specific In the legacy grammar, many of these tests were testing for runtime exceptions. In RakuAST many of these types of errors with attribute initializations have become compile-time errors, with their own execution error object. So change these "throws-like" tests to "dies-ok" tests with the original code wrapped in an EVAL. |
14:16 | |
|
14:51
[Coke]_ joined
14:53
[Coke] left
15:33
finanalyst left
|
|||
| [Coke]_ | ugexe: zef 1.1.4 does seem to have fixed my blin issues. | 15:44 | |
|
15:44
[Coke]_ is now known as [Coke]
|
|||
| Geth | rakudo/main: 14d9205996 | (Elizabeth Mattijsen)++ | src/core.c/RakuAST/LegacyPodify.rakumod RakuAST: Fix C<> format code legacy rendering In pod apparently it is supposed to be without leading whitespace |
16:01 | |
| roast/6.c-errata: 4466bd6bfc | (Elizabeth Mattijsen)++ | S26-documentation/wacky.t Skip 2 shaky declarator docs behaviour tests The behaviour has become much more sane in RakuAST |
16:05 | ||
| roast/6.c-errata: 6a6c3db963 | (Elizabeth Mattijsen)++ | S32-num/stringify.t Skip <1/3> rendeing test As it has changed to ¹/₃ in RakuAST |
16:11 | ||
| roast/6.c-errata: f71c28e352 | (Elizabeth Mattijsen)++ | S32-str/comb.t Skip test involving :Perl5 regex adverb As in RakuAST this is not supported anymore in any language level |
16:12 | ||
| ugexe | huh? we reduce the plan count for skips? | ||
| that seems broken since non rakudo compilers will never pass now | 16:13 | ||
| like github.com/Raku/roast/commit/6a6c3db963 skips one test on rakudo only and changes the plan count to be -3 for all compilers | 16:16 | ||
| seems like the plan should never change, and even if it did need to change that it would be -1 | |||
| Geth | roast/6.c-errata: 041efdd546 | (Elizabeth Mattijsen)++ | integration/advent2009-day14.t Skip some more Rat rendering tests |
||
| ugexe | i guess that single test is multiple tests, but even then it looks like its more than 3 github.com/Raku/roast/blob/6a6c3db....t#L43-L53 | 16:17 | |
| Geth | roast/6.c-errata: 2a2f994a8d | (Elizabeth Mattijsen)++ | S32-str/split.t Remove tests using :Perl5 regex adverb As they will not be supported in any language level |
16:20 | |
| ugexe | lizmat: a bunch of tests us :P5 adverb as well | 16:21 | |
| Geth | roast/6.c-errata: cf6919c6ee | (Elizabeth Mattijsen)++ | integration/advent2011-day11.t Fix variable specification in test Apparently in legacy the validity of the method name was checked *before* seeing that the invocant was not a defined variable. Fix by specifying the correct variable name. |
16:25 | |
| lizmat | ugexe: in the case of github.com/Raku/roast/commit/f71c28e352 it's actually running fewer tests | 16:38 | |
| ugexe: github.com/Raku/roast/commit/6a6c3db963 is indeed more questionable, will re-examin | |||
| e | |||
| Geth | roast/6.c-errata: 03db853635 | (Elizabeth Mattijsen)++ | integration/rule-in-class-Str.t Skip all tests, as they all use :P5 regex adverb Which will not be supported in any language level |
16:43 | |
| ugexe | lizmat: before you change too much :P5 :Perl5 stuff, im suggesting we remove it altogether | 16:44 | |
| it should be a compile time error like any other invalid adverb | |||
| but it cant be if tests are expecting the use of :P5 to error at runtime instead | |||
| lizmat | so you want to check to see whether it is a compile time error ? | ||
| ugexe | they should just be removed altogether. we can't reasonably do anything with :P5 or :Perl5 in these tests if they are compile errors | 16:46 | |
| lizmat | that would be fine with me | ||
| do we do the same with macro ? | |||
| ugexe | github.com/Raku/roast/blob/dd85d3c...5.t#L7-L10 | ||
| thats a better example of the problem^ | |||
| those tests are also mentioned as blocking github.com/rakudo/rakudo/pull/6534 | 16:47 | ||
| i dont know what we do with macros... i don't recall ever looking at anything related to them | |||
| lizmat | there are now 12 roast files in 6.c-errata that are now failing | 16:49 | |
| because of macro | |||
| ugexe | i'd probably just delete any macro tests | 16:50 | |
|
16:54
finanalyst joined
|
|||
| Geth | roast/6.c-errata: c6eb798f4e | (Elizabeth Mattijsen)++ | S32-exceptions/misc.t Tweak many exception tests 1. Perl 5 variables are no longer handled in a special way 2. inheritance recursion is checked at compose time 3. Useless use messages are no longer prefixed with "WARNINGS" |
17:06 | |
| roast/6.c-errata: 966205785f | (Elizabeth Mattijsen)++ | S32-num/stringify.t Mark Rat rendering test as todo if they differ It's is bit backward, but this will at least keep the number of tests unchanged from the original before 6a6c3db |
17:14 | ||
| lizmat | [Coke]: remaining 6.c-errata issues: gist.github.com/lizmat/b98184b96ae...7ab315efb7 | 17:24 | |
| ugexe | it feels like you should be using #?rakudo skip with `#?rakudo.moar emit plan 37;` instead of doing that weird todo thing | 17:26 | |
| replacing 37 with whatever number | |||
| lizmat | feels like using "emit" is even weirder ? at leas to me :-) | 17:31 | |
| ab5tract | TIL about #?rakudo .. I just added "compiler directives" (for lack of knowing a better term) to RIP last night | ||
| ugexe | todo is certainly worse as it suggests the behavior should be something else | ||
| ab5tract | I'll have to double check that these would be parsed properly. | ||
| I had always read 'todo' as "this is the behavior it should be, but isn't now" | 17:32 | ||
| lizmat | well, I welcome any changes, for today I have been looking enough at 6.c-errata | ||
| ab5tract | lizmat: fair and well me :) | 17:33 | |
| *well met | |||
| ugexe | todo leaves other implementations open to implement the wrong thing | ||
| and say they did it correct | 17:34 | ||
| alternatively just use done-testing() in that file and lose the plan | |||
| ab5tract | that's an interesting side effect indeed | ||
| Geth | roast/6.c-errata: f796fbf3f8 | (Elizabeth Mattijsen)++ | S32-num/stringify.t Revert "Mark Rat rendering test as todo if they differ" This reverts commit 966205785fe3187427dd4288da85bd2766e63f30. As it gives the wrong impression |
||
| lizmat | afk for a few hours& | 17:35 | |
| ab5tract | lizmat: you should give the latest version of RIP another try. It's finally at a point where I can say that hacking on the core is not only comfortable but actually pretty freaking great | ||
| beta.13 has ctrl+click jump to definition for all core classes | 19:23 | ||
| and ctrl+click on a method will shou a list of usages in the core | 19:33 | ||
| ugexe: what editor/IDE do you use to hack on core directly? | 19:36 | ||
| ugexe | vscode | 19:37 | |
| Geth | rakudo: ugexe++ created pull request #6695: RakuAST: let a declaration name the lexical its scope already declares |
19:52 | |
| ab5tract | can the LSP provide the features above? | 19:58 | |
| ugexe | nah, the lsp doesnt work with the core at all | 20:02 | |
| ab5tract | II'm almost to the point where known bugs are fully squashed and I can move on to features like RakuDoc support and an AST browser/debugger | 20:43 | |
| Geth | rakudo/main: 7ded5ff7de | (Elizabeth Mattijsen)++ | src/core.c/Rat.rakumod Only use new Rat.raku rendering in 6.e+ This was the intent originally, but Raku.legacy in that respect does *not* cut it. So 1/3 will only render as "¹/₃" in 6.e and higher, and "<1/3>" in 6.c/d. |
21:03 | |
| roast/6.c-errata: db902bff93 | (Elizabeth Mattijsen)++ | 3 files Revert most Rat.raku rendering tests The old <1/3> formatting should be used for 6.c/d, the new formatting should only be used for 6.e+. github.com/rakudo/rakudo/commit/7ded5ff7de fixed this in Rakudo |
21:11 | ||
| roast/6.d-errata: a2d7f340fa | (Elizabeth Mattijsen)++ | S03-operators/adverbial-modifiers.t Change iffy test from "todo" to "skip" Not sure what that syntax was meant to do, but in RakuAST it has become a syntax error, and thus was killin the whole test file |
21:22 | ||
| roast/6.d-errata: 5668106579 | (Elizabeth Mattijsen)++ | S04-exceptions/fail.t Fix test that was failing because of a "useless use" Not entirely sure why this wasn't a problem before, but in RakUAST the useless use was already seen at compilation time, and thus crashed the whole file wrt testing. |
21:33 | ||