ugexe AlexDaniel: because 0.0.4..* is not a real version range 00:14
if you get an error for that module its because you have an old version installed from before it was fixed
AlexDaniel ah. Ok! 00:15
Zoffix So what's the maximum size of atomicint? 00:37
m: my atomicint $x; say $x.Range # seems broken 00:38
camelia Invocant of method 'Range' must be a type object of type 'Int', not an object instance of type 'Int'. Did you forget a 'multi'?? in block <unit> at <tmp> line 1??
Zoffix 64bit. OK 00:39
.in 6hr fix Test.pm, bruh 00:40
yoleaux Zoffix: I'll remind you at 06:40Z
Zoffix s/fix/improve/; Gonna make test count incrementer atomic, so that tests are thread-safier 00:41
Zoffix drops to bed
AlexDaniel ah yeah, I noticed it this issue too 00:42
/it// 00:43
samcv when did atomicint get added? is there atomicInt? 00:53
AlexDaniel about two days ago: 9b1e252a 00:57
github.com/rakudo/rakudo/commit/9b1e252a
geekosaur not sure atomicInt makes sense 00:59
"atomic" being by definition a fairly low level detail
[Coke] Zoffix++ fixing xtest 02:31
TimToady that's a weird failure, 'cuz the line I added says: self.?MARKED('ws'); 03:39
yoleaux 18 Aug 2017 23:19Z <AlexDaniel> TimToady: Perhaps take a look at this failing test: github.com/tadzik/Grammar-BNF/blob...bnf.t#L400 And here's some sample output: gist.github.com/AlexDaniel/7e6ebb6...93fd004b48
TimToady perhaps .? doesn't interact well with FALLBACK somehow?
testing a patch 03:51
Grammar-BNF tests out with it, just running the full spectest to be sure 03:52
Geth rakudo/nom: e3e29c595c | TimToady++ | src/core/Grammar.pm
use "try .MARKED" instead of ".?MARKED"

The .?MARKED form apparently gives heartburn when there's a FALLBACK. Since we're just using it to generate an error message outside of any hot path, we'll upgrade it to use a try.
03:59
TimToady AlexDaniel: ^^^ fix for the Grammar-BNF thing 04:00
travis-ci Rakudo build passed. TimToady 'use "try .MARKED" instead of ".?MARKED" 04:28
travis-ci.org/rakudo/rakudo/builds/266195758 github.com/rakudo/rakudo/compare/1...e29c595c65
AlexDaniel alright, gonna take a nap 04:31
[Coke] .seen samcv 04:46
yoleaux I saw samcv 00:53Z in #perl6-dev: <samcv> when did atomicint get added? is there atomicInt?
samcv hi
ok i've debugged more info about the \r\n failure... so what is different in this case 04:50
it's trying to concat "\r" ~ "\n", and both of those strings a: "\r" and b: "\n" are both strands with only one strand
which is really odd.... that's not supposed to happen
so they're strands but it's jsut 1 strand not more than one strand in the string 04:51
AlexDaniel .tell lizmat There was a mention of Junction.Str change again: irclog.perlgeek.de/perl6-dev/2017-...i_15039681 I wonder if we should ship 2017.08 with it. What do you think?
yoleaux AlexDaniel: I'll pass your message to lizmat.
AlexDaniel goes back to his nap 04:52
samcv ok so those strands are actually substrings, substrings of a larger string that's 5 long. hmm
BenGoldberg m: my atomicint $x = 42; say $x; 05:30
camelia 42?
BenGoldberg m: my atomicint $x = 42; say $x ?+=> 3;;
camelia 5===SORRY!5=== Error while compiling <tmp>?Preceding context expects a term, but found infix > instead?at <tmp>:1?------> 3my atomicint $x = 42; say $x ?+=>7?5 3;;?
BenGoldberg m: my atomicint $x = 42; say $x ?+= 3; 05:31
camelia 45?
BenGoldberg m: my atomicint $x = 0; await (start { $x ?+= 1 for ^100 } xx 100 ); say $x; 05:49
camelia 10000?
BenGoldberg m: my $x = 0; await (start { $x ?+= 1 for ^100 } xx 100 ); say $x;
camelia Tried to get the result of a broken Promise? in block <unit> at <tmp> line 1??Original exception:? Cannot resolve caller infix:<?+=>(Int, Int); none of these signatures match:? (atomicint $target is rw, int $add --> atomicint)? …
BenGoldberg m: my $x = 0; await (start { $x += 1 for ^100 } xx 100 ); say $x;
camelia 8316?
robertle :wq 06:37
yoleaux Zoffix: fix Test.pm, bruh 06:40
Geth tap-harness6/preprocess: 6 commits pushed by (Leon Timmermans)++ 09:17
Skarsnik releasable6, status 09:27
releasable6 Skarsnik, Next release in ?9 hours. 2 blockers. 195 out of 202 commits logged 09:28
Skarsnik, Details: gist.github.com/ef49808521ca3c8f24...1afb394095
lizmat . 09:37
yoleaux 04:51Z <AlexDaniel> lizmat: There was a mention of Junction.Str change again: irclog.perlgeek.de/perl6-dev/2017-...i_15039681 I wonder if we should ship 2017.08 with it. What do you think? 09:38
lizmat AlexDaniel: didn't get enough tuits to finish that, will revert the changes so far and reapply after the release
so it appears we're not going to revert the failing Match now returning Failure patch ? 09:39
nine lizmat: AFAIK it's still the plan to revert it 09:42
lizmat ah, ok, +1 on reverting, *or* activating it only with use 6.d-PREVIEW
nine Is there a way to check if the caller runs with 6.d-PREVIEW? 09:46
lizmat m: use 6.d-PREVIEW: dd $*PERL 09:47
camelia 5===SORRY!5=== Error while compiling <tmp>?Undeclared routine:? use used at line 1??
lizmat m: use 6.d-PREVIEW; dd $*PERL
camelia 5===SORRY!5=== Error while compiling <tmp>?Undeclared routine:? use used at line 1??
lizmat hmmm
nine It's v6.d.PREVIEW 09:48
lizmat m: use v6.d.PREVIEW; dd $*PERL
camelia Perl Perl 6 = Perl.new(compiler => Compiler.new(id => "67C4939268B9E13F861B4386965CA02FC423E692.1503117019.9158", release => "", codename => "", name => "rakudo", auth => "The Perl Foundation", version => v2017.07.202.ge.3.e.29.c.595, signature => Blob, …
lizmat m: use v6.d.PREVIEW; say $*PERL 09:49
camelia Perl 6 (6.d)?
lizmat m: say $*PERL
camelia Perl 6 (6.c)?
lizmat nine: ^^
nine But that's only for the current computation unit
lizmat m: say $*PERL ~~ v6.x
camelia False?
lizmat m: say $*PERL ~~ v6.c 09:50
camelia False?
nine m: say $*PERL.version;
camelia v6.c?
lizmat m: say $*PERL.version ~~ v6.c
camelia True?
lizmat m: use v6.d.PREVIEW; say $*PERL.version ~~ v6.d
camelia True?
Geth rakudo/nom: afa8fc1cfd | (Elizabeth Mattijsen)++ | src/core/Junction.pm
Revert partial work on concatting Junctions for release

To be reinstated after 2017.08 and completed then.
10:01
nine As it is now $*PERL6.version is completely useless. It gets changed with use v6.d.PREVIEW but does not get reset for new computation units. 10:04
Which confusingly even makes sense as $*PERL6 is a dynamic variable, not a compile time constant 10:05
lizmat m: say $*PERL; { use v6.d.PREVIEW; say $*PERL }; say $*PERL # indeed :-(
camelia Perl 6 (6.d)?Perl 6 (6.d)?Perl 6 (6.d)?
nine There's $?LANG but that gives you Perl6::Grammar which does not seem to give you any version information. 10:06
Though I guess that would be the right place to store it.
With 859 methods (one of them called "version") it's a bit of a crowded namespace however. 10:07
lizmat m: use nqp; say nqp::where($?LANG); { use v6.d.PREVIEW; say nqp::where($?LANG) }; say nqp::where($?LANG) # sigh 10:08
camelia 140216849105776?140216849432240?140216849515104?
lizmat so apparently the grammar *after* the block is different from the one before the block ? 10:09
nine m: use nqp; say nqp::objectid($?LANG); { use v6.d.PREVIEW; say nqp::objectid($?LANG) }; say nqp::objectid($?LANG)
camelia 47476608?47476752?47476896?
nine m: use nqp; say nqp::objectid(nqp::decont($?LANG)); { use v6.d.PREVIEW; say nqp::objectid(nqp::decont($?LANG)) }; say nqp::objectid(nqp::decont($?LANG)) 10:10
camelia 54898880?54899024?54899168?
nine seems very much so
$?LANG gives you the cursor at that point 10:11
So it's also only available in scopes that actually use the variable. So no use in checking your caller's language
samcv AlexDaniel, i fixed the release blocker 10:14
time to run spectest 10:15
that was really hard to find... so what it was doing AlexDaniel is that it noticed the last strand of string a and first strand of string b were the same, and it was increasing the repetitions and calling it a day 10:18
and ditched the renormalized section, and that was obviously not the same tunder normalization
Geth rakudo/nom: 34295c152f | (Elizabeth Mattijsen)++ | docs/ChangeLog
Remove Junction.Str changes from the Changelog

This is going to be for the next release.
10:21
timotimo samcv: glad you found it 10:26
samcv yeah i was going crazy
to be honest
timotimo i can imgaine
samcv and that's why it only happened when you precompiled a module i guess 10:27
or not. idk. but that's the only way we've been able to trigger it. so
now that i know what triggers it i could probably come up with it myself
my $a = "\n\r"; $b = "\n\r; say ($a ~ $b).chars 10:29
m: my $a = "\n\r"; $b = "\n\r; say ($a ~ $b).chars
camelia 5===SORRY!5=== Error while compiling <tmp>?Variable '$b' is not declared?at <tmp>:1?------> 3my $a = "\n\r"; 7?5$b = "\n\r; say ($a ~ $b).chars?
samcv m: my $a = "\n\r"; my $b = "\n\r; say ($a ~ $b).chars
camelia 5===SORRY!5=== Error while compiling <tmp>?Cannot use variable $b in declaration to initialize itself?at <tmp>:1?------> 3 $a = "\n\r"; my $b = "\n\r; say ($a ~ $7?5b).chars? expecting any of:? postfix? term?
samcv m: my $a = "\n\r"; my $b = "\n\r"; say ($a ~ $b).chars
camelia 3?
samcv oh yeah. a needs to be a strand 10:30
m: my $a = "a" ~ "\n\r"; my $b = "\n\r"; say ($a ~ $b).chars
camelia 4?
AlexDaniel samcv: it was an old bug, right?
samcv no recent
that was incorrect thing i said before
AlexDaniel okay 10:31
samcv though i'd like to see if i can trigger it without a module
AlexDaniel samcv++, just woke up to these great news :)
samcv string a's last strand needs to be the same as the first strand of string b
m: my $a = "a" ~ "\n\r"; my $b = "\n\r" ~ "a"; say ($a ~ $b).chars
camelia 5?
samcv m: my $a = "a" ~ "\n\r"; my $b = "\n\r" ~ "a"; say ($a ~ $b) eq ($a ~ $b).NFC.Str 10:32
camelia True?
AlexDaniel lizmat++ for reverting the Str.Junction
Junction.Str* :)
re “so it appears we're not going to revert the failing Match now returning Failure patch ?”
dogbert17 anyone ever seen this? 10:33
Unable to call postcircumfix $bt[ (Any) ] with a type object
Indexing requires a defined object
in block <unit> at t/spec/S03-operators/set_precedes.t line 29
lizmat dogbert17: can't say that I have
dogbert17 try running that file a couple of times with MVM_SPESH_NODELAY=1 10:34
samcv m: my $a = “: ” ~ "\n\r"; my $b = "\n" ~ "\r"; say ($a ~ $b) eq ($a ~ $b).NFC.Str
camelia True?
samcv goddamit
that should be exactly the same
lizmat dogbert17: after about 20 runs I got: 10:35
Unable to call postcircumfix $bt[ (Any) ] with a type object
Indexing requires a defined object
in block <unit> at t/spec/S03-operators/set_precedes.t line 59
dogbert17 so I'm not alone :-) 10:36
lizmat so, different line number
nope
samcv string a, 2 strands. strand_1 2 graphemes long strand_2 2 graphemes long. text: ": \n\r"; string b 2 graphemes long, strand_1 1 graphemes long, strand_2 1 graphemes long. text: "\n\r"
lizmat not sure this is a release blocker, though
dogbert17 yeah, it can differ
probably not
AlexDaniel I was thiking about it a lot. I think we have to revert it. Just yesterday I was only able to fix a few modules that were clearly burned, and it's rather evident that there's a significant fallout in the ecosystem. We will get more ready for the next release (2017.09, 6.d, or both. Just not 2017.08, sorry) 10:38
samcv: did you sleep today? :) 10:39
dogbert17 lizmat: it's possible to get several spectests to fail in different ways if that flag is set. On the other hand, not many people do that :-) 10:40
AlexDaniel samcv: I don't know what timezone you're in, but fwiw, we can slow things down to fix remaining issues 10:41
lizmat dogbert17: since _NODELAY is supposed to make things more stable / reproducable, and it appears to happen only when that is set
samcv np 10:42
lizmat dogbert17: my first guess would be a problem in the _NODELAY code ?
AlexDaniel releasable6: status 10:43
releasable6 AlexDaniel, Next release in ?8 hours. 2 blockers. 190 out of 204 commits logged
AlexDaniel, Details: gist.github.com/3fae8df1addefe2599...c8f8805349
dogbert17 8 hours ... 10:44
samcv ok i pushed the fix to MoarVM. if someone can bump. i'm going to bed now 10:45
i've written tons of debugging functions. and the fix is only like two words
AlexDaniel dogbert17: ? Any problems?
samcv oh well. i will save them for another time
i have a bunch that i didn't push yet and will save those too
AlexDaniel dogbert17: if you can golf down the issue in set_precedes.t, we can try throwing it into bisectable 10:53
dogbert17 AlexDaniel, difficult to say, dunno if test failures with an obscure flag set counts
AlexDaniel dogbert17: it does. We can use committable with MVM_SPESH_NODELAY 10:54
lizmat nine: I was going for this change:
- return Nil unless self.defined;
+ return Nil unless self.defined || $*PERL.version > v6.c;
AlexDaniel commit: MVM_SPESH_NODELAY=1 HEAD say 42
committable6 AlexDaniel, ¦HEAD(34295c1): «42»
dogbert17 I have tried to golf it (briefly) but it has a tendency to disappear when I reduce the code size
lizmat but alas, Version isn't known at that time in the setting, and stubbing it doesn't work either as it tries to instantiate
AlexDaniel dogbert17: just put whatever you have in a gist and we'll see 10:55
dogbert17 AlexDaniel: aha, so you can set these flags with your bots, hmm
lizmat nine: trying to move up Version in the setting compilation 10:56
AlexDaniel dogbert17: I didn't add it to bisectable yet, but I'll bisect manually with committable, no problem :) 10:57
lizmat alas, this looks like it pulls the lid off of pandora's box
jnthn dogbert17: Probably wise to use MVM_SPESH_BLOCKING=1 together with MVM_SPESH_NODELAY=1 10:58
Those flags together stress spesh pretty hard
AlexDaniel jnthn: wait, what's MVM_SPESH_BLOCKING 10:59
jnthn Note that we hadn't used to even make it from the NQP/Rakudo *build* with MVM_SPESH_NODELAY
AlexDaniel jnthn: ? github.com/rakudo/rakudo/wiki/dev-env-vars
jnthn AlexDaniel: Was introduced during my recent spesh work. In normal use, threads log types and other info they encounter in a buffer, and send that off to the spesh worker thread. The worker thread makes specializations and JIT compiles in the background and installs them when they're ready. 11:00
AlexDaniel: With the flag, the thread that sent the buffer blocks until spesh has donne its work
AlexDaniel jnthn: cool, maybe you can add it to that page? 11:01
jnthn AlexDaniel: Which means you can get reproducable results
dogbert17 m: gist.githubusercontent.com/dogbert...tfile1.txt
camelia 5===SORRY!5=== Error while compiling <tmp>?Confused?at <tmp>:1?------> 3https:7?5//gist.githubusercontent.com/dogbert17/4? expecting any of:? colon pair?
AlexDaniel c: HEAD gist.githubusercontent.com/dogbert...tfile1.txt
committable6 AlexDaniel, Successfully fetched the code from the provided URL.
AlexDaniel, ¦HEAD(34295c1): «ok 1 - we correctly have 2 elements in .list?ok 2 - .list contains correct items»
jnthn Anyway, I'm not *that* worried if a handful of things are unhappy under MVM_SPESH_NODELAY, 'cus a *lot* more of them used to be. ;-) 11:02
AlexDaniel c: MVM_SPESH_NODELAY=1 HEAD gist.githubusercontent.com/dogbert...tfile1.txt
committable6 AlexDaniel, Successfully fetched the code from the provided URL.
AlexDaniel, gist.github.com/72fd179907915c1208...40a7305051
nine lizmat: you _cannot_ rely on $*PERL.version for this
dogbert17 AlexDaniel: there's one
AlexDaniel c: MVM_SPESH_NODELAY=1 2017.07 gist.githubusercontent.com/dogbert...tfile1.txt
committable6 AlexDaniel, Successfully fetched the code from the provided URL.
AlexDaniel, ¦2017.07: «not ok 1 - we correctly have 2 elements in .list??# Failed test 'we correctly have 2 elements in .list'?# at /tmp/JximRAgb7E line 9?# expected: '4'?# got: '3'?ok 2 - .list contains correct items «exit code = 1»»
AlexDaniel c: MVM_SPESH_NODELAY=1 releases gist.githubusercontent.com/dogbert...tfile1.txt
committable6 AlexDaniel, Successfully fetched the code from the provided URL.
AlexDaniel, gist.github.com/6ecb19860bc7bd42f0...22c6da98a4 11:03
dogbert17 perhaps it's an old problem
AlexDaniel dogbert17: not new for sure :)
dogbert17 no blocker then :) 11:04
AlexDaniel lizmat: are you working on a better way to handle Grammar.parse thing or do I go with crude revert? 11:05
jnthn AlexDaniel: Added it to that page
AlexDaniel jnthn: thanks!
samcv night everyone o/
lizmat AlexDaniel: trying several options atm
AlexDaniel lizmat: alright
samcv: thank you very much for your work! Good night 11:06
jnthn Are there any known blockers in MoarVM? 11:07
I guess I should cut the release of that sometime in the near future :)
AlexDaniel jnthn: pretty sure samcv++ resolved it
dogbert17 c: MVM_SPESH_NODELAY=1 HEAD gist.githubusercontent.com/dogbert...tfile1.txt 11:08
committable6 dogbert17, Successfully fetched the code from the provided URL.
dogbert17, ¦HEAD(34295c1): «not ok 1 - Failure reports backtrace from its creation point.??# Failed test 'Failure reports backtrace from its creation point.'?# at /tmp/0iRNmWOmsu line 9 «exit code = 1»»
dogbert17 c: MVM_SPESH_NODELAY=1 2017.07 gist.githubusercontent.com/dogbert...tfile1.txt
committable6 dogbert17, Successfully fetched the code from the provided URL.
dogbert17, ¦2017.07: «ok 1 - Failure reports backtrace from its creation point.»
AlexDaniel though I wonder, do we want to run toaster before we release moarvm?
if so, maybe we want a little bump right now 11:10
jnthn AlexDaniel: It's up to you. I don't have a huge amount of spare time this weekend, but will have it in regular enough chunks that I can do the release at any point you're comfortable :)
AlexDaniel jnthn: alright, let's be safe, no need to rush. Zoffix said he'll run toaster in about 3 hours, so perhaps check back later today? Does that work for you? 11:12
jnthn Yeah, that'll be fine 11:14
AlexDaniel OK
what's the right way to generate a version for MOAR_REVISION file? 11:19
jnthn git describe
(ruin in the MoarVM directory) 11:20
uh, *run :)
nine lizmat: nine@sphinx:~/test/6d> echo 'class Foo { method foo() { say $*PERL.version } }' > Foo.pm
nine@sphinx:~/test/6d> perl6 -I. -e 'use v6.d.PREVIEW; use Foo; Foo.foo;'
v6.d
nine@sphinx:~/test/6d> perl6 -I. -e 'use Foo; use v6.d.PREVIEW; Foo.foo;'
v6.c
Geth nqp: 5ff5cdee00 | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/MOAR_REVISION
Bump MoarVM for string concatenation fixes
11:22
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...-g5363a074
AlexDaniel that's a bit more than just that :) 11:23
Geth rakudo/nom: 947376e216 | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/NQP_REVISION
Bump Moar/NQP for string concatenation and other fixes
11:25
rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....g5ff5cdee0
d2278b471c | (Elizabeth Mattijsen)++ | 4 files

and a failure in 6.d and higher. This is achieved by moving all of the new logic to a new file src/core.d/Grammar.pm which augments the existing Grammar.pm. In the original source, the call to .SETFAIL has become an optional call using .?SET-FAIL, which returns Nil in case the method doesn't exist (which it won't in 6.c). Which neatly matches the original failure value, so no further handling is needed.
lizmat m: HLL::Compiler.lineof(1,2) # so why does this work inside the setting and not outside ? 11:34
camelia Could not find symbol '&Compiler'? in block <unit> at <tmp> line 1??
lizmat jnthn: ^^^ this is now blocking an elegant solution for Grammar.parse returning a Failure 11:36
as this apparently doesn't work in 6.d.setting either (probably for the same reason)
jnthn uh, why would that work? 11:37
(in the setting)
No idea how it's leaking in
lizmat m: grammar A { token TOP { \d } }; dd A.parse("a") # makes use of it
camelia Failure.new(exception => X::Syntax::Confused.new(reason => "unknown", filename => "<anon>", pos => 0, line => 1, column => Any, modules => [], is-compile-time => 1, pre => "<BOL>", post => "a", highexpect => []), backtrace => Backtrace.new)?
jnthn nqp::getcomp('perl6').lineof(1,2)
lizmat oki
lizmat tries
Cannot call method 'lineof' on a null object # jnthn :-( 11:40
argh, typo 11:41
AlexDaniel: running spectest now for Grammar.parse returning Nil on 6.c and Failure on 6.d 11:42
AlexDaniel lizmat: awesome. Thanks
Skarsnik hm can I write warn X::MyExecption ? 11:52
Zoffix AlexDaniel: so, is it toaster time or is something needs to go in first?
yoleaux 02:25Z <[Coke]> Zoffix: you asked to split up CONTRIBUT* because it was too big, so I started on that with this. See github.com/perl6/doc/issues/1302
10:18Z <leont> Zoffix: I managed to fix the other Test.pm bug, will PR soon
Zoffix [Coke]: oh ok :)
lizmat AlexDaniel: ^^^
Skarsnik :m warn X::Bind; 11:53
m: warn X::Bind;
camelia Use of uninitialized value of type X::Bind in string context.?Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.? in block <unit> at <tmp> line 1?Warning: something's wrong? in block <unit> at <tmp> line …
Skarsnik m: warn X::Bind.new();
camelia Cannot use bind operator with this left-hand side? in block <unit> at <tmp> line 1?
AlexDaniel Zoffix: I'm looking at this last MoarVM commit and really don't know :D 11:54
in some cases even when were sure that things are looking innocent, bisectable later proved us wrong…
lizmat: thanks! 11:55
OK, let's be *extra* safe I guess
Zoffix Well, bump it then
AlexDaniel ya 11:56
Geth nqp: ee4cc96f41 | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/MOAR_REVISION
Pre-release MOAR_REVISION bump
11:58
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...-gf22f8d7c
rakudo/nom: 1455a03bfe | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/NQP_REVISION
Pre-release NQP_REVISION bump
rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....gee4cc96f4
ccf6da9e44 | (Elizabeth Mattijsen)++ | 3 files
AlexDaniel Zoffix: \o/ ready!
Zoffix ok, gonna start soon 11:59
lizmat is spectesting a change to Mixy.total-positive 12:00
AlexDaniel: is that ok to push if clean ?
AlexDaniel lizmat: as long as we run toaster with that commit in, yes
lizmat Zoffix AlexDaniel ^^^
Zoffix What about "a lot slower in roles"? 12:07
I mean private methods being a lot slower in roles. 12:08
lizmat Zoffix: lemme double check
Zoffix jvm: my atomicint $x = 1; $x?++; say $x 12:10
j: my atomicint $x = 1; $x?++; say $x
camelia java.nio.file.NoSuchFileException: /nqp/lib/Perl6/BOOTSTRAP.jar? in <anon> (gen/jvm/ModuleLoader.nqp:90)? in load_module (gen/jvm/ModuleLoader.nqp:77)? in <anon> (gen/jvm/CORE.setting)? in <anon> (gen/jvm/ModuleLoader.nqp:255)? in load_sett…
Zoffix dam
c: 7e4037 $*PERL.compiler.version.say 12:12
committable6 Zoffix, ¦7e4037: «v2017.07.172.g.7.e.4037245»
AlexDaniel does it have to work? I thought jvm stuff was busted anyway, am I wrong?
Zoffix Yeah, it's busted. I just have no idea whether I can use atomic ops in Test.pm...
...and I'll just use them anyway. 12:13
lizmat Zoffix: is that wise? I mean, it's getting closer and closer to ditching JVM as a backend completely :-( 12:15
Zoffix: testing some more, it looks like yes: it's now slower because it calls dispatch:<!> once every time you call .roll 12:17
but the good part of it is that this now actually is getting JITted (whereas before it didn't) 12:18
so in my benchmarks, it is only a few percent slower
Zoffix Well, the alternative is that we spend all the extra time on the backend no one appears to care about (I don't). 12:19
Zoffix points at irclog.perlgeek.de/perl6-dev/2017-...i_14482015 discussion
Well, my original fix did jack all to make Test.pm thread-safer so I guess the state of JVM is moot. 12:21
lizmat Zoffix: threadsafer in the sense you could do "ok" from multiple threads ? 12:22
Zoffix Yeah
lizmat Zoffix: and they wouldn't trample on each other?
ah... hhmmm
FWIW, I would keep that for after the release 12:23
but would be very much in favour of it, just not today :-)
afk for a bit& 12:24
Zoffix How come after release?
Ohh, OK, I see where I'm wrong 12:26
Even if it bumps test number atomically, the printing of it can still come out of order.
So I'd say thread-safe Testing is the job for a module (.oO( like Testo ))
(once it's finished :)) 12:27
Skarsnik I hate you git >< 12:36
Can someone push these change to NativeCall.pm and t/04-nc/18.t gist.github.com/Skarsnik/dfcba58ef...6f728ed5bb ? I tried to create a branch in my fork (there is other pending change) and do a PR but it added lot of merge commit and other reliquat 12:40
Zoffix BTW: <leont> It seems no one is running the spectest without having an installed perl6. It's failing on a plain checkout
There are at least 2 tests that fail and run `perl6` instead of `./perl6`, so they're testing the wrong perl 12:41
Skarsnik I ran make spectest on my chromebook without having installed rakudo on the system (but I did a make install without a prefix) 12:42
Zoffix And you had no failures? /me is dubious
lizmat afk for a few hours&
Zoffix Skarsnik: to avoid merge commits, git pull --rebase 12:43
As for changes, I'd guess they could wait to be pushed after today's release.
AlexDaniel wonders why would nqp release archive need a .gitignore file 12:44
MasterDuke re Test.pm and thread safety and floppers and lizmat's comment that the race conditions are probably in the tests. i ran one of the floppers (S11-modules/nested.t) directly in a loop for ~30m and never got a flop 12:45
Skarsnik Zoffix, I would have wanted it take the file from upstream and not tried to merge at all 12:46
AlexDaniel MasterDuke: github.com/tony-o/perl6-event-emitter/issues/10
Zoffix The Test.pm thread-safety I was talking about would only fix the "test out of order" error in harness. Nothing to do with floppers
Skarsnik Zoffix, Ho i get failure yes gist.github.com/Skarsnik/7f9836d34...72e41fc50b 12:47
Zoffix The t/spec/S29-os/system.t are the ones I know about; though I'd expected 2 test failures
$*EXECUTABLE.basename is "perl6" not "./perl6": github.com/perl6/roast/blob/master...#L117-L145 12:48
*** Error in `/home/cpan/toaster/build/nom/install/bin/moar': double free or corruption (!prev): 0x00007f889806cd90 *** 12:51
Seeing in toaster output
AlexDaniel ok that's interesting 12:52
“Untested, but it works in my head” XD 12:56
Geth rakudo: Skarsnik++ created pull request #1133:
Fix NativeCall signature check routine dieing on unsuported native type
13:01
Skarsnik_ Finally x) 13:02
AlexDaniel Zoffix: any news? :) 13:32
Geth rakudo/nom: 26287a191a | (Aleks-Daniel Jakimenko-Aleksejev)++ | docs/ChangeLog
Log remaining changes

Deliberately not logged: 1761f953 5e8d4613 93a5eff7 bd4094e2 a3c71e7d 7154638f 9e61827b 97f9eb7f 1599873d afa8fc1c 34295c15
13:47
AlexDaniel if somebody has strong opinion on “Internal:” section, please speak up 13:48
IMO it does not hurt to mention these changes, but we can delete the whole section altogether and it'll be alright 13:49
(maybe move some of them to “Efficiency:” while doing that)
Zoffix *** Error in `/home/cpan/toaster/build/nom/install/bin/moar': double free or corruption (!prev): 0x00007fbe9c089530 *** 13:51
*** Error in `/home/cpan/toaster/build/nom/install/bin/moar': double free or corruption (fasttop): 0x00000000055ae680 ***
AlexDaniel Zoffix: that's in some module or for the whole toaster? 13:52
Zoffix some module
buggable: toast 13:53
buggable Zoffix, Between 2017.07-208-gccf6da9 and 2017.07: 15 (1.75%) modules got burnt; 16 (1.86%) got unsucced; 229 (26.69%) out of 858 modules appear unusable. See toast.perl6.party/ for details.
AlexDaniel ok that looks a bit better
where did System::Passwd go? 13:54
Zoffix A bunch of fetch failures
AlexDaniel no
Zoffix It's still there
AlexDaniel github.com/dnmfarrell/System-Passwd/pull/12 here's a link to my pull request from yesterday
or did I submit a pull request for a wrong repo? 13:55
no, it's 404 indeed 13:56
should I transfer my fork to perl6-all-modules or something? 13:57
Zoffix He deleted all his modules looks like 13:58
huggable: eco author:dnmfarrell
huggable Zoffix, nothing found
Zoffix huggable: eco author:farrell 13:59
huggable Zoffix, nothing found
Zoffix You suck, robot
huggable: eco author:arrell
huggable Zoffix, nothing found
Zoffix oh wrong robot
buggable: eco author:farrell
buggable Zoffix, Found 7 results: App::jsonv, URI::Encode, Pod::Perl5, System::Passwd, Software::License. See modules.perl6.org/s/author%3Afarrell
Zoffix 4 of them are now 404s
yoleaux Zoffix: fix IRC::Client/Geth: irclog.perlgeek.de/perl6-dev/2017-...i_15024568 14:00
AlexDaniel most of the failures are because of that
MasterDuke if anyone is interested (nine perhaps?), when S11-modules/require.t flops, it dies on this line: `my $required-Test = (require Test <&plan &is &lives-ok &skip &todo &nok &throws-like &eval-lives-ok &ok>);` 14:01
nine MasterDuke: very much so 14:04
AlexDaniel can I have permissions for perl6-community-modules ?
Zoffix timotimo: ugexe lizmat moritz ^ 14:06
Zoffix isn't an "owner"
Well, I guess that's a good example of why our GitHub ecosystem sucks balls :) 14:07
moritz AlexDaniel: sorry, what's your github username again?
MasterDuke nine: fyi, i just created a log file at the very beginning of the test file and printed to it at various points to bisect where it was dying
AlexDaniel moritz: AlexDaniel
Zoffix: it feels like my pull request played some role in what just happened 14:08
Zoffix AlexDaniel: I'd guess the role is "This module sucks and I don't wanna maintain it anymore *delete*"
Unless it was some industrial accident >:) 14:09
AlexDaniel anyway, Passwd thingy is easily fixable
Zoffix AlexDaniel: looks like 5 modules are in github.com/moritz/perl6-all-module...dnmfarrell
AlexDaniel yea, I know, it's not unfixable 14:10
moritz: thanks
moritz: “You don’t have the permission to create repositories on perl6-community-modules” 14:11
MasterDuke nine, but if i remove all the tests except for a simple `ok 1`, it doesn't flop 14:13
AlexDaniel moritz: this way I can't transfer a module 14:14
MasterDuke nine: i also tried adding back in just these lines: `my $staticname; BEGIN try EVAL '$staticname = Test';`, but it still won't flop 14:16
moritz AlexDaniel: you can now 14:19
I've made the permissions as open as github allows; now every member of the org can create new repos
AlexDaniel cool 14:21
I've sent an email to dnmfarrell but I don't think there's a reason to hold my breath… 14:22
Skarsnik thx for pushing my pr AlexDaniel :) 14:23
nine AlexDaniel: so you can somewhat reliably reproduce it?
AlexDaniel Skarsnik: what PR? 14:24
nine: reproduce what?
Skarsnik nvm github sending a weird message to me
nine the require.t fail 14:25
Zoffix nine: it was MasterDuke talking about it :) 14:26
nine Oh, indeed. I was reading "MasterDuke" and typing "AlexDaniel". Brain is weird sometimes :) 14:28
AlexDaniel FWIW here's my email if somebody is interested: gist.github.com/AlexDaniel/1e1c177...df827c60b4
moritz: do I get it right that we can only get the source code from perl6-all-modules, without git history? 14:32
moritz AlexDaniel: yes, unless you find another mirror 14:33
AlexDaniel so 3 modules that depended on System::Passwd should now be fixed
we can fix another 5 if we find a mirror for URI::Encode 14:34
nine Could even be someone's zef cache 14:36
AlexDaniel nine: aha, thanks 14:37
ok will do in a second
Zoffix AlexDaniel: but URI::Encode is in perl6-allmodules 14:39
AlexDaniel Zoffix: yes, but this does not give us git history
Zoffix Ah 14:40
.oO( who cares )
moritz git history is nice to have, but we can do without 14:41
AlexDaniel here: github.com/perl6-community-modules/URI-Encode
there are no dependencies on Software::License and Module::Minter 14:44
and I don't have these modules, so I'm not going to do anything with them
Zoffix Then I'd say don't restore them.
Unless you want to become maintainer, taking care of bugs and feature requests :/ 14:45
nine Trying to import from 'Test', but the following symbols are missing: &plan, &is, &lives-ok, &skip, &todo, &nok, &throws-like, &eval-lives-ok, &ok 14:46
isn't that very odd?
Wait, what?! 1 RMD: try-load 640AB2BAE07BEDC4C163F679A746F7AB7FB5D1FA: /home/nine/rakudo/Test.pm6 14:47
Notice that it's rakudo/Test.pm6, not rakudo/lib/Test.pm6
t/spec/S11-modules/perl6lib.t:10:is_run 'BEGIN { BEGIN { q{Test.pm6}.IO.spurt(q{package { say q{all your base} }}); %*ENV<PERL6LIB>=qq{}; }; use Test }',
Now that's just insane ^^^
Zoffix heh
AlexDaniel alright, I'll take a look at Grammar::BNF then 14:49
MasterDuke nine: looks like you're well on your way to figuring what's going on and don't need me to do anything more with S11-modules/require.t?
nine LOL, that used to be NativeCall.pm6 but got changed to Test.pm6 as that's "less confusing". Except for rakudo apparently :) 14:51
MasterDuke: oh yes :)
Zoffix :) 14:53
MasterDuke nine: cool, i'll move on to S11-modules/nested.t 14:55
AlexDaniel lizmat: hey 14:56
nine Got a fix for the test that avoids writing any files at all. Just compiling rakudo without the fix that the test is for to check if it still catches it
AlexDaniel lizmat: I need an extra pair of eyes here :)
lizmat: Grammar::BNF has some failing tests because of the Grammar.parse change. TimToady fixed it in github.com/rakudo/rakudo/commit/e3...fbbf18b345 but now we have another problem with SETFAIL 14:57
lizmat: does adding a “try” there sound like a good idea? 15:00
I don't think so :/ 15:03
Geth roast: d3de38009d | (Stefan Seifert)++ | 3 files
Make S11-modules/require.t resilient against modules in .

Better to stick to roast for module load paths. Fixes spurious failures due to a bogus Test.pm6 in .
15:10
AlexDaniel it feels like it should do some sort of .^can(‘SETFAIL’) before trying it 15:12
Geth tap-harness6/preprocess: 12 commits pushed by (Leon Timmermans)++
review: github.com/perl6/tap-harness6/comp...f59b09fc09
15:30
MasterDuke captured a SEGV in S17-promise/nonblocking-await.t with valgrind, output here gist.github.com/MasterDuke17/7a62c...31574a5177 15:39
jnthn, timotimo: ^^^ 15:43
added it to github.com/MoarVM/MoarVM/issues/554 15:45
ugexe nine: are you sure you dont want to use $*PROGRAM instead of $?FILE? They both work, but if this happened to be inside a module $?FILE can end up with the (Foo::Bar) at the end 15:46
nine ugexe: I used file as that has already been used in that line 15:47
Also the (Foo::Bar) in $?FILE in a module is just a bug that hasn't been fixed yet 15:48
Oh boy. When run as ./perl6-m $*EXECUTABLE is actually './perl6-m' so an is_run will fail if run in a temporary directory. But will it report the failure? No! It will happily report that output on STDOUT was '' and thus the test will pass. 15:52
Zoffix nine: you can test exit codes with it too 15:54
is_run "blah blah", { :0status, :out(''), :err('') }
AlexDaniel lizmat: what about this? Does it look horrible? gist.github.com/AlexDaniel/ee23515...25b398d4c8 15:55
lizmat AlexDaniel: looks ok to me, and would be better for performance as well 15:56
AlexDaniel lizmat: alright, will push then soon 15:57
wanna make sure that it actually fixes the thing
lizmat pretty sure it will 15:58
another thing about atomic ops
to me, it feels like that should also be in v6.d.PREVIEW 15:59
AlexDaniel lizmat: why? Do we break compatibility in some way by introducing them?
lizmat my reasoning? Nobody will be able to use it in the ecosystem for the same reason you can't use "is default" on attributes in the ecosystem:
AlexDaniel damn… 16:00
lizmat because if you say "use v6.c", you could be running under a version of Rakudo that doesn't have themn
whereas if we put them into 6.d.PREVIEW now, one can be sure of that
nine Zoffix: apparently people don't know that they have to do this. 16:01
lizmat if the module in question does use v6.d.PREVIEW
jnthn Just passing by so didn't read all the context, but: I didn't put them in 6.d.PREVIEW because I expected I'd want them when re-working ThreadPoolScheduler and probably also fixing Supply up
(The way it enforces concurrency control isn't compatible with non-blocking await) 16:02
Zoffix if the module in question does use v6.d.PREVIEW it still doesn't have any guarantee there are any atomic ops
jnthn True :)
otoh, they're all subs, so at least it's all compile time errors not runtime :) 16:03
lizmat jnthn: that's not helpful in a "zef install Foo" 16:04
Zoffix I solved that problem in my modules with RakudoPrereq 16:05
buggable: eco RakudoPrereq
buggable Zoffix, RakudoPrereq 'Require specific versions of Rakudo': github.com/zoffixznet/perl6-RakudoPrereq
lizmat well, although handy that module is, I think that goes against the concept of (language/feature) versioning 16:06
ugexe it still faces the problem of going through the entire rigamarole of building the chain up and testing
lizmat we would like to see in Perl 6
Zoffix but it's not even needed, if the module has tests, they would fail, on older rakudos
ugexe yeah
jnthn lizmat: The install will fail because precomp will fail 16:07
ugexe well... *if* they test all their modules
nine Is a script with a MAIN actually supposed to exit with status 1 when explicitely called with --help?
Zoffix lizmat: yeah, which I think will be more addressable after 6.d, with the more frequent language point releases.
jnthn Yes, it'll be a less than ideal error :)
But what Zoffix said.
ugexe it'll fail during install when it precompiles, but if precomp fails that doesn't uninstall the source that is already instaled
jnthn ugexe: Oh...I thought that was part of the whole transactional install thing zef did :) 16:08
Or is that part out of zef's hands?
ugexe jnthn: it is except for when CUR.install does the precomp bit
zef could go back and uninstall there, but I've always felt like rakudo should be doing that
havent thought enough about it 16:09
note that if it fails precomp *during testing*, then it gets rolled back
but if an author writes tests that don't end up loading every module at some point then it will make it to CURI.install 16:10
lizmat anyways, with the current setup, people will have to wait until the real 6.d comes out before they can actually use atomic ops in their module reliably
whereas if we put them in 6.d.PREVIEW now, at least one could be sure they work if 6.d.PREVIEW is active
nine I have found no command line tool at all that exits with an error code if called with --help. Including perl and perl6 themselves. 16:11
They all exit with 0.
ugexe prove does on OSX i think
on some OSXs anyway
AlexDaniel lizmat: ok, it doesn't fix anything
Zoffix lizmat: but they can't. 2017.04 supports v6.d.PREVIEW and doesn't have ops
ugexe because they install some prove wrapper thing
lizmat Zoffix: ah. yes, :-(
AlexDaniel m: class Magic { method aFALLBACK (|c) { say ‘fallback’ } }; use nqp; say nqp::can(Magic.new, ‘simsalabim’) 16:12
camelia 0?
AlexDaniel m: class Magic { method FALLBACK (|c) { say ‘fallback’ } }; use nqp; say nqp::can(Magic.new, ‘simsalabim’)
camelia 1?
AlexDaniel lizmat: nqp::can gives True if something has FALLBACK
lizmat aaahhh... hmmm... TIL :-(
ugexe nine: gist.github.com/ugexe/2fb01d855e23...7ea43d708d 16:13
nine ugexe: ok, so there's this one single exception :) 16:14
Geth nqp: 5e661b4a5e | (Aleks-Daniel Jakimenko-Aleksejev)++ | docs/ops.markdown
nqp::can and FALLBACK
ugexe depends on how much you use windows. powershell --help is another (should be powershell -help) 16:15
AlexDaniel mch: class Magic { method FALLBACK (|c) { say ‘fallback’ } }; use nqp; say nqp::can(Magic.new, ‘simsalabim’)
committable6 AlexDaniel, ¦2015.12,HEAD(26287a1): «1»
AlexDaniel lizmat: … ideas?
lizmat Grammar.^find_method("SET_FAIL").name eq "SET_FAIL" 16:16
Geth roast: 249d5f948e | (Stefan Seifert)++ | 2 files
Fix is_run tests not catching errors to run the test at all

Status code is only checked if explicitly requested. So tests that just check output on STDOUT or STDERR like "no error message was printed" won't notice failures to run the program at all.
This also uncovers that a Perl 6 program with a MAIN exits with exit code 1 even when explicitly called with --help which looks like a mistake.
lizmat Grammar.^find_method("SET_FAIL").name eq "SET_FAIL" # AlexDaniel 16:17
oops s/SET_FAIL/SETFAIL/
japhb I'm obviously late to the conversation, but why can't we have v6.d.PREVIEW2 or somesuch indication of a second preview? 16:18
ugexe nine: perl6 -Ilib bin/zef --help returns exit code 0 16:19
ugexe goes to see if he did this explicitly 16:20
maybe because last statement in main(:help) is note '...'
well no, that doesnt make sense 16:21
`perl6 -e 'sub MAIN(Bool :$help) { }' --help` is exitcode 0 too
lizmat japhb: perhaps even v6.d.PREVIEW-2017.08 ? 16:22
japhb lizmat: Yeah.
lizmat jnthn Zoffix ^^^ would that be an idea?
Zoffix japhb: my opinion is the wheels are in motion for 6.d release. So doing PREVIEW2 or point-release-right-now (as some suggested) are kinda pointless faffing that will just lessen the pain and move 6.d further down the road. 16:23
How many people will a PREVIEW2 actually help? 2 or 12?
Just not worth it.
ugexe at this point it seems like you should have to ride out the 6.c inconsistencies - trying to save face on this one isn't going to change how many other things we already pulled this with
japhb Zoffix: Sure, but we need some way of doing more than one preview for *future* language point releases. Might as well see how well this works for us *now*, so we can figure out something that we can work with in the future. 16:24
AlexDaniel why more than one preview instead of making language releases more often? 16:25
japhb Also, the 2-12 people it helps will be precisely those trying to do interesting things in the nascent ecosystem, so I don't see that as a super-strong argument against.
lizmat japhb: indeed
japhb AlexDaniel: Do you have faith that will actually happen? 16:26
dogbert17 nine: t/spec/S06-other/main-usage.t is failing now, is that expected?
japhb (I don't, but then I'm an SRE. A certain amount of pessimism about releases is built in.)
Zoffix japhb: that wasn't the argument. The argument was PREVIEW2 will significantly lessen the pressure to actually release 6.d
ugexe to me this is as much a bug fix for `sub cas { }` that has existed in all 6.c versions
AlexDaniel japhb: it's not about faith. We can do it if we decide to
ugexe than anything else
japhb Zoffix: Ah, I see your point.
Zoffix japhb: what's SRE? 16:27
japhb AlexDaniel: I would agree if you were talking about Rakudo releases. But given the number of times we've made a language change and then backed it out days or weeks later, I think there's a minimum frequency of language releases that won't make things worse.
Geth rakudo/nom: 1ee8e9f333 | (Elizabeth Mattijsen)++ | docs/ChangeLog
It's either . or ! , not both
Zoffix Senior Release Enginieer? 16:28
AlexDaniel lizmat: what do you think? gist.github.com/AlexDaniel/6e9964d...a8bfa21ef9
japhb Site Reliability Engineer -- we're the ones who make sure a service is stable, reliable, available, performant, etc. Or from a different angle, we're the ones who use software engineering to solve large-scale operations problems. 16:29
lizmat AlexDaniel: looks ok to me
AlexDaniel japhb: most (if not all) of these things happen between releases, so it's not a big deal
Zoffix moritz: since we crossed the topic again. Just a reminder about implementing :D sigil stuff for 6.d: github.com/perl6/6.d-prep/blob/mas...ls-imply-d
lizmat well, I would like to see 6.d rather sooner than later, so I withdraw my objections against having atomic ops in 6.c 16:30
japhb AlexDaniel: Right, I'm just saying there's a minimal safe language release frequency given our design and development habits, and it's at least greater than the Rakudo release interval.
lizmat but I do think we still need to have the Grammar.parse change in 6.d, as that actually changes the API
Geth 6.d-prep: 57adba5d27 | (Zoffix Znet)++ (committed using GitHub Web editor) | TODO/FEATURES.md
Tweak time for IO::Path.child

  - since it'll require some ecosystem herding, it'll take more time
16:31
Zoffix I'll do my 6.d parts and the roast review after my "vacation". And, without promising, also implement the versioning thing on docs unless someone beats me 16:32
lizmat goes away again for at least a few hours& 16:33
japhb Zoffix: When is your vacation?
Zoffix Currently in progress. I burnt myself out. When I'll feel better, I'll come back :)
AlexDaniel Zoffix++ 16:34
japhb hears "burnt out" and immediately starts making shoo-ing motions
Go on, get outta here, clear your head, stop letting us bother you!
Zoffix :) 16:35
japhb (I'm actually an SRE *manager*. ;-) )
Geth rakudo/nom: 7f0acb6016 | (Aleks-Daniel Jakimenko-Aleksejev)++ | src/core/Grammar.pm
Fix Grammar.parse when FALLBACK method exists

Internally rakudo attempts to call SETFAIL to achieve different v6.c/v6.d behavior for Grammar.parse (Nil vs Failure in case of a failed parse). However, if the grammar has a FALLBACK method, it would dispatch to it instead of returning Nil. This commit adds a workaround for that issue.
16:36
AlexDaniel hoooooooooooooooooold on…
just switched to another workspace with the spectest and I see some failures…
let's try that again… 16:38
nine AlexDaniel: t/spec/S06-other/main-usage.rakudo.moar?
AlexDaniel that too 16:39
nine dogbert17: yes, as I mentioned before doing the commit and in the commit message
LOL: nine@sphinx:~/rakudo (nom>)> ./perl6-m -e 'indir "/tmp", {say $*EXECUTABLE.absolute}' 16:44
/tmp/perl6-m
nine@sphinx:~/rakudo (nom>)> ./perl6-m -e 'my $exec = $*EXECUTABLE; indir "/tmp", {say $exec.absolute}'
/home/nine/rakudo/perl6-m
So apparently initializing $*EXECUTABLE is too lazy. 16:45
AlexDaniel bad gist.github.com/AlexDaniel/4e227a2...5aad91b23e
nine What a can of worms this turned out to be...
AlexDaniel running spectest again on HEAD^… 16:46
dogbert17 nine: i'd better learn how to read properly, and fast :) 16:47
Zoffix m: use nqp; nqp::execname().say 16:49
camelia ./rakudo-m-inst/bin/perl6-m?
AlexDaniel ah I think I know…
Zoffix nine: or maybe ^ that op should return an absolute path instead?
nine Zoffix: not so sure about that. The op faithfully reports what it's told by the operating system. It's IO::Path that claims to be able to turn it into an absolute path to the original file. 16:51
nqp is supposed to be low level, low magic
Zoffix m: use nqp; indir '/tmp', { nqp::execname().say } 16:52
camelia ./rakudo-m-inst/bin/perl6-m?
nine Alas it wouldn't work for spec tests anyway: Unhandled exception: failed to load library 'dynext/libperl6_ops_moar.so'\n at <unknown>:1 (/home/nine/rakudo/perl6.moarvm:<dependencies+deserialize>)\n 16:53
Zoffix m: use nqp; &*chdir('/tmp'); nqp::execname().say
camelia ./rakudo-m-inst/bin/perl6-m?
Zoffix seems it's wrong either way
ugexe no need for the assignment even./perl6-m -e '$*EXECUTABLE; indir "/tmp", {say $*EXECUTABLE.absolute}' 16:56
AlexDaniel Zoffix: your description was about right. I got an answer from him 16:59
nine: so you're saying that these are ok? gist.github.com/AlexDaniel/95c5b9a...c44209ee72 17:00
Geth roast: 091a7cab1a | (Stefan Seifert)++ | S11-modules/perl6lib.t
Fix S11-modules/perl6lib disturbing other tests by shadowing Test.pm6

There are quite a few spec tests that run with '.' in their module search paths. If they try to load Test.pm6 while perl6lib.t was running, they could end up loading the non-functional one and fail. Use a very unique name for the test module instead.
Unfortunately we cannot just put the module into a temporary directory because the test harness runs spec tests with ./perl6 and this will only run in the build directory itself and the test is about the CWD.
17:01
roast: b4a569e9b8 | (Stefan Seifert)++ | S11-modules/perl6lib.t
Fix cleanup of test file deleting the wrong file
AlexDaniel FWIW I'm working on fixing my idiotic change 17:03
nine AlexDaniel: t/spec/S06-other/main-usage.t fails and needs a decision of how to proceed. It uncovers erratic behavior in rakudo. 17:04
AlexDaniel: require.t should finally be fixed. I have no idea why perl6lib.t would fail for you. It never did here, it just disturbed other tests. 17:05
AlexDaniel ok, we'll see
MasterDuke thinks nine should be upgraded to ten
AlexDaniel
.oO( ?, ?, ?, …, ?, ?, ?? )
17:06
moritz more like ackermann(9, 1) :-) 17:07
nine AlexDaniel: FWIW if I were the release manager, I'd revert the .parse change instead of trying to find fixes immediately before the release. It would be a very nice improvement, but it will still be so a month from now.
And in the long term having fewer broken releases will help our image more than getting in improvements a month earlier. 17:08
nine freely admits to falling into the "try to fix instead of reverting" trap. Every. Single. Time. 17:09
Zoffix AlexDaniel: whas was the answer?
AlexDaniel Zoffix: “They were toy modules, I'm surprised anything depended on them!”
Zoffix Ah :) 17:10
[Coke] (Preview still unsure) - but by putting in preview, we're declaring use at your own risk anyway. (IMO)
nine Nothing can surprise me anymore since I've heard that Lingua::Romana::Perligata is used in production by some companies. 17:11
AlexDaniel nine: Thanks. I see no problem right now. There's no rush, we'll see how it goes. If it's not going to fly in this state we'll just revert
[Coke] (jeez how far back in review am I?) 17:12
nine AlexDaniel: what about those spec test failures you posted? I get them too on current nom
AlexDaniel nine: This is my personal fail. I started spectest in another workbench and forgot to look there before pushing :/ 17:13
workspace*
and I know why it happens 17:15
nine Exiting with 1 when run with --help was introduced back in 2011 in commit "Merge WIP snapshot of main-usage" by Geoffrey Broadwell.
Before that with --help it would exit with 0 and without --help it would exit with 29 (huh?!) 17:16
AlexDaniel releasable6: status
releasable6 AlexDaniel, Next release in ?1 hour. No blockers. 208 out of 211 commits logged
nine The 29 was accompanied by #TODO: Better return value
releasable6 AlexDaniel, Details: gist.github.com/09ebde9ea5016c6e24...701591f55b
AlexDaniel releasable should say “Next release will happen when it's ready” :) 17:17
nine Oh wait, the code with the 29 was actually commented out
japhb nine: Back then I remember I was trying to match behavior of one of the Perl 5 usage-generation modules. 17:29
That in no way means that's the best exit value. Just the one that that module chose, as I was keeping with people's expectations if they came from the Perl 5 world. 17:30
These days that seems to be less of a motivating factor 17:31
... for any particular arbitrary design decision.
nine japhb: well as perl --help exits with 0, we can still follow its lead :)
Geth rakudo/nom: c5cb74abeb | (Aleks-Daniel Jakimenko-Aleksejev)++ | src/core/Grammar.pm
Fix grammars with no SETFAIL

Without this it will attempt to .name on a Mu.
17:35
AlexDaniel Zoffix: can I have another toaster run with latest rakudo? 17:36
Zoffix What about just running `zef install` the affected modules?
AlexDaniel Zoffix: what if I'm lazy? :) 17:37
it's 15 modules
Zoffix AlexDaniel: what if I'm lazy? :)
AlexDaniel Zoffix: please :) ? 17:38
Zoffix zef --debug install App::AizuOnlineJudge CSS::Declarations CSS::Module Cookie::Baker Grammar::BNF HTTP::ParseParams Linux::Fuser Module::Minter Pastebin::Shadowcat SSL Software::License Sys::Lastlog System::Passwd URI::Encode WebService::Lastfm 17:39
AlexDaniel fiine
Zoffix maybe throw in --serial or install them individuallyu
AlexDaniel Zoffix: by the way, any way I can know where these double frees happened? 17:42
Skarsnik_ not sure if it's usefull but the conveyor build fail
AlexDaniel Skarsnik_: on HEAD^ it was expected. Should be fine on HEAD 17:43
Zoffix AlexDaniel: I've no idea. The Toaster toasts 30 modules at a time, so I've no idea which of them caused the messages
Well, I guess 24 at a time
Geth rakudo/nom: fcf61f7bdb | (Stefan Seifert)++ | src/core/Main.pm
Exit successfully when running a MAIN script with --help

The user requested help and got it, so it's fair to say that the request was completed successfully. For comparison, I tested the following tools and all of them exit with 0 when run with --help: bash, gcc, perl, perl6, git, vim, ack, make, time, gdb, bc, cat
Fixes S06-other/main-usage.t
17:46
AlexDaniel bench: 2017.07 for ^10000 { grammar A { rule TOP { "abcd" }; }; say A.parse(‘abcdz’) } 17:48
benchable6 AlexDaniel, starting to benchmark the 1 given commit
AlexDaniel, ¦2017.07: «1.4721»
AlexDaniel bench: HEAD for ^10000 { grammar A { rule TOP { "abcd" }; }; say A.parse(‘abcdz’) }
benchable6 AlexDaniel, starting to benchmark the 1 given commit
AlexDaniel, ¦HEAD: «1.2005»
AlexDaniel looks alright
bench: HEAD use v6.d.PREVIEW; for ^10000 { grammar A { rule TOP { "abcd" }; }; say A.parse(‘abcdz’) }
benchable6 AlexDaniel, starting to benchmark the 1 given commit
AlexDaniel, ¦HEAD: ««run failed, exit code = 1, exit signal = 0»»
AlexDaniel bench: HEAD use v6.d.PREVIEW; for ^10000 { grammar A { rule TOP { "abcd" }; }; my $x = A.parse(‘abcdz’) }
benchable6 AlexDaniel, starting to benchmark the 1 given commit
AlexDaniel :s 17:49
benchable6 AlexDaniel, ¦HEAD: «10.0089»
AlexDaniel /o\
nine AlexDaniel: spec test is clean here now :) 17:58
AlexDaniel I see some floppage in atomic tests sometimes
nine indeed 17:59
Also: t/spec/S17-promise/start.t ........................................ No subtests run
ugexe blead build fails on windows: 'NQP_LIB' is not recognized as an internal or external command
probably have to settle for a --libdir there 18:00
nine Won't work as command line processing happens after we already load some modules 18:03
Zoffix [Coke]++ # fixing docs 18:04
AlexDaniel if I'm trying to install something using zef and it attempts to use the old repo (by David Farrell), what should I do? 18:05
is it cached somewhere or simply nuking zef on my system should help?
ugexe zef will have it cached if you ever tried to install it before and it got to the point where it was fetched 18:06
`zef nuke StoreDir` (or `rm -rf ~/.zef` in most cases) will clear the cache
if you run zef install with -v it will tell you where it was found 18:07
AlexDaniel ugexe: Found: URI::Encode:ver('0.05'):auth('David Farrell') [via Zef::Repository::Ecosystems<p6c>] 18:09
ugexe well thats what is still listed in ecosystem-api.p6c.org/projects.json 18:10
AlexDaniel ok, so it is cached there.
ugexe: how often does it update?
ugexe or its just note updated yet
dunno. i'd guess every hourish
AlexDaniel ecosystem-api.p6c.org/update.log 18:11
ugexe ah, maybe its broken 18:12
AlexDaniel can somebody help it?
stmuk cpanm File::AtomicWrite :)
AlexDaniel who's the right person to ping in this case? 18:14
moritz: ? ? 18:15
travis-ci Rakudo build errored. Aleks-Daniel Jakimenko-Aleksejev 'Fix grammars with no SETFAIL 18:21
travis-ci.org/rakudo/rakudo/builds/266325948 github.com/rakudo/rakudo/compare/7...cb74abebda
buggable [travis build above] ? All failures are due to timeout (1), missing build log (0), GitHub connectivity (0), or failed make test (0).
Zoffix AlexDaniel: I'll fix it 18:31
AlexDaniel Zoffix: thanks
moritz looking... 18:41
Zoffix moritz: I'm already on it 18:43
And about 10 seconds from finishing
moritz Zoffix: oh, that would explain the pretty new perlbrew :-)
Zoffix :)
AlexDaniel: there. Fixed forever. 18:49
AlexDaniel: did you update the META file tho?
AlexDaniel Zoffix: ahhhh…
will do it now 18:50
done 18:52
samcv AlexDaniel, any other bugs found while i was asleep 19:01
anything stringy or unicodey
AlexDaniel samcv: not really. Thanks for asking :) 19:02
samcv ok good :)
glad toaster exists Zoffix++
or would never have found that concat bug which i'm sure would have taken months to find
AlexDaniel samcv: however… do you have a couple of free minutes?
samcv yes
AlexDaniel samcv: can you try zef -v install CSS::Declarations ? 19:03
samcv: and… when it fails, figure out why :)
Zoffix AlexDaniel: ecosystem-api.p6c.org/projects.json has now been updated 19:04
AlexDaniel there are some changes in the module itself so perhaps it's alright
Zoffix: yeah, I noticed. Thank you
samcv: ah, it's CSS::Module that's failing 19:05
samcv ah ok 19:07
AlexDaniel samcv: it says “unicode” a couple of times in the tests, but I didn't look yet 19:08
samcv which ones
AlexDaniel gist.github.com/AlexDaniel/85b7a5a...f2b376b119 19:10
this is what I see
hm that's probably completely unrelated 19:11
samcv AlexDaniel, does the toaster test the past release? 19:15
i mean to make sure the module hasn't changed so that it actually fails
like try installing it on the last monthly release and also on blead
AlexDaniel well, according to Toaster CSS::Module was alright on 2017.07-195-g8664050 19:17
which is like yesterday?
samcv hm
have you bumped moarvm yet?
AlexDaniel yes
samcv cool
AlexDaniel fwiw this is the only module that looks weird 19:19
everything else is clean 19:20
.seen dwarring 19:30
yoleaux I saw dwarring 1 Jun 2017 21:48Z in #perl6: <dwarring> tbrowder: got it thanks!
AlexDaniel hmm
well I'll just put it into committable and we'll see what happens 19:32
I just have to come up with a list of deps and that will be it
samcv: ok, it works on 2017.07 but not on HEAD 19:43
the damn thing keeps timing out because of precompilation, but let's try bisecting…
it's also ok on HEAD~50 19:46
samcv: ? #moarvm if interested 19:52
alright folks, I think we have a problem with github.com/perl6/nqp/commit/f34562...27706b9b66 19:56
c: 1599873d1420f gist.githubusercontent.com/AlexDan...tfile1.txt
committable6 AlexDaniel, Successfully fetched the code from the provided URL.
AlexDaniel, gist.github.com/0aef8e252affaf8ebc...27af77c500
AlexDaniel c: 1599873d1420f^ gist.githubusercontent.com/AlexDan...tfile1.txt
committable6 AlexDaniel, Successfully fetched the code from the provided URL.
AlexDaniel, gist.github.com/1f35ed3fe1d5440322...855fbe2a69
AlexDaniel at least, bisectable points to github.com/rakudo/rakudo/commit/15...866cbfd87e 19:58
and
Geth: ver github.com/rakudo/rakudo/commit/15...866cbfd87e
Geth AlexDaniel, version bump brought in these changes: github.com/perl6/nqp/compare/2017....4-gf34562f
AlexDaniel any ideas? 19:59
TimToady: fwiw ping 20:03
Zoffix goes to bed 20:14
AlexDaniel o/
it feels like we'll have to live with this 20:30
AlexDaniel out of frustration files this issue: github.com/p6-css/CSS-Module-p6/issues/10 20:39
Skarsnik benchable6, releases sub foo($a) { return if $a > 20000; foo($a + 1)}; foo(0) 20:40
benchable6 Skarsnik, starting to benchmark the 21 given commits
Skarsnik, benchmarked the given commits, now zooming in on performance differences 20:41
Skarsnik, gist.github.com/2827f5670e7ff8c7c2...74878534e0
japhb buggable: speed 20:57
buggable japhb, ?????????????????????????????????????????????????? data for 2017-07-25–2017-08-18; range: 3.587s–4.960s; 2% faster
japhb What happened to the speed gains from a week ago?
moritz looks like we lost them again? :( 21:02
Skarsnik I am not fan of this bench it still slower than 2 years ago? x) 21:04
jnthn japhb, moritz: There haven't been new test-t numbers posted here since the win was gained back again 21:19
(I actually used Text::CSV to figure out why another round of improvements caused a loss) 21:20
AlexDaniel benchable6, HEAD sub foo($a) { return if $a > 200000; foo($a + 1)}; foo(0)
benchable6 AlexDaniel, starting to benchmark the 1 given commit
jnthn In short, a new speculative opt was too greedy, and so introduced a lot of deopts 21:21
benchable6 AlexDaniel, ¦HEAD: «1.1568»
AlexDaniel benchable6, HEAD sub foo($a) { return if $a > 800000; foo($a + 1)}; foo(0)
benchable6 AlexDaniel, starting to benchmark the 1 given commit
AlexDaniel, ¦HEAD: «10.0435» 21:22
AlexDaniel benchable6, 2015.12 sub foo($a) { return if $a > 800000; foo($a + 1)}; foo(0)
benchable6 AlexDaniel, starting to benchmark the 1 given commit
AlexDaniel, ¦2015.12: «3.6447»
AlexDaniel :S
benchable6, releases sub foo($a) { return if $a > 800000; foo($a + 1)}; foo(0) 21:23
benchable6 AlexDaniel, starting to benchmark the 21 given commits
AlexDaniel oops, didn't want to do that with 800000
in any case, back to release. I think I'll try reverting github.com/perl6/nqp/commit/f34562...27706b9b66 but honestly I don't understand what this commit does (practically) and what exactly would be undone after the revert 21:24
yoleaux Zoffix: go through ecosystem and convert .child -> .add 21:27
AlexDaniel yoleaux: may be a bit too early for that! :)
benchable6 AlexDaniel, «hit the total time limit of 240 seconds»
AlexDaniel benchable6, releases sub foo($a) { return if $a > 300000; foo($a + 1)}; foo(0)
benchable6 AlexDaniel, starting to benchmark the 21 given commits
AlexDaniel, benchmarked the given commits, now zooming in on performance differences 21:31
AlexDaniel there's no time!! Just give me the graph!
benchable6 AlexDaniel, «hit the total time limit of 240 seconds»
jnthn d'oh 21:32
AlexDaniel yeah, reverting it helps 21:45
timotimo o/ 22:07
AlexDaniel: release is still ahead of us?
AlexDaniel: what's wrong with that commit? 22:09
AlexDaniel timotimo: hello
timotimo that's for making :dba("foo") work, until now it didn't understand how quoting works and turned into "match and capture 'foo'" instead of passing "foo" to a :dba directive
and dba is for making the highwater output interesting, i.e. the "expected any of:" list is generated from dbas 22:10
AlexDaniel aaaaaah right
timotimo: ok, so there's this module: github.com/p6-css/CSS-Module-p6/issues/10
timotimo: and its tests are failing because of that commit 22:11
I tried reverting it and it resolves the problem for that particular module
the module (and its deps) are a bit too convoluted for me to find the exact cause 22:13
timotimo huh
yea, the code in it is spread into many small modules
AlexDaniel now, given that we already moved Grammar.parse change into v6.d.PREVIEW, I see no reasons whatsoever not to revert this change 22:14
timotimo: objections? 22:15
timotimo oh, i didn't know that got moved
no objections from me in that case 22:16
AlexDaniel in fact, some even argued that we shouldn't bother trying to make it work under v6.d.PREVIEW, and instead just revert it completely
alright 22:17
timotimo huh
AlexDaniel in retrospect I'd agree that it would've made things go a bit faster 22:19
timotimo: what I don't understand is how could it possibly break anything?? 22:20
there's probably something weird in the module itself 22:21
timotimo welllll~ 22:23
that's a good question
Geth nqp: d4d77b66c4 | (Aleks-Daniel Jakimenko-Aleksejev)++ | 2 files
Revert "uncollide nqp's starter/stopper from rakudo's"

This reverts commit f34562f5fb5bcf48dbf31c390ef57627706b9b66.
Surprisingly, this causes one of the modules in the ecosystem to fail its tests. Given that Grammar.parse changes were moved to v6.d.PREVIEW anyway, we have to prioritize no ecosystem breakage over a fancy feature. See RT #131919 for further discussion.
22:27
synopsebot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=131919
rakudo/nom: 2545e6d656 | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/NQP_REVISION
Another pre-release NQP_REVISION bump
22:35
¦ rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....gd4d77b66c
AlexDaniel I think I'm almost ready. Just some tiny things I want to check
ugexe well it doesnt build on windows so
AlexDaniel ugexe: ooohh… more info? 22:36
ugexe irclog.perlgeek.de/perl6-dev/2017-...i_15043376
which is caused by the fix to what broke when the lib/blib INC thing was removed 22:38
AlexDaniel timotimo: if things keep creeping up like this I'm afraid it'll have to wait till tomorrow :)
timotimo: wrong smiley: :(
ugexe imo that security fix isn't a big deal and could be reverted until next release 22:39
where we went wrong there was exposing the flaw without a complete fix 22:42
AlexDaniel ugexe: or we just take things easy and fix it on windows 22:55
ugexe go for it
AlexDaniel realistically I'll have to sleep at some point, so taking a look at it tomorrow is probably a better idea than trying to release it by all means today (with minor security fix reverted :/ ) 22:58
ugexe i'll just point out we didnt do anything special with PERL6LIB="", and that was accompanied by an actual PoC
AlexDaniel ugexe: … is there a ticket for this or something? 23:01
if that's a separate issue, it could've been a release blocker, but I knew nothing about it
ugexe yes, the ticket was over a year old 23:02
the current security thing had no ticket though if thats what you meant 23:03
rt.perl.org/Public/Bug/Display.html?id=130883 23:04
AlexDaniel ugexe: isn't it fixed? github.com/rakudo/rakudo/commit/07...6fc9a6029f 23:07
or what is your point exactly? 23:08
ugexe my point is we fixed it but there was no special treatment of it. the current security issue is arguably less severe (you have to write your malicious code in bytecode vs Perl6 code) so I don't see why it would block a release 23:09
the previous issue did not block the 5 releases it was known 23:10
AlexDaniel but that's not ok?
ugexe it was fixed immediately after a PoC was constructed though
AlexDaniel nine: any ideas regarding the broken build on windows?
ugexe did you read the irc link i posted a few minutes ago? he commented on the problem 23:11
Geth nqp: 2cc2eca3eb | (Aleks-Daniel Jakimenko-Aleksejev)++ | src/vm/jvm/QAST/Compiler.nqp
Revive JVM build

mid1221213++
23:14
AlexDaniel well, if we say that it's impossible then sure… :S 23:23
huggable: no release? :is: blead build fails on windows. Options: (1). Fix it. Find a way. (2). Revert the security fix 23:25
huggable AlexDaniel, Added no release? as blead build fails on windows. Options: (1). Fix it. Find a way. (2). Revert the security fix
AlexDaniel huggable: no release?
huggable AlexDaniel, blead build fails on windows. Options: (1). Fix it. Find a way. (2). Revert the security fix
AlexDaniel huggable: no release? :is: blead build fails on windows. Options: (1). Fix it. Find a way. (2). Revert the security fix. | See irclog.perlgeek.de/perl6-dev/2017-...i_15043376
huggable AlexDaniel, Added no release? as blead build fails on windows. Options: (1). Fix it. Find a way. (2). Revert the security fix. | See irclog.perlgeek.de/perl6-dev/2017-...i_15043376
AlexDaniel and with that I think I'll have to leave for a nap. See you tomorrow 23:28
[Coke] AlexDaniel++ 23:30