Geth | rakudo/is-unit-tester: 930b037aac | (Elizabeth Mattijsen)++ | 2 files Rename to is test-assertion After a suggestion by jnthn. Also move this trait as an exported sub from Test, so the core doesn't have to actually have this. |
00:09 | |
01:37
frost-lab joined
01:50
zostay left,
lucasb left
01:51
zostay joined,
lucasb joined
02:13
Xliff left
02:52
lucasb left
|
|||
Geth | nqp: 59c15fa021 | Coke++ | t/docs/opcodes.t Skip more non-exposed opcodes |
03:01 | |
[Coke] | Down to 187 | ||
apparently when I did the last check for non-exposed opcodes, I missed several. | 03:04 | ||
06:47
maggotbrain joined
07:12
sena_kun joined
07:34
patrickb joined
08:08
Altai-man joined
08:11
sena_kun left
08:23
Xliff joined
08:58
frost-lab left
|
|||
Geth | rakudo: patrickbkr++ created pull request #3993: Fix formatting errors in docs/running.pod |
08:58 | |
rakudo: f4b38a173f | (Patrick Böker)++ | docs/running.pod Fix formatting errors in docs/running.pod |
|||
rakudo: 084b92a328 | (Patrick Böker)++ (committed using GitHub Web editor) | docs/running.pod Merge pull request #3993 from patrickbkr/fix-doc_running-format-errors Fix formatting errors in docs/running.pod |
|||
09:24
domidumont joined
|
|||
Geth | rakudo/is-unit-tester: fa561564cc | (Elizabeth Mattijsen)++ | src/core.c/traits.pm6 Remove mention of old "is-assertion" name Also note: since the trait now lives in the Test module itself, it does not need to be mentioned here at all. |
09:32 | |
rakudo/is-unit-tester: c4e5db6a7a | (Elizabeth Mattijsen)++ | src/core.c/traits.pm6 Oops, a little overzealous in deleting the old term |
09:33 | ||
09:35
AlexDaniel joined,
AlexDaniel left,
AlexDaniel joined
|
|||
AlexDaniel | samcv: can you please double check? Files changed → Review changes | 09:36 | |
I changed something but from what I see you should've had permissions anyway | |||
Geth | rakudo: 585db59c9a | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | lib/Test.rakumod Introducing Routine is test-assertion trait (#3991) Introducing Routine is test-assertion trait Marking a subroutine with the "is test-assertion" trait, indicates that the subroutine produces Test (aka TAP) output. All of the exported subroutines in Test implicitely have this trait. ... (24 more lines) |
||
linkable6 | RAKUDO#3991 [closed]: github.com/rakudo/rakudo/pull/3991 Introducing Routine is test-assertion trait | ||
lizmat | seems to have gotten an immediate like so I merged it ^^ | 09:37 | |
AlexDaniel | lizmat: yeah that's a nice addition, I think whateverable has weird line numbers in tests too | 09:39 | |
kinda forces you to write good test descriptions, so that it's easily findable :) | |||
Xliff | .oO( Hmmm.... adding default values to usage output could go into Main.pm6 at line 258... ) |
09:41 | |
lizmat | Xliff: PR ? | 09:42 | |
Xliff | lizmat: Thinking of creating one. See: gist.github.com/Xliff/554c0017ecba...3ff173a183 | ||
lizmat | Ah, you mean automatic insertion of the Parameter.default value... makes sense | 09:43 | |
Xliff | :) | 09:44 | |
AlexDaniel | it does makes sense, I did want something like this recently | ||
Xliff: just make sure to add some checks so that it doesn't always just dump whatever the default value is | |||
I'm not sure what the criteria could be though | 09:45 | ||
Xliff | $p.default must be defined, it must not be empty, if Str then surround with '' | ||
AlexDaniel | and if it's one thousand characters long? | ||
Xliff | Ah! Good point. | ||
That's.... tricky. | |||
AlexDaniel | or if it's an object that stringifies into something large? | ||
Xliff | Max 25 characters? | 09:46 | |
AlexDaniel | or if it has newlines? :) | ||
Xliff | Yeah. Also... must be Cool | ||
LOL! This is good stuff.... drop at first newline and insert '...' | |||
AlexDaniel | I think in most cases people don't have stuff that is too weird as default values, but the help message shouldn't just explode if they do :) | 09:47 | |
Xliff | *nod* | ||
Does raku track current terminal width? | |||
AlexDaniel | unlikely | ||
Xliff | Yeah, so all of this needs to be in test cases. | 09:48 | |
AlexDaniel | Xliff: rakudo test cases I think, not roast. That's a relief :) | ||
Xliff | So... capture $*USAGE in sub USAGE and check that. | 09:49 | |
Will be a lot of test cases, given the mechanism. | |||
May tackle this on the weekend. | |||
AlexDaniel | step by step! Maybe it's a good idea to present just a PR without tests first | 09:50 | |
Xliff | At any rate, thanks for the feedback, lizmat++ AlexDaniel++ | ||
AlexDaniel: Sure! | |||
Can always add the tests in later commits. | 09:51 | ||
AlexDaniel | yes :) | ||
samcv: anyway, please ping me if you still can't leave a review | |||
oh, I have an idea… | 09:52 | ||
09:52
Xliff left
|
|||
Geth | problem-solving: 5c5955978d | (Aleks-Daniel Jakimenko-Aleksejev)++ | .github/CODEOWNERS Add CODEOWNERS file Just testing the github feature. More about it here: * docs.github.com/en/free-pro-team@l...ode-owners See this comment to understand why it may be useful: ... (10 more lines) |
10:06 | |
10:13
domidumont left
|
|||
Geth | problem-solving: a517aab345 | (Aleks-Daniel Jakimenko-Aleksejev)++ | .github/CODEOWNERS Comment out invalid CODEOWNERS entries Otherwise github rejects the whole file. |
10:13 | |
rakudo: patrickbkr++ created pull request #3994: Update `docs/running.pod` |
10:20 | ||
roast: 58c711e16e | (Elizabeth Mattijsen)++ | 73 files Use "is test-assertion" trait where applicable No functional changes, just better error reporting if a test fails |
11:00 | ||
roast: a489cdc91a | (Elizabeth Mattijsen)++ | 3 files Add tests for "is test-assertion trait |
11:34 | ||
12:09
sena_kun joined
12:11
Altai-man left
13:39
vrurg left
13:41
vrurg joined
13:50
vrurg left
13:52
vrurg joined
14:00
vrurg left
14:01
vrurg joined
|
|||
nine | Aaand another one diagnosed: Version caches the objects for v6 and v6.c (but e.g. not v6.d) in global variables, so a module precompiled during a raku -e 'use v6.c; use Foo' gets a reference to the -e compunit as that's where that v6.c object will be stored | 14:27 | |
lizmat | nine: that should be easily fixed ? what do you prefer > | 14:50 | |
? | |||
nine | I wonder why we don't create those objects during setting compilation? That would safe a bit of time and depending on the setting is never an issue | 14:54 | |
14:55
domidumont joined
|
|||
lizmat | nine: I think there was a reason for that.... | 15:09 | |
nine | commit history doesn't really explain why. Vague references to regexes not working during setting BEGIN time, but later the code got changed to be regex free anyway | 15:15 | |
lizmat | yeah... trying with constants now | 15:18 | |
An exception occurred while evaluating a BEGIN | |||
meh | |||
nine | ah, my old nemesis | 15:19 | |
lizmat | must compose Version before allocating | 15:30 | |
patrickb | nine: Is this related to the ""Cannot look up attributes in a NQPMu type object" with `require`" issue ? | 15:34 | |
nine | no | 15:41 | |
patrickb | OK. Just curious. | 15:43 | |
Geth | rakudo: 18882bf6fb | (Elizabeth Mattijsen)++ | src/core.c/Version.pm6 Create common Version objects at setting compile time |
15:46 | |
lizmat | nine: ^^ | ||
afk for a few hours& | |||
16:08
Altai-man joined
16:11
sena_kun left
|
|||
nine | lizmat: that does indeed fix my issue :) Many thanks! | 16:19 | |
16:43
domidumont left
17:10
jmerelo joined
17:55
Geth left
18:52
jmerelo left
|
|||
lizmat | tyil: I think Geth needs a wakeup call :-) | 19:54 | |
tyil | lizmat: done | 20:04 | |
give it a minute or so :> | |||
20:04
Geth joined
20:09
sena_kun joined
20:10
Altai-man left
|
|||
Geth | rakudo: 03e1ba7294 | (Elizabeth Mattijsen)++ | src/core.e/array_multislice.pm6 Hopefully final @a[;] tweaks for 6.e.PREVIEW Fixing issue found while writing extensive tests |
20:34 | |
roast: c0eac55496 | (Elizabeth Mattijsen)++ | S32-array/multislice-6e.t Add extensive tests for 6.e @a[;] functionality |
20:35 | ||
20:41
Kaiepi left
20:42
Kaiepi joined
|
|||
tbrowder | m: class foo { has $.bar; has @.list }; my $a = foo.^attributes; say $a.^name | 20:49 | |
camelia | List | ||
tbrowder | m: class f {has $.bar}; my $a=f.^attributes; say $.^name.bar | 20:51 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable $.^name used where no 'self' is available at <tmp>:1 ------> 3$.bar}; my $a=f.^attributes; say $.^name7⏏5.bar expecting any of: argument list term |
||
tbrowder | m: class f {has $.bar}; my $a = f.^attributes; say $a.bar | 20:53 | |
camelia | No such method 'bar' for invocant of type 'List'. Did you mean 'Bag'? in block <unit> at <tmp> line 1 |
||
tbrowder | m: class f {has $.bar}; my %a = set f.^attributes; say %a; | 20:56 | |
camelia | {$!bar => True} | ||
tbrowder | m: class f {has $.bar;has $.baz = 6}; my %a = set f.^attributes; say %a | 20:59 | |
camelia | {$!bar => True, $!baz => True} | ||
tbrowder | m: class c {has $.baz}; say c ~~ baz | 21:01 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared routine: baz used at line 1. Did you mean 'bag'? |
||
tbrowder | m: class f {has $.bar}; my %a = set f.^attributes; say %a<$!baz>:exists | 21:04 | |
camelia | False | ||
tbrowder | duh | 21:05 | |
m: class f {has $.bar}; my %a = set f.^attributes; say %a<$!bar>.exists | 21:07 | ||
camelia | No such method 'exists' for invocant of type 'Bool' in block <unit> at <tmp> line 1 |
||
tbrowder | ff | ||
dogbert17 | .seen lizmat | ||
tellable6 | dogbert17, I saw lizmat 2020-10-30T19:54:01Z in #raku-dev: <lizmat> tyil: I think Geth needs a wakeup call :-) | ||
lizmat | you rang? | 21:08 | |
dogbert17 | lizmat: hello :) | ||
I have a small program which suddenly fails under 6.e.PREVIEW | |||
Cannot resolve caller AT-POS(Any:U: Mu:U); none of these signatures match: | |||
(Any:U \SELF: int \pos, *%_) | 21:09 | ||
... | |||
lizmat | gist ? | ||
dogbert17 | coming up ... | ||
gist.github.com/dogbert17/08f7204a...e183671504 | 21:11 | ||
hopefully I've done something stupid | |||
lizmat | probably /me did something stupid, as I've worked on that area the past days | 21:12 | |
dogbert17 | I actually changed to 6.e.PREVIEW to see if there were some new speed gains to be had :) | 21:13 | |
the program is quite slow | |||
lizmat confirms something's amiss and is looking into it | 21:15 | ||
dogbert17 | ++lizmat | 21:16 | |
lizmat | looks like all shaped array access is borked in 6.e.PREVIEW atm | 21:21 | |
like: use v6.e.PREVIEW; my @a[2;2]; dd @a[0;0] | 21:22 | ||
dogbert17 | yup, fails for me as well. The code did run with 'HEAD is now at 87ef76ae3 Implement binding of hash-slices (#3969)' albeit slowly | 21:23 | |
linkable6 | (2020-10-27) github.com/rakudo/rakudo/commit/87ef76ae30 Implement binding of hash-slices (#3969) | ||
lizmat | hash-slices broke that ? | 21:24 | |
dogbert17 | no it worked with that version | ||
lizmat | ah, *phew* | 21:26 | |
dogbert17 | I worded myself ambigously, sorry about that. 03e1ba7294 => code fails, 87ef76ae3 => code works | 21:27 | |
linkable6 | (2020-10-30) github.com/rakudo/rakudo/commit/03e1ba7294 Hopefully final @a[;] tweaks for 6.e.PREVIEW | ||
(2020-10-27) github.com/rakudo/rakudo/commit/87ef76ae30 Implement binding of hash-slices (#3969) | |||
lizmat | I'm starting to wonder whether this is a version skew issue | ||
dogbert17 | c: 87ef76ae30b use v6.e.PREVIEW; my @a[2;2]; dd @a[0;0] | 21:31 | |
committable6 | dogbert17, ¦87ef76a: «Any element at [0,0] = Any» | ||
lizmat | aaaah.... found it, think | ||
dogbert17 | cooool | 21:32 | |
lizmat | I doubt it will have gotten any faster though :-( | 21:33 | |
dogbert17 | it seems to have slowed down quite a bit | 21:34 | |
the gist I sent gave 'real 2m44,351s' when running without 6.e.PREVIEW but 'real 4m28,654s' with 6.e.PREVIEW | 21:36 | ||
lizmat | can it be made to run a bit less, for profiling | ||
reducing the size ? | 21:37 | ||
ah... but it looks like you're initializing rows / columns? | 21:38 | ||
in 6.e.PREVIEW; you can initialize a whole row /column with * | |||
dogbert17 | yes, if I remember correctly it's because ' is default' is NYI | 21:39 | |
lizmat | my @a[10;10]; @a[0;*] = ^10 | ||
dogbert17 | hmm, I'll have to try that | ||
lizmat | argh, not working on shaped arrays ?? | 21:40 | |
dogbert17 | if your'e still intersted in profiling the line setting size to 1001 could be set to a lower value, say 401 | ||
m: my @mat[$size; $size] is default(0) | 21:41 | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '$size' is not declared at <tmp>:1 ------> 3my @mat[7⏏5$size; $size] is default(0) |
||
dogbert17 | m: my @mat[10; 10] is default(0) | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> is default on shaped Array not yet implemented. Sorry. at <tmp>:1 ------> 3my @mat[10; 10] is default(0)7⏏5<EOL> expecting any of: constraint |
||
lizmat | I see | ||
dogbert17 | I wrote this several years ago, using Project Euler problems in order to learn Raku :) | 21:42 | |
Geth | rakudo: 316902ddda | (Elizabeth Mattijsen)++ | src/core.e/array_multislice.pm6 Fix off by-one error spotted by Jan-Olof Hendig I guess we need more tests. |
21:43 | |
lizmat | I guess the tests don't actually cover the fast path :-(* | 21:44 | |
dogbert17 | lizmat++ | ||
off by one, a timeless classic :-) | 21:45 | ||
lizmat | yeah, moved a decrement down to make the fast path faster, but forgot to update the tests in the fast path | ||
dogbert17 | your example: my @a[2;2]; dd @a[0;0] made the bug appear | 21:48 | |
m: my @a[10;10]; @a[0;*] = ^10 | 21:53 | ||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
dogbert17 | :-( | ||
lizmat | yeah, the problem is that it is checking for that in the shaped array logic, but that check should not be needed for 6.e | 21:54 | |
dogbert17 | aha, interesting | 21:55 | |
your fix works perfectly | 22:01 | ||
many thanks | |||
lizmat | yeah, still, we should be able to do * slices on shaped arrays | 22:03 | |
instead of @a[$size;$size] is default(0), it should be possble to do: @a[$size;$size]; @a[*;*] = 0 xx * | 22:04 | ||
to initialize all elements to 0 | |||
dogbert17: but I guess I will need some sleep on that | 22:11 | ||
dogbert17 | sleep well then :-) | 22:12 | |
lizmat | thanks :-) | 22:15 | |
22:15
sena_kun left
|
|||
lizmat | aaaahh.... I figured the issue *before* waking up again | 22:20 | |
dogbert17 | a solution? | ||
lizmat | now I need to sleep on the solution :-) | 22:21 | |
dogbert17 | :-) | ||
lizmat | m: my @a[2;2]; dd @a.AT-POS(0) | ||
camelia | Partially dimensioned views of shaped arrays not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
lizmat | that's the problem | ||
a 2-dim shaped array *must* be accessed with an AT-POS that takes 2 parameters | 22:22 | ||
you cannot walk shaped arrays | |||
m: my @a = [[42],]; dd @a.AT-POS(0).AT-POS(0) | 22:23 | ||
camelia | Int element = 42 | ||
lizmat | sleep& | 22:25 | |
timotimo | gnite liz | ||
dogbert17 | zzz | ||
22:45
Kaiepi left,
Kaiepi joined
|