Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
Set by Zoffix on 27 July 2018.
Geth rakudo: vrurg++ created pull request #3146:
Fix detection of current language version
01:14
rakudo: 7b52350395 | (Vadim Belman)++ | 2 files
Fix detection of current language version

For unknown reason `nqp::getcomp('perl6').language_version` sometimes returns `6.d` at compile time even though `use v6.e.PREVIEW` pragma is used. To get around this problem `getcomp` is now last-resort path. First `nqp::p6clientcorever` is used to work for type objects created dynamically at run time; then `World` object is used to find
  `CORE-SETTING-REV` symbol to work at compile-time.
rakudo/rakudo#3141
01:38
synopsebot RAKUDO#3141 [open]: github.com/rakudo/rakudo/issues/3141 [WIP] [WIP] Flapping test t/spec/S02-types/subset-6e.t
rakudo: 2b52e0f55c | (Vadim Belman)++ (committed using GitHub Web editor) | 2 files
Merge pull request #3146 from vrurg/rakudo_issue_3141

Fix detection of current language version
For unknown reason `nqp::getcomp('perl6').language_version` sometimes returns `6.d` at compile time even though `use v6.e.PREVIEW` pragma is used. To get around this problem `getcomp` is now last-resort path. ... (5 more lines)
06:23 BeastieBot joined 07:04 Xliff joined
MasterDuke anyone have an idea about www.nntp.perl.org/group/perl.perl6...g6899.html ? i don't think there's a limit 07:48
i tried a type name of ~10942 chars and it was fine... 07:58
Xliff How many levels down? 08:14
And were they in a single compunit or just one? 08:15
s/just one/multiple files/
m: ('A'...'Z', 'a'...'z').flat.say 08:18
camelia (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z)
Xliff m: my @a = ('A'...'Z', 'a'...'z').flat; (@a.pick xx 10).join.say 08:20
camelia BxuJnHnYCv
[Tux] Rakudo version 2019.07.1-196-g2b52e0f55 - MoarVM version 2019.07.1-122-gae5a385e8
csv-ip5xs0.705 - 0.708
csv-ip5xs-205.465 - 5.497
csv-parser23.911 - 26.069
csv-test-xs-200.442 - 0.452
test7.665 - 7.678
test-t1.824 - 1.850
test-t --race0.986 - 0.990
test-t-2031.520 - 31.821
test-t-20 --race11.039 - 11.163
09:32
09:35 ufobat joined
bartolin MasterDuke pmurias: thanks for looking into my 'my int $int' question yesterday. I was unsure about the performance implication of making $int a native int. Is it safe to say that it's always good (if only theoretically) to use the native variant for a variable if only the native versions of nqp ops (like bindattr_i, iseq_i, etc.) are used? 09:46
Xliff MasterDuke: Well, hit the shell limit on my test, I think. 252 levels down, 4299 length before it gave up on me with a file not found. 10:08
I'll post a gist of the script I used.
gist.github.com/Xliff/d4e9f86822e8...544275c2b1 10:11
10:25 ufobat left
MasterDuke bartolin: i'm no expert, but that's my belief also. that should reduce the implicit boxing the compiler/vm has to do 10:25
10:25 ufobat joined
MasterDuke Xliff: i just used a very long name in a script, i didn't actually create a deep directory tree 10:25
Xliff Figured. 10:28
So I thought I'd write a script to account for that. 10:29
:)
Geth rakudo: ufobat++ created pull request #3147:
added Backtrace.depth
10:44
Xliff How do you check for a subset? 10:58
$a.HOW.Str.contains('SubsetHOW')? 10:59
Actually, I don't even know if the .Str is necessary...
Actually, actually... .Str is necessary. :) 11:01
dogbert17 .seen lizmat 11:41
tellable6 dogbert17, I saw lizmat 2019-08-21T18:14:44Z in #perl6: <lizmat> Once upon a time in Hollywood&
dogbert17 .ask lizmat did you by any chance fix R#3069 ? 11:43
synopsebot R#3069 [open]: github.com/rakudo/rakudo/issues/3069 Date formatter invalid after the twenty-eight day
tellable6 dogbert17, I'll pass your message to lizmat
13:20 lucasb joined
tbrowder someone please review PR #3142. i will merge in a day or so unless there are objections. thnx 13:22
jnthn m: subset Foo of Int; say Foo.HOW.isa(Metamodel::SubsetHOW) 13:41
camelia Too few positionals passed; expected 3 arguments but got 2
in block <unit> at <tmp> line 1
jnthn m: subset Foo of Int; say Foo.HOW ~~ Metamodel::SubsetHOW
camelia True
jnthn Xliff: ^^
Will be much better than string comparison :) 13:42
13:55 Kaiepi left
AlexDaniel tbrowder: so previously something like #`∞ was valid, but resulted in a single line comment 13:59
tbrowder: and now it will be an error message?
looks fine to me
I was kinda expecting it to just work, but whatever 14:00
14:01 ufobat left
tbrowder no, that was always invalid (the inf symbol is not a valid opener char or a space), but the error message wasn't clear 14:01
um, space after isn't valid either 14:07
AlexDaniel m: #`∞ hello
camelia ( no output )
tbrowder for the inline (aka embedded) comment 14:08
AlexDaniel m: #` hello
camelia ( no output )
AlexDaniel m: #=∞ hello
camelia ( no output )
AlexDaniel m: #|∞ hello
camelia ( no output )
tbrowder ok, that embedded line may be ok (it is just a single line so not really embedded, got to dig in and check that, good catch 14:15
we also don't discuss embedded comment in the main pod6 doc which i will fix. 14:17
SmokeMachine m: #|∞ hello\nsay 42 14:23
camelia ( no output ) 14:24
14:29 canw joined
tbrowder my reading of s2 says we shouldn't allow the opening space for embedded single-line but maybe the horse has left the barn... 14:29
tobs m: #|∞ hello␤say 42 14:30
camelia 42
tbrowder that is unexpected!
no, it's ok, i see the newlines now 14:31
14:42 canw left
tbrowder i think that the embedded comment should cause an exception without the valid opening bracket character. i doubt many are out there in the wild. as a minimum, they should be deprecated imho. 15:10
note my pr #3142 currently does that. i'll have to see how the current roast treats it. 15:12
*does that: throws an exception for embedded without the valid opener 15:14
roast handling is extensive... 15:18
tl;dr for the moment 15:19
hm, i think i've found a test in S-02-lexical-conventions/comments.t which should throw when the space is following the #backtic which, if i'm correct, should support my pr. 15:50
can we use one of AlexDaniel's test-all-modules scripts to see how many such uses are published? 15:51
15:53 Kaiepi joined
AlexDaniel tbrowder: yes, we'll see if anything was affected before the release 15:53
but after you merge it
you can also grep the ecosystem
github.com/moritz/perl6-all-modules 15:54
it is outdated, but still helpful
tbrowder when are you planning next release? 15:58
dogbert17 AlexDaniel: remind me, is it possible to bisect a gist and at the same time have a few env vars set? 16:52
17:00 pamplemousse joined
tbrowder searching moritz's repo i've found only 4 files with "#` " entries. the first is github/azawawi/farabi6/lib/Farabi6/files/assets/3rd-party/codemirror-v5.0/mode/markdown/markdown.js which may not even be a problem (but should be checked by the author). 17:03
the second is github/perl6/doc/template/search_template.js and it also looks like it just needs tweaking to to fit the correct def as does file 1. 17:05
vrurg .tell jnthn I have replied about bootstrap relations. If you have no objections to the approach, I'll merge it today. 17:07
tellable6 vrurg, I'll pass your message to jnthn
tbrowder the third is github/finanalyst/pod-render/lib/PodCache/Engine.pm6 which looks harmless or maybe tweaking. 17:08
the fourth is github/perl6/doc/doc/Type/X/Syntax/Comment/Embedded.pod6 whose definition agrees with my interpretation of "'#` " as invalid. 17:11
AlexDaniel dogbert17: you can `run ‘perl6’, …` from your gist 17:12
dogbert17 huh
AlexDaniel dogbert17: `perl6` in this case will be the current rakudo version being tested
tbrowder a fifth source file is the current docs on embedded contents with the same definition, i.e., "#`" must be followed by a valid opener char 17:13
dogbert17 it's the script in M#3114
AlexDaniel dogbert17: you can also have multiple files and you can `run` that other file 17:14
dogbert17 I must be utterly confused/stupid
tbrowder so i think my pr is valid as is and we (i) need to investigate further to see if or why the roast comments.t test doesn't work as it should. 17:15
dogbert17 you mean bisect ENV_VAR1=1 ENV_VAR2=1 perl6 <link2gist> 17:16
tbrowder in that regard i will not recommend merging until i can be happy with that current test. 17:17
*should => *as i think it should
AlexDaniel dogbert17: gist.github.com/AlexDaniel/3d42b7a...5e43b51604
17:22 bisectable6 left
timotimo m: ('A'...'Z', 'a'...'z').flat.perl.say 17:22
camelia ("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", …
timotimo oh, i was still scrolled up
dogbert17 and now the bot went missing
17:22 evalable6 left
AlexDaniel dogbert17: I restarted it to make your life a bit easier :) 17:23
17:23 pamplemousse left, bisectable6 joined
dogbert17 nah I must be a moron 17:25
AlexDaniel dogbert17: ask, I'll try to explain
dogbert17 :-)
AlexDaniel dogbert17: basically, in your gist you can have *any* kind of code for setting up stuff. You can create files, start processes, etc.
dogbert17: as well as execute perl6 with custom arguments or env variables
17:26 evalable6 joined
AlexDaniel and bisectable tweaks your PATH for you, so on every step `perl6` is the right rakudo version that's used on that step 17:26
dogbert17 ok, I want to accomplish something like 'bisect: 2018.08 2018.09 MVM_SPESH_NODELAY=1 MVM_SPESH_BLOCKING=1 <gist>'
AlexDaniel dogbert17: ok, what about this? gist.github.com/AlexDaniel/3d42b7a...5e43b51604 17:27
so on every step it'll run bisecter.p6, which will tweak the env vars and start another process 17:28
dogbert17 bisect: 2018.08 2018.09 gist.githubusercontent.com/AlexDan...isecter.p6
bisectable6 dogbert17, Using old=2018.08 new=2018.09 in an attempt to DWIM
dogbert17, Successfully fetched the code from the provided URL
dogbert17, On both starting points (old=2018.08 new=2018.09) the exit code is 1 and the output is identical as well
dogbert17, Output on both points: «Could not open sandbox/bisecting-this.p6. Failed to stat file: no such file or directory␤The spawned command 'perl6' exited unsuccessfully (exit code: 1)␤ in block <unit> at /tmp/emJZtYsBFj line 4␤␤»
dogbert17 that didn't work
17:29 committable6 left
AlexDaniel dogbert17: right! 17:30
dogbert17: because you passed just one file
dogbert17 what did I do wrong
aha
AlexDaniel dogbert17: you need to give it the whole gist
17:30 chloekek joined
AlexDaniel it knows how to handle that, a few years ago it didn't 17:30
dogbert17: so try with gist.github.com/AlexDaniel/3d42b7a...5e43b51604
dogbert17 bisect: 2018.08 2018.09 gist.githubusercontent.com/AlexDan...isecter.p6 gist.githubusercontent.com/AlexDan...ng-this.p6 17:31
bisectable6 dogbert17, Using old=2018.08 new=2018.09 in an attempt to DWIM
dogbert17, Successfully fetched the code from the provided URL
dogbert17, On both starting points (old=2018.08 new=2018.09) the exit code is 1 and the output is identical as well
dogbert17, Output on both points: «Could not open sandbox/bisecting-this.p6. Failed to stat file: no such file or directory␤The spawned command 'perl6' exited unsuccessfully (exit code: 1)␤ in block <unit> at /tmp/XCZ3TIcr9u line 4␤␤»
AlexDaniel dogbert17: just gist.github.com/AlexDaniel/3d42b7a...5e43b51604 :)
althought that'd be a nice feature too
17:31 committable6 joined, ChanServ sets mode: +v committable6
dogbert17 bisect: 2018.08 2018.09 gist.github.com/AlexDaniel/3d42b7a...5e43b51604 17:31
bisectable6 dogbert17, Using old=2018.08 new=2018.09 in an attempt to DWIM
dogbert17, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
dogbert17 coool
bisectable6 dogbert17, Bisecting by output (old=2018.08 new=2018.09) because on both starting points the exit code is 0
tobs "in an attempt to DWIM" < shouldn't this be "DWYM"? 17:32
AlexDaniel tobs: yeah, people keep complaining about that :D
tobs: for me DWIM is a verb, but feel free to PR a fix :D
dogbert17 ok, I made a slight mistake ... 17:33
bisectable6 dogbert17, bisect log: gist.github.com/a4b661975b1deb7e3f...c3beaf2dd4
dogbert17, (2018-08-24) github.com/rakudo/rakudo/commit/fc...28afc1ce55
dogbert17 bisect: 2018.09 2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
bisectable6 dogbert17, Using old=2018.09 new=2018.10 in an attempt to DWIM
dogbert17, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
dogbert17, Bisecting by output (old=2018.09 new=2018.10) because on both starting points the exit code is 0 17:34
dogbert17 what
AlexDaniel dogbert17: “by output” looks wrong, right? You're looking for a segfault?
c: 2018.10,2018.10,2018.10,2018.10,2018.10,2018.10,2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
committable6 AlexDaniel, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel, gist.github.com/4983be77d9226669d4...39de6a9f06 17:35
dogbert17 2018.10 crashes every time for me with those vars set
bisectable6 dogbert17, bisect log: gist.github.com/746e8a9d127736f0f1...3c57823cd2
dogbert17, There are 45 candidates for thefirst “new” revision. See the log for more details
dogbert17 yes I'm looking for the SEGV :-)
AlexDaniel thefirst??? 17:36
dogbert17 I guess so 17:37
AlexDaniel fixed
dogbert17: ok, so what if it doesn't crash at all in committable?
dogbert17 I was hoping it should :-) 17:38
AlexDaniel so what's different? The compiler version used to build rakudo?
or just how fast the system is? 17:39
tobs AlexDaniel: reading the other mentions of DWIM in the source, I'm conflicted :)
dogbert17 could be
can we be certain that it sees the env vars 17:40
AlexDaniel tobs: change it to “in an attempt to do what you mean”
bisectable6: gist.github.com/AlexDaniel/dbe3426...c020113f22 17:41
bisectable6 AlexDaniel, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel, On both starting points (old=2015.12 new=2b52e0f) the exit code is 0 and the output is identical as well
AlexDaniel, Output on both points: «1␤1␤»
AlexDaniel dogbert17: does that answer your question? 17:42
dogbert17 hmm, curious, must be related to my machine the I guess 17:43
AlexDaniel c: 2018.10,2018.10,2018.10,2018.10,2018.10,2018.10,2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
committable6 AlexDaniel, Using file “bisecting-this.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel c: 2018.10,2018.10,2018.10,2018.10,2018.10,2018.10,2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
committable6 AlexDaniel, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel pfffffffffft stupid bot
dogbert17 :-)
committable6 AlexDaniel, gist.github.com/1c36b024d24e44fe69...1d81ac50c5 17:44
AlexDaniel, gist.github.com/092b9abb84408ab0bc...6ce323d41b
AlexDaniel c: 2018.10,2018.10,2018.10,2018.10,2018.10,2018.10,2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604 17:45
committable6 AlexDaniel, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel, gist.github.com/29df866d341a8a8fab...09a37e4429
AlexDaniel dogbert17: it just doesn't segfault
dogbert17: you sure that's 2018.10?
dogbert17: ooohhh, could it be that we're seeing the old rakudo bug 17:46
in which processes with non-zero exit signal are considered OK?
dogbert17 haha, that would be funny
AlexDaniel c: 2018.10,2018.10,2018.10,2018.10,2018.10,2018.10,2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604 17:47
committable6 AlexDaniel, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel, gist.github.com/0e53b98f98dc2f2df5...8bfaed6662
tbrowder ref spectests and pr #3142: 3 tests failing...investigating
AlexDaniel dogbert17: TAADAAAAAAAAAAAAAAAA
***fuck*** that bug 17:48
where is it
dogbert17 it makes things a bit more difficult
AlexDaniel actually, maybe it was fixed
dogbert17 when
AlexDaniel but we're testing 2018.10 so it's still there
anyway we should be able to bisect now 17:49
m: run ‘perl6’, ‘use NativeCall; sub strdup(int64) is native(Str) {*}; strdup(0)’ 17:51
camelia Could not open use NativeCall; sub strdup(int64) is native(Str) {*}; strdup(0). Failed to stat file: no such file or directory
The spawned command 'perl6' exited unsuccessfully (exit code: 1)
in block <unit> at <tmp> line 1
AlexDaniel m: run ‘perl6’, ‘-e’, ‘use NativeCall; sub strdup(int64) is native(Str) {*}; strdup(0)’
dogbert17 I'm reasonably certain that the bug was introduced after 2018.09
camelia ( no output )
AlexDaniel c: HEAD run ‘perl6’, ‘-e’, ‘use NativeCall; sub strdup(int64) is native(Str) {*}; strdup(0)’
committable6 AlexDaniel, ¦HEAD(2b52e0f): «»
AlexDaniel c: 2015.12 run ‘perl6’, ‘-e’, ‘use NativeCall; sub strdup(int64) is native(Str) {*}; strdup(0)’
committable6 AlexDaniel, ¦2015.12: «»
dogbert17 has been know to be wrong from time to time though :-)
AlexDaniel oh, so it has always been OK????
c: 2015.12 run ‘perl6’, ‘-e’, ‘exit 42’ 17:52
committable6 AlexDaniel, ¦2015.12: «The spawned process exited unsuccessfully (exit code: 42)␤ in block <unit> at /tmp/YpeQuSQlLe line 1␤␤ «exit code = 1»»
AlexDaniel so if it exits with non-zero exit code, then nooooo, the process exited unsuccessfully
but if it segfaults, then who cares, success!
dogbert17 yay
AlexDaniel c: HEAD my $p = run ‘perl6’, ‘-e’, ‘use NativeCall; sub strdup(int64) is native(Str) {*}; strdup(0)’; say $p.signal 17:53
committable6 AlexDaniel, ¦HEAD(2b52e0f): «11␤»
AlexDaniel github.com/rakudo/rakudo/issues/3149 17:56
anyway, why are we not bisecting?
bisect: 2018.09 2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
bisectable6 AlexDaniel, Using old=2018.09 new=2018.10 in an attempt to DWIM
AlexDaniel, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel, Bisecting by exit code (old=2018.09 new=2018.10). Old exit code: 0
dogbert17 oh
AlexDaniel by exit code because we exit with 43 from the runner 17:57
dogbert17 it has to be a bump commit
AlexDaniel haha yeah
sometimes it's not
dogbert17 we might get lucky
bisectable6 AlexDaniel, bisect log: gist.github.com/fe728bb33efeb349bf...9b2bb014fd
AlexDaniel, (2018-09-28) github.com/rakudo/rakudo/commit/28...768bd3bd4f
AlexDaniel ok, let's double check 17:58
c: 2018.09 2018.09 2018.09 2018.09 2018.09 2018.10 2018.10 2018.10 2018.10 2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
committable6 AlexDaniel, gist.github.com/e2f7d6bca0fceabbcb...eb46d383b8
AlexDaniel c: 2018.09,2018.09,2018.09,2018.09,2018.09,2018.10,2018.10,2018.10,2018.10,2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
committable6 AlexDaniel, Using file “bisecting-this.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel wrong file, committable6!!
dogbert17 nine suspected that the problem is (un)inline related
tobs AlexDaniel: under `sake test` every test errors with something like this gist.github.com/625415cfb5e9e80a65...8ac8dc6eae 17:59
committable6 AlexDaniel, gist.github.com/1e7233e1e03f7168f6...bb9cb71948
AlexDaniel c: 2018.09 2018.09 2018.09 2018.09 2018.09 2018.10 2018.10 2018.10 2018.10 2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
committable6 AlexDaniel, gist.github.com/48dbc493eba61da86b...570383b55f
AlexDaniel c: 2018.09,2018.09,2018.09,2018.09,2018.09,2018.10,2018.10,2018.10,2018.10,2018.10 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
committable6 AlexDaniel, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel ok
tobs: ooof… can you try running simply `xt/bisectable.t` ? 18:00
committable6 AlexDaniel, gist.github.com/45c4fd5e6bfead769b...d66fc0b258
AlexDaniel tobs: there are 18 bots and a bunch of test files, some tend to accumulate bitrot over time…
dogbert17: ah, we wanted not this, but… 18:01
c: 2840a296^,2840a296^,2840a296^,2840a296^,2840a296^,2840a296,2840a296,2840a296,2840a296,2840a296 gist.github.com/AlexDaniel/3d42b7a...5e43b51604
committable6 AlexDaniel, Using file “bisecter.p6” as a main file, other files are placed in “sandbox/”
AlexDaniel, gist.github.com/1fb698889d19c8519c...d6e428dc82 18:02
AlexDaniel dogbert17: ↑ that confirms that there's consistently no segfault before the bump and there is after 18:03
tobs AlexDaniel: that looks much cleaner. At some point it seems to stall with "/tmp/whateverable/rakudo-moar/2b52e0f55cf2e7d103ce173a052f78afd7bd15b9 is locked. Waiting…" though
have two screens full of this message now
AlexDaniel we spammed this channel to hell but we bisected it in the end and hopefully learned a few things along the way :) 18:04
tobs: rm -rf /tmp/whateverable/rakudo-moar/2b52e0f55cf2e7d103ce173a052f78afd7bd15b9
tobs: or even: rm -rf /tmp/whateverable/rakudo-moar/
dogbert17 AlexDaniel, many thanks 18:05
AlexDaniel tobs: back when rakudo wasn't relocatable, installing to /tmp was a hack to make things usable for different systems
tobs: the downside is that if more than one bot attempts to use the same build, they'd both try to extract it to the same path
tobs: and because for example bisectable will touch a bunch of builds, they're immediately nuked to save space and stuff 18:06
tobs: and of course we can't just keep using the build if it's already there, because another process can nuke it while we're doing so
tobs AlexDaniel: I nuked the whole /tmp/whateverable. Maybe I shouldn't have? Now it waits "Attempting to fetch $hex" 18:07
AlexDaniel tobs: so that's why locally (for you) only one bot can use 1 build at a time… and if you kill a bot or if it crashes, then these builds are left behind and you have to remove them manually 18:08
tobs AlexDaniel: I see, that explains a lot.
AlexDaniel tobs: for *ables on this channel it doesn't matter, because they all have private /tmp that's nuked whenever the service is restarted
tobs: as for `Attempting to fetch`, the message should be changed perhaps. Because it's actually fetching, most of the time, not just attempting :) 18:09
tobs: do you have zstd and lrzip installed?
tobs not lrzip, but in a second I will
AlexDaniel zstd achieves a much higher compression rate than anything else, and lrzip even more in case you put more than one build into the same archive 18:10
tobs and now it makes progress :)
AlexDaniel nowadays zstd also has a long range mode, but it didn't when these bots were created 18:11
I'm interested in repacking lrzip archives with zstd
tobs AlexDaniel: do you know what creates these "#LWP6-Cookies-0.1" files? My /tmp is now full of them, I suppose because of crashed processes. Maybe that can be PRd to put temporary files in a more easily-nukable directory? 18:15
oh no, it failed again before reaching the relevant tests, leaving the rakudo-moars locked 18:18
AlexDaniel: gist.github.com/2206168fe82e899b0c...471b83f2d5 Any thoughts? Looks testing-framework related? 18:20
AlexDaniel tobs: hmmm 18:28
tobs: what about doing another run? The test framework actually takes into account the time it takes to download any build, so it should not affect any test… but still, what if you try again? 18:30
tobs will do
AlexDaniel tobs: everything useful is stored in data/ so you should feel free to nuke the /tmp thing
dogbert17: btw are you going to leave a comment on that ticket? 18:32
dogbert17: maybe with a link to the gist we used to bisect it, might come handy later 18:33
dogbert17 AlexDaniel, I will comment 18:38
tobs AlexDaniel: success! 18:39
AlexDaniel tobs: yesss! 18:43
18:46 bisectable6 left 18:47 BeastieBot left, BeastieBot joined 18:51 bisectable6 joined, ChanServ sets mode: +v bisectable6
AlexDaniel bisectable6: 2018.09 2018.10 say 42 18:51
bisectable6 AlexDaniel, Using old=2018.09 new=2018.10 in an attempt to do what you mean
AlexDaniel, On both starting points (old=2018.09 new=2018.10) the exit code is 0 and the output is identical as well
AlexDaniel, Output on both points: «42␤»
AlexDaniel tobs++
tobs \o/ and thanks for the assistance 18:52
AlexDaniel tobs: if you'd like to do more hacking on whateverable I'd be happy to help more, there are many tickets here: github.com/perl6/whateverable/issues 18:55
tobs I was thinking about adding dependencies on zstd and lrzip :from<native> to META6.json next, but it doesn't seem that zef complains when they are absent? 18:57
AlexDaniel tobs: yeah… but maybe we can have a test instead? 18:58
tobs Those are a lot of issues! I'm generally interested and the whateverable code is so nice-looking, but today evening is already allocated :) 18:59
AlexDaniel tobs: that being said, not all bots strictly require lrzip and zstd
tobs aha, right 19:00
AlexDaniel and breaking them up into 18 different installable things may not be the most wonderful idea
and yeah, very often it's a joy to work on it. The code was refactored several times but there's still some room for improvement :) 19:01
jnthn: ah btw 19:03
sleep &
???
tobs I see Running.pm6 checks for availability too. Earlier I had a silent hang when I didn't have it installed... I think I've seen similar things with an IRC::Client where an exception is thrown in a different thread or so. Maybe I'm misinterpreting what I saw, but the process continued to run but wouldn't function anymore. Ctrl+C would reveal that an exception occurred...
AlexDaniel jnthn: ↑ now you can say these things without triggering evalable6 :)
tobs: that's true, and I wonder if we can fix it once and for all 19:05
tobs: if you look at this bit here: github.com/perl6/whateverable/blob...m6#L47-L62
tobs: it actually wraps around most of the code to catch exceptions, and it'll gist the backtrace and send it on irc 19:06
tobs: but I'm pretty sure that doesn't work if you return a Promise (like by using `start {}`)
tobs: and here it checks if it's not a promise: github.com/perl6/whateverable/blob...le.pm6#L55 19:07
so what if we add some code there 19:09
if we got a promise, then do something like start { my $r = await $promise; if $promise.broken { do cool stuff here } }
actually, that's what this piece was supposed to do?? github.com/perl6/whateverable/blob...m6#L56-L59 19:10
but it doesn't work
tobs weeI thought await would propagate the exception
yeah... 19:11
AlexDaniel “try return await but” not the most straightforward way to write the thing…
and why does it need a `sub` there, hmm 19:12
is it to improve the backtrace or something
anyway if you fix that, then it'll improve all bots :) 19:13
tobs m: say await (start sub { 42 }) 19:20
camelia sudo: /home/camelia/rakudo-m-inst/bin/perl6-m: command not found
tobs e: say await (start sub { 42 })
evalable6 sub { }
tobs e: say await (start { sub { 42 }() } )
evalable6 42
tobs AlexDaniel: ^ I think this may be it. `start sub {}` returns a sub instead of running the sub and returning the result 19:21
AlexDaniel but “}()” ? 19:23
isn't it supposed to run it?
tobs oh, I overlooked that 19:24
AlexDaniel oh, and the `sub` is there so that we can `return`
but we should really test if this doesn't work 19:27
because maybe it does
maybe the issue when no lrzip is installed is coming from something else 19:28
19:44 pamplemousse joined
tobs I'll try to trace the problem down tomorrow. 20:12
AlexDaniel thanks :) 20:23
20:53 AlexDaniel left 20:54 AlexDaniel joined, AlexDaniel left, AlexDaniel joined
jnthn AlexDaniel: Ah, nice, now I won't have to remember (and fail to remember :)) not to do that :) 21:00
tellable6 2019-08-25T17:07:18Z #perl6-dev <vrurg> jnthn I have replied about bootstrap relations. If you have no objections to the approach, I'll merge it today.
AlexDaniel jnthn: I'm sure you'll find a new way :D 21:04
one that is still not fixed
m:g does multiple matches, and <( )> set the limits of the matching # github.com/perl6/whateverable/issu...-447962359
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/DlVn6O64MC
Two ter…
AlexDaniel, Full output: gist.github.com/ce31a8ce4fac4cadfa...b3eaf4c1c2
AlexDaniel at least that one is not too surprising because hey, there's a m: command right there 21:05
tbrowder whoa, who just gave me membership in moarvn? 21:16
*vm?
AlexDaniel tbrowder: you're part of GSoC 2019 team 21:20
jnthn vrurg: I commented; I'm fine with everything except the NULL.c etc. which feel odd, in so far as NULL is just meant to mean "there is no setting" 21:48
tbrowder hm, i just saw the joining email with today's date
vrurg jnthn: this how it was done by zoffix. NULL.d meant 'nothing but set CORE.c my outer' 21:49
jnthn Ah. Hm.
OK, I wasn't aware of that.
vrurg So, NULL.c would mean totally same thing as NULL. But it would require special dancing around makefile template.
jnthn In which case, I dislike it, but there's no point holding back your PR based on something it isn't responsible for making worse :)
I don't think NULL.<rev> should exist at all :) 21:50
NULL was meant to mean "don't load any setting"
vrurg jnthn: Maybe with more spare time on my hands I'd get this changed. But for now...
jnthn Yeah, can go as a separate PR. I hadn't realized it existed before your PR. 21:51
vrurg Ok, I fix the .gitgnore content and merge it. Thanks jnthn !
jnthn I guess it'll take a while to re-wire the muscle memory of src/core/Foo.pm :) 21:53
vrurg jnthn: Shall I also moved BOOTSTRAP/EXPORTHOW from Per6/bottstrap.<rev> into core.<rev>? 21:54
*move
jnthn vrurg: I hope it's spelled bootstrap ;) But I'm happy with the structure in the PR
vrurg Ok. Another thing: PR strips off $=finish $?PACKAGE ::?PACKAGE EXPORT GLOBALish from CORE.d and CORE.e. Do we need them there? 21:56
I didn't find them to be used.
jnthn Hm...don't think it hurts either way 21:57
I'm surprised you can strip them off though, in that I thought the compiler stuck them in place
For all comp units
But yeah, they don't have any use, afaik. Everything CORE.setting provides to the program is provided lexically
vrurg Not really. World does it in what is currently comp_unit_stage1 method.
Actually, what happens is: previously CORE.d and CORE.e were compiled more or less like decent units. Now they're being considered more corish, to say. CORE.setting never had those, if memory serves me right. 21:59
22:12 chloekek left
Geth nqp: afa965cd0e | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/templates/MOAR_REVISION
[MoarVM Bump] Brings 9 commits

MoarVM bump brought: github.com/MoarVM/MoarVM/compare/2...ga9b44444d a9b44444d Merge pull request #1162 from MasterDuke17/jit_some_num_ops e54cf70d1 Merge pull request #1157 from deven/execstack ae5a385e8 Merge pull request #1160 from ZhongnianTao/master 10404ee5a Jit some num ops ... (5 more lines)
22:18
rakudo: 190e84bb76 | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/templates/NQP_REVISION
[NQP Bump] Brings 6 commits

NQP bump brought: github.com/perl6/nqp/compare/2019....gafa965cd0 afa965cd0 [MoarVM Bump] Brings 9 commits 5fb8113c2 [js] Make nqp::decont_s work on nqp str a70b135dc [js] Noop stderr/stdout instead of failing bdf722467 [JVM] Decontainerize in param unboxing 051cbec2b [JVM] Factor out some duplicated code 670400e62 [JVM] Handle null arguments in multicache
roast: 1570e03a5b | (Aleks-Daniel Jakimenko-Aleksejev)++ | spectest.data
Revert "Oops, merged tests too soon."

This reverts commit 8b0db37e6ca19fec569efc51bee9b4207f588413.
22:21
tbrowder t
ref =finish
i think its data for acompunit is expected to be available, but it's NYI 22:22
that may not apply to that pr, though 22:23
vrurg AlexDaniel: I'm going to re-revert the gb18030 test really soon. Should be ok to merge related rakudo's PR with this moar bump.
AlexDaniel vrurg: ah oops?
vrurg: I already reverted roast, forgot about rakudo PR. I guess it's good to go? 22:24
vrurg AlexDaniel: It is good, I tested it yesterday with moar HEAD. 22:25
Geth rakudo: 4cee2c3644 | ZhongnianTao++ | 2 files
Add GB18030 to the encoding lists
rakudo: 636888c694 | (Aleks-Daniel Jakimenko-Aleksejev)++ (committed using GitHub Web editor) | 2 files
Merge pull request #3135 from ZhongnianTao/master

Add GB18030 to the encoding lists
vrurg Ok, now I have to re-run all tests with this bump. Thank you, Alex! :p :D 22:27
AlexDaniel vrurg: had to be done :P 22:28
vrurg Could have been done an hour later, perhaps! (I'm grumbling...) :) 22:29
MasterDuke i'm loving this new cpu, can build moarvm, nqp, and rakudo plus run nqp's tests and rakudo's all in ~5min 22:32
vrurg BTW, anybody has an idea why `nqp::getcomp('perl6').language_version` could sometimes return wrong version? 22:33
MasterDuke: what did you get?
22:34 pamplemousse left
AlexDaniel MasterDuke: nice, maybe we should force you to run blin :P 22:34
MasterDuke ryzen 3700x
AlexDaniel oooh
ok, circleci is not happy 22:35
vrurg MasterDuke: heh... What's you parse time for CORE? 22:40
MasterDuke 36s 22:41
vrurg 20% faster than my macbook. Wow... 22:42
I'm is considering building a dedicated home linux server. But want more cores in it. But it'd cost me... :) 22:43
MasterDuke the cpu+mb+32gb ram was ~$650. 8 physical cores, 16 virtual. faster, quieter, cooler, less power, more cores than what i had before 22:46
vrurg I was considering threadripper series. 16/32 version. Otherwise it won't make sense with my 8/16/32GB macbook. 22:50
AlexDaniel so circleci is broken? 22:51
MasterDuke yeah, those would be great. but i was really prioritizing lower power/cooler, so had to give them a pass
broken how?
AlexDaniel badly 22:52
:)
circleci.com/gh/rakudo/rakudo/1945...build-link
it was like this before my bump, but now *I* am getting emails :D
vrurg m: module Foo { our module Bar { our $bar; } }; say Foo::{"Bar"}::.keys 22:56
camelia sudo: /home/camelia/rakudo-m-inst/bin/perl6-m: command not found
vrurg oops... of course... 22:57
AlexDaniel try e: or no command at all
module Foo { our module Bar { our $bar; } }; say Foo::{"Bar"}::.keys 22:58
e: module Foo { our module Bar { our $bar; } }; say Foo::{"Bar"}::.keys
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/hcSdfzobcu
Confuse…
AlexDaniel, Full output: gist.github.com/3ee82a4ebab2669085...5733995986
vrurg e: module Foo { our module Bar { our $bar; } }; say Foo::{"Bar"}::.keys 23:00
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/xzq00r6nY_
Confuse…
vrurg, Full output: gist.github.com/3144b14e92f24c928d...8a9c212c7d 23:01
vrurg Same everywhere. I guess this syntax must work, mustn't it?
AlexDaniel e: module Foo { our module Bar { our $bar; } }; say Foo::("Bar")::.keys 23:02
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/d4g6wKSqWu
Combina…
AlexDaniel, Full output: gist.github.com/dd3d3b6fd7a20298ac...f0a17312b5
AlexDaniel e: module Foo { our module Bar { our $bar; } }; say Foo::("Bar") 23:03
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/S7sXDcZWTh
Combina…
AlexDaniel, Full output: gist.github.com/d8bdd0f55603c6ca23...7d81fc3bac
AlexDaniel ah, {"Bar"} actually works 23:04
I see
vrurg AlexDaniel: PseudoStash isn't invokable, () won't work on it.
Perhaps would make sense to make it invokable to sumulate conistent behavior to ::("Module"). But not sure if worth it. 23:06
23:09 lucasb left
vrurg A line from 2019.07 changelog: "Added the `CachedIterator` role" – but the symbol is nowhere to be found. 23:20
23:27 travis-ci joined
travis-ci Rakudo build failed. Aleks-Daniel Jakimenko-Aleksejev '[NQP Bump] Brings 6 commits 23:27
travis-ci.org/rakudo/rakudo/builds/576574542 github.com/rakudo/rakudo/compare/2...0e84bb7603
23:27 travis-ci left
AlexDaniel vrurg: heh… :) 23:35
vrurg AlexDaniel: I'm improving tests for symbols in cores, now detecting missing ones. Should help avoiding such situations. 23:38
Do know what happened to CachedIterator?
AlexDaniel vrurg: uhh but isn't it already there? 23:42
looking at the commits
github.com/rakudo/rakudo/commit/94ba19f7e5ece github.com/rakudo/rakudo/commit/a4d38539f82195
so there are some tests already
vrurg commit 636888c69455c3a2e6cc8f6ea72ee372ebfdaa35 (HEAD -> master, origin/master, origin/HEAD) 23:43
AlexDaniel IIRC the point of these tests was that anything that's exposed but not on that list should trigger a test failure
so that we're not exposing stuff by accident
vrurg ⇒ grep -r 'CachedIterator' -141- 25-08-19 19:43:21 [master]
docs/announce/2019.07.md: + Added the `CachedIterator` role for creating iterators on cached
docs/ChangeLog: + Added the `CachedIterator` role for creating iterators on cached
t/08-performance/03-corekeys-6e.t: Q{CachedIterator},
t/08-performance/03-corekeys-6c.t: Q{CachedIterator},
AlexDaniel huh, indeed… 23:44
why are these tests in 08-performance
I'm so confused
and why are these tests not checking for a 1-to-1 match 23:45
i.e. if something is not found, why is it not triggering an error
vrurg: github.com/rakudo/rakudo/commit/09...88b7a43c04 23:46
the changelog is wrong
and I missed the revert 23:47
vrurg I guessed it to be something like this. The 1-to-1 match is probably my failure. I think it was there, but I removed it temporarily.
Anyway, getting it back now. 23:48
AlexDaniel also please move that file the f out of 08-performance :D
02-rakudo is fine
vrurg: nice catch! 23:49
vrurg AlexDaniel: you mean *keys tests? It's now 7 files on my side: 3 for each SETTING:: and CORE:: and one for CORE::v6<rev>::. 23:50
AlexDaniel vrurg: yes 23:51
vrurg Ok, I'll move them. As long as it is a big directory structure overhaul anyway...
AlexDaniel well, they're not related to rakudo performance, right? Definitely not, so overhaul or not they need to be moved…
23:52 Kaiepi left
AlexDaniel that's a really great test file though, I wish we had more checks like this 23:52
vrurg AlexDaniel: we will with time. I'm sure. 23:56
And yes, I was always wondering why is it in performance?
AlexDaniel vrurg: it's a lot of work, I'm not sure how to approach it. Maybe first we decide on the directory structure and move the files roughly into appropriate places, and then think how to move the actual tests… 23:58