Geth 6.d-prep: a306a37dc9 | (Zoffix Znet)++ (committed using GitHub Web editor) | TODO/README.md
TODO: toss dead files

It's a bit annoying to write a test in a file, just to find out the file isn't being run and doesn't compile.
00:02
roast: 986f263ef4 | (Zoffix Znet)++ | S10-packages/require-and-use--dead-file.t
Rename dead file squatting on a good name

The file isn't in t/spectest.data and doesn't even compile.
00:05
roast: 5685050756 | (Zoffix Znet)++ | S10-packages/require-and-use.t
Test circular dependency is detected

RT#126688: rt.perl.org/Ticket/Display.html?id=126688
  (only the new test was added in this commit. The previous
contents of the file weren't being run nor did they compile. They were moved to require-and-use--dead-file.t in
  github.com/perl6/roast/commit/986f263ef4 )
00:17
synopsebot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=126688
rakudo/nom: 3da62db991 | (Zoffix Znet)++ | t/spectest.data
Add new test file to list of test files to run
roast: 961b973779 | (Zoffix Znet)++ (committed using GitHub Web editor) | S10-packages/require-and-use.t
Fix Engrish in test description
00:20
roast: 0b6742697d | (Zoffix Znet)++ (committed using GitHub Web editor) | S02-types/set.t
Remove unintendeded interpolation…

  …in test's description
00:24
roast: 1e20619853 | (Zoffix Znet)++ | S02-types/set.t
Test List of Pairs/Hash .Set coercer

  - Ensure the .values of Pairs get interpreted as weights
00:37
roast: 19d353dd98 | (Zoffix Znet)++ | 2 files
Add RT ticket references to new tests
00:38
roast: 8e382fb938 | (Justin DeVuyst)++ | S32-io/IO-Socket-Async.t
Tests for async socket returned port values. See RT#132135.
02:46
synopsebot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=132135
geekosaur welp. looks like more Apple Xcode changes is indeed what's behind the new clock_gettime errors 04:12
[Tux] This is Rakudo version 2017.09-42-g3da62db99 built on MoarVM version 2017.09.1-21-g523725a3 06:09
csv-ip5xs 1.333 - 1.337
test 9.747 - 9.940
test-t 3.424 - 3.453
csv-parser 12.126 - 12.806
samcv geekosaur, i think i fixed that? 06:17
do you have the latest Moar?
geekosaur that was commentary based on discussion elsewhere. 06:18
samcv ah
geekosaur and it may in fact be a distinct issue that might bite later
there's a new Xcode that has messed with all that stuff again :/ 06:19
bartolin i'm still struggling with teaching the EvalServer to find BOOTSTRAP.nqp before 'make install' (RT #132101). ideas about that issue are very welcome :-) 06:34
synopsebot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=132101
bartolin the best idea i had so far, is to use an environmental variable -- like this gist.github.com/usev6/9a2fde23088b...3175641b4c
lizmat Files=1227, Tests=75115, 298 wallclock secs (14.64 usr 5.32 sys + 2016.98 cusr 210.03 csys = 2246.97 CPU) 09:04
jnthn bartolin: Is it not just that the arguments to create-jvm-runner or whatever ended up the wrong way around? It happened at some point for the MoarVM build 09:38
bartolin: fb0b3eb5c79223f is where I did that 09:39
s/did/fixed/
Hmm, looks like a newly added test for IO::Socket::Async is racey
I thought I'd got another nasty problem to solve
But no, new racey test. 09:40
Geth roast: 5efc3e5644 | (Jonathan Worthington)++ | S32-io/IO-Socket-Async.t
Fix race condition in socket test

We can't be sure the server connection callback will fire before the connect method of the client returns from its await.
09:45
bartolin jnthn: i quite, i already tried something similiar to fb0b3eb5c -- but i'll check again this evening. 09:51
*i'm quite sure ...
eater where are the constants from IO::Socket::INET::PIO sourced from? github.com/rakudo/rakudo/blob/nom/...et/INET.pm 10:06
they are at least not the same as bits/socket.h> 10:07
defines them
Geth rakudo/supply-block-refactor: 547839200a | (Jonathan Worthington)++ | 2 files
Queue Supply messages on recursion

This handles the case where a Supply does an emit/done/quit and there is a code path that ends up looping back to the Supply itself. Due to messages on a Supply being serialized, this would result in a deadlock after the recent changes to the Supply concurrency model. Previously, it would work out for `supply`/`react` blocks due to their queueing of ... (24 more lines)
10:09
jnthn That was tricky...
Now don't have any stresstest regression from that branch, at least 10:13
heh, an NYI survives in the branch that no spectest covers :) 10:35
jnthn adds some
pmurias bartolin: re the nativecallinvoke op, I can implement that as it's just a simpler nativecall op that doesn't do deconting 10:37
DrForr Well, Prague.pm last night was actually pretty large, I think we got ~12 people.
Geth rakudo/supply-block-refactor: 397692aca5 | (Jonathan Worthington)++ | src/core/Supply.pm
Some small optimizations to `supply`/`react`
10:38
rakudo/supply-block-refactor: e0e5e6fac9 | (Jonathan Worthington)++ | src/core/Supply.pm
Handle await-all during adding a whenever
moritz DrForr: wow, that's nice
jnthn DrForr: Nice. Will it be a regular-ish meeting?
DrForr It apparently is; I was sitting next to the guy who ran the website and he sheepishly admitted that he hadn't updated it in a while. 10:39
jnthn Haha
jnthn will keep an eye on it
Hopefully I can join next time 10:40
DrForr Hope so. I also got a note saying that the mailing list had stopped working a few months ago as well, so apparently that side of things has been running on autopilot for a while. 10:41
jnthn I'd assumed not updated website and defunct mailing list = no meetings :P
DrForr I would have assumed much the same. 10:42
bartolin pmurias: that would be great. 10:46
Geth rakudo/supply-block-refactor: b16aba019b | (Jonathan Worthington)++ | src/core/Lock/Async.pm
Optimize recursion handling in Lock::Async

No semantic changes, this just rewrites a hot path in a more optimal way, without too much cost to its overall clarity.
11:00
jnthn Well, I guess it's merge time :) 11:04
timotimo exciting! 11:09
dogbert17 jnthn: if you merge, I can subject hte code to some 'nasty' testing while you enjoy your lunch :)
Geth rakudo: the-eater++ created pull request #1169:
Fix PIO table so they are equal to the kernel values + add family packing
11:14
rakudo/nom: 26 commits pushed by (Jonathan Worthington)++
review: github.com/rakudo/rakudo/compare/3...6646e36475
11:16
jnthn That is decidedly the most difficult stuff I've done in a while.
Geth roast: 0cec8b172d | (Jonathan Worthington)++ | S17-supply/syntax-nonblocking-await.t
Test various cases of await in react/supply blocks
11:18
lizmat pulls, builds and sets of a spectest
jnthn Basically, the concurrency model underneath supplies has changed and been unifited, so supply blocks and the other stuff share a common approach 11:19
It's also been made much more 6.d friendly
So that you can now do an `await` in a react/supply/whenever without actually clogging the thread pool up (provided you're in the pool when you do the await)
s/unifited/unified/ 11:20
dogbert17 jnthn++, might this be worthy of a blog post perhaps
jnthn Note, `use v6.d.PREVIEW` required for that
Yeah, will go in my queue 11:21
At the heart of it is a new Lock::Async, which is a pretty interesting mechanism
dogbert17 do you want me to be really 'mean', i.e. try with MVM_SPESH_NODELAY and _BLOCKING etc
jnthn Can try, sure
dogbert17 ok, will do :) 11:22
timotimo so awaiting a lock::async will - in 6.d - put your continuation into the thread pool and one of the registered waiting tasks will be woken up each time the lock is "released"?
jnthn Yes
Though actually we already are doing that today for supplies
Inside of CORE.setting 11:23
timotimo OK, but the user can't do it like that without significant effort
jnthn supply/react blocks already use this model too
Though you actually need to have competing incoming data to really hit this 11:24
The only effort you need to take to get the full non-blocking semantics is to stick in `use v6.d.PREVIEW` :)
Supplies now use some of the 6.d internals even in 6.c, as an implementation detail 11:25
But the exact mechanism supply/react blocks used for concurrency control was always an implementation detail; that's kinda the point of an abstraction :)
timotimo right, since whenever blocks must already be assumed to run on any thread, right?
jnthn Right
Also the new affinity scheduling makes competition less likely 11:26
*contention
If it's for procs/sockets
dogbert17 starts a 'MVM_SPESH_BLOCKING=1 make spectest'
jnthn There's some other neat things you can do now though
m: my $s = supply { my $done; until $done { emit $++ }; CLOSE { $done = True } }; react { whenever $s { .say } } 11:28
camelia (timeout)
jnthn Or maybe better 11:29
lizmat 14-15, 19-20 # jnthn, fails in t/spec/S32-io/IO-Socket-Async.t
jnthn my $s = supply { my $done; until $done { emit $++ }; CLOSE { $done = True } }; react { whenever $s { .say; done if $++ == 5 } }
lizmat jnthn: reliably so
jnthn Oh
Probably because those tests were put in without a MoarVM bump
timotimo is it the "get socket address" tests?
jnthn And they are testing the port number fix in MoarVM that was merged last night
lizmat perhaps.. I did do a reconfig, so, maybe we need a bump? 11:30
jnthn m: my $s = supply { my $done; until $done { emit $++ }; CLOSE { $done = True } }; react { whenever $s { .say; done if $++ == 5 } }
That's the one I meant
That now works
Before it would queue messages up forever
camelia (timeout)
lizmat jnthn: shall I do a bump ?
jnthn Now it prints 0 up to 5
lizmat: Yes, please do :)
timotimo hm, is that due to more than just backpressure?
jnthn timotimo: Yeah, that's 'cus we handle whenever differently now 11:31
Geth nqp: 59612c4229 | (Elizabeth Mattijsen)++ | tools/build/MOAR_REVISION
Bump MOAR for latest async fixes
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...23725a3... No newline at end of file
jnthn If the process of tapping something awaits, then we intercept it, take a continuation and then resume it after the lock is freed
timotimo OK, and now we await when there's too many things we've emitted 11:33
jnthn Yeah 11:35
timotimo that sounds good :)
jnthn hehe 11:36
$ ./perl6-m -e 'my $s = supply { my $done; until $done { emit "foo" }; CLOSE { $done = True } }; react { my $i = 0; whenever $s { $i++ }; whenever Promise.in(5) { say "Did $i emits in 5 seconds"; done } }'
Did 195981 emits in 5 seconds
m: my $s = supply { my $done; until $done { emit "foo" }; CLOSE { $done = True } }; react { my $i = 0; whenever $s { $i++ }; whenever Promise.in(5) { say "Did $i emits in 5 seconds"; done } } 11:37
camelia Did 137035 emits in 5 seconds
jnthn Oh, I guess it's bumped already :)
yeah :)
c: 2017.09 my $s = supply { my $done; until $done { emit "foo" }; CLOSE { $done = True } }; react { my $i = 0; whenever $s { $i++ }; whenever Promise.in(5) { say "Did $i emits in 5 seconds"; done } }
committable6 jnthn, ¦2017.09: ««timed out after 10 seconds» «exit signal = SIGHUP (1)»» 11:38
jnthn I need to add more tests :)
(To cover this new stuff)
But first, lunch :)
lizmat jnthn: confirm a bump fixes the test issues... running fill spectest now 11:39
dogbert17 I got some fails in t/spec/S32-io/IO-Socket-Async.t, wasn't there some changes done there a couple of hours ago 11:56
Geth rakudo/nom: d8890a8284 | (Elizabeth Mattijsen)++ | tools/build/NQP_REVISION
Bump NQP to get the latest Moar async fixes
rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....f92f2fe... No newline at end of file
73aeee6ce7 | (Jonathan Worthington)++ | src/core/Supply.pm
jdv79 jnthn: oops - thanks for that race fix 12:06
jnthn jdv79: np :) 12:25
timotimo when i need my race fix i play mario kart :P
eater timotimo: I'm mostly content with Need For Speed 12:35
|Tux| This is Rakudo version 2017.09-69-gd8890a828 built on MoarVM version 2017.09.1-36-gfbd89898 12:38
csv-ip5xs 1.289 - 1.307
test 9.549 - 9.580
test-t 3.381 - 3.395
csv-parser 12.133 - 12.146
timotimo eater: the original? personally i was a big fan of nfs2 12:39
eater timotimo: tbh, Porsche Unleashed / Porsche 2000
timotimo haven't heard of those 12:40
lizmat .speed 12:41
TimToady just had S17-supply/syntax.t hang up while slowly chewing up gigs over a period of some minutes 12:49
timotimo after test 68? 12:50
that's also what i'm seeing
TimToady yeah, about there 12:51
jnthn After my merge, I presume? 12:55
timotimo i think so
jnthn :/
It's passed consistently here
timotimo yeah, after the merge
jnthn In a bunch of stresstest runs
dogbert17 ZOFFLOPS when using ASAN and MVM_SPESH_BLOCKING: t/spec/S02-literals/string-interpolation.t, t/spec/S17-promise/allof.t, t/spec/S17-supply/syntax.t and t/spec/S17-promise/basic.t
timotimo i'll try to golf a little 12:56
dogbert17 meh, ==18046== ERROR: AddressSanitizer failed to allocate 0x200000 (2097152) bytes of SizeClassAllocator32: Cannot allocate memory 12:57
in t/spec/S17-supply/syntax.t 12:58
#9 0xb5643498 in MVM_realloc /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/alloc.h:20
#10 0xb5643498 in set_size_internal /home/dogbert/repos/rakudo/nqp/MoarVM/src/6model/reprs/VMArray.c:359
#11 0xb5643498 in push /home/dogbert/repos/rakudo/nqp/MoarVM/src/6model/reprs/VMArray.c:467
dogbert17 afk &
timotimo i put a "say supply done" in front of the done inside the interval supply, and that gets executed a seemingly-random amount of times 12:59
dogbert17 the errors in t/spec/S17-promise/basic.t and t/spec/S17-promise/allof.t are the 'time sensitive' tests discussed the other day 13:02
timotimo jnthn: when i reduce the for loop outside the start block to 2, i get it working. maybe it's a thread pool exhaustion issue, but that doesn't explain to me why it would consume cpu resources
jnthn Me either 13:03
Curiously, syntax.t just failed in my current stresstest run
Though I've a couple of locally applied optimizations that I was testing
ah, and they seem to have other fallout too
So likely not the same issue
Zoffix buggable: speed
buggable Zoffix, ▂▂▃▁▂▂▇▃▃▃▃█▅↑▄▂▃▃▃▄▂▃▁▁▃▅▄▄↑█▃▃▂▃▂▁▂▂▂▂▁▁▂▂▁▄▂▂▁▁ dates: 2017-09-05–2017-09-22; range: 3.376s–4.237s; speed: 2% faster
Zoffix buggable: speed :4
buggable Zoffix, ▆ ▇ ↑ ↑█ dates: 2017-09-05–2017-09-22
Zoffix, █ █▃█ ▃ ██ range: 3.376s–4.237s
Zoffix, █▃ ▄███▆ ▃▁ █ ▂ ▃█▆▄██▂▃ ▁ ▅ speed: 2% faster
Zoffix, ▆▅▇▁▄▅██▇▇█████▆██▇█▆█▂▂████████▇█▄▃▅▇▃▆▃▃▇▅▃█▄▅▁▂
timotimo locally i have moar compiled with --optimize=0, if that makes a difference
TimToady I don't 13:04
timotimo perhaps there's an issue with the timer being too short? i'll try a higher number
weird! 13:05
Zoffix lizmat: ^ it's that command... `buggable: speed 42 :4` `buggable: speed [show last N measurements only] :[show graph on 1..4 lines]`
timotimo i increased the number and got it to hang after a second, but after another two or three seconds it rushes through to the finish line
jnthn oh dammit, I know why the opt I thought of won't work :/
jnthn scraps that 13:06
timotimo even weirder: when i increase the interval to 10 seconds it still finishes in under one
jnthn What test are you looking at?
timotimo does Supply.interval(10) immediately fire the first one? it shouldn't
jnthn Yes
timotimo oh, sorry, one sec
jnthn It fires right away, then after 10, 20, etc. 13:07
iirc there's a second arg to control how long until the first firing
timotimo github.com/perl6/roast/blob/master...tax.t#L512
this is the one that hangs for me
jnthn Stresstesting again here
jnthn sticks that one test in a loop 13:10
So far 50 iterations without trouble 13:11
timotimo maybe your computer is too fast :)
jnthn It's competing with a stresstest run
timotimo mhm
jnthn Maybe but...I'd figure that a stresstest run going on at the same time would sahke it out
timotimo i wonder if you can get it to freeze like we have it by adding more timers to the program 13:12
jnthn Dunno. It's almost at 400 iterations now without a problem 13:13
jnthn And now nearly 500 13:14
timotimo i assume supply.interval isn't so happy when i stop the program in gdb? 13:25
would it try to catch up when i resume?
jnthn Mebbe, not sure 13:30
It's just passing on ticks that could from libuv
and so I presume that's suspended too 13:44
Geth rakudo/nom: 2a82623831 | (Jonathan Worthington)++ | src/core/Supply.pm
Optimize creation of supply block state object
13:52
rakudo/nom: 3deda84224 | (Jonathan Worthington)++ | src/core/Supply.pm
Avoid a closure per emit into a supply/react block
rakudo/nom: f58ac99918 | (Jonathan Worthington)++ | 2 files
Streamline async socket message Supply

Implement the Tappable interface directly, rather than going through the `Supply.on-demand` machinery that adds extra safety checks and indirections. This boosts the number of requests per second in a simple Cro HTTP example by around 13%; for more direct users of IO::Socket::Async it will be more significant than that.
14:41
nine jnthn: a stress test in another terminal window may not slow down your test as much as you'd think. AFAIK the Linux scheduler puts processes that run with the same pseudo terminal in a scheduling group with the express purpose of having e.g. a kernel compilation now slow down your UI too much. 15:36
jnthn nine: Hm, interesting :) 15:37
Though I did note that it sped up a lot after the stresstest got done :)
Geth rakudo/nom: 40c2d0cd52 | (Jonathan Worthington)++ | 2 files
Move socket reader tappable into socket class

The initial idea was to share it with Proc::Async, but it turns out they're just different enough it's probably not worth it.
rakudo/nom: c46de00f0b | (Jonathan Worthington)++ | src/core/IO/Socket/Async.pm
Optimize IO::Socket::Async.listen Supply

Again, by avoiding Supply.on-demand and its various protections. Gives a performance boost to async socket servers; in Cro it amounts to ~4% more requests per second.
jnthn Didn't yet manage to reproduce the issue, BTW. Will see if I can on my home machine over the weekend. 15:54
nine Missing serialize REPR function for REPR MVMCode (BOOTCode) 16:01
Oh...that one. Why does this stuff have to be so complicated?
Some milliseconds really are harder earned than others... 16:02
travis-ci Rakudo build failed. Jonathan Worthington 'Avoid a closure per emit into a supply/react block' 16:08
travis-ci.org/rakudo/rakudo/builds/278628591 github.com/rakudo/rakudo/compare/7...eda842247f
buggable [travis build above] ☠ Did not recognize some failures. Check results manually.
jnthn nine: Same with some RTs ;) 16:12
Righty, I'm off for a bit :)
samcv can we pass arrays to nativecall functions and how? 16:23
nine samcv: there's the CArray type 16:49
samcv: NativeCall is well documented on doc.perl6.org :)
samcv thanks. i tried to point my friend to that, after checking it out myself 16:54
dogbert11 .tell jnthn wrt the failing syntax.t test, got this after several attempts: gist.github.com/dogbert17/d018b0f6...0f734d0dbc 17:26
yoleaux dogbert11: I'll pass your message to jnthn.
Zoffix So, $?USAGE.... it just gotta be compile time? 18:27
(as opposed to being a run time thing)
jnthn The ? twigil means compile time, yeah 18:29
Zoffix Yeah, but I meant changing it to $*USAGE
jnthn Is that useful?
I mean, it's not like you'd really need to override it...I guess :) 18:30
And I'm not sure what'd bind it
Zoffix thinks more about it
jnthn I guess my first pass at implementing it would be to keep track of if $?USAGE is mentioned, and if it is then install if in the UNIT scope 18:31
Though perhaps at the end of parsing so we get all the multi MAIN candidates
So if somebody writes it ahead of them all then it has all that it should
That'd not work out too well if somebody did constant foo = $?USAGE but, well, tough :) 18:32
Zoffix I have a patch that has it as Nil at compile time but proper message at run time. I just don't get what's supposed to happen with: `BEGIN say $?USAGE; sub MAIN($a) {}` how can it have compile time value if MAIN wasn't compiled yet? 18:33
jnthn Yeah, that doesn't make so much sense
tbh it feels more like a subroutine than a variable... 18:36
I thought there even was a sub you could define to get custom usage messages
Zoffix Yeah, there is
jnthn m: sub MAIN($x) { }; sub USAGE() { "foo" }
camelia ( no output )
Zoffix m: sub MAIN($x) { }; sub USAGE() { "foo".say }
camelia foo
jnthn m: sub MAIN($x, $y) { }; sub USAGE() { "foo" }
camelia ( no output )
jnthn Of, you have to say it yourself :/ 18:37
m: sub MAIN($x, $y) { }; USAGE()
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared name:
USAGE used at line 1
jnthn Though I guess that's flexible too
Zoffix I think the usecase I noticed most common for people wanting $?USAGE is they just want to slightly alter the default message...
jnthn Right 18:38
Geth rakudo/userland-USAGE: bbedf18d3c | (Zoffix Znet)++ | src/core/Main.pm
Make $?USAGE available in userland

  - This patch makes $?USAGE available in userlange and its compile-time
   value is `Nil`. When MAIN_HELPER has been run, then its value
   is the default usage message
  - The problem is `$?` signifies compile-time value, but what's meant
   to happen with `BEGIN say $?USAGE; sub MAIN($a) {}`? How can it
... (5 more lines)
Zoffix .in 8d so, what's happening with $?USAGE? 18:40
yoleaux Zoffix: I'll remind you on 30 Sep 2017 18:40Z
Zoffix &
perlpilot S06 says "If there is no C<USAGE> routine, a default message is printed to standard error." and "This usage message is automatically generated from the signature (or signatures) of C<MAIN>. This message is generated at compile time, and hence is available at any later time as C<$?USAGE>." That implies (to me) that it's only available in $?USAGE *after* compile time and that *during* compile time, Nil should be fine. 18:51
(but, perhaps there's an argument for building it piece-wise so that it's value is available during compile time as it's being built) 18:53
Zoffix As far as I can tell, it's currently it's generated at runtime. 19:00
And I don't think it needs to be generated at compile time. Most cases of MAIN won't get precompiled, so whatever we do at compile time for this the user is paying for it on each run, and if the message is never printed, it's all wasted effort 19:02
perlpilot Zoffix: it would be very useful if $?USAGE were available in the USAGE sub for those that just want to tweak it rather than re-gen the whole thing. 19:24
Zoffix perlpilot: yeah, that's what my patch does
sub USAGE is called at runtime
committable6: help 19:25
committable6 Zoffix, Like this: committable6: f583f22,HEAD say ‘hello’; say ‘world’ # See wiki for more examples: github.com/perl6/whateverable/wiki/Committable
Zoffix c: bbedf18d3c say $?USAGE
committable6 Zoffix, ¦bbedf18: «Cannot find this revision (did you mean “8efffb1”?)»
perlpilot then I'd merge it if I were you (assuming there's no roast breakage)
Zoffix Hm, I thought there was a way to run a commit from a branch... 19:26
But anyway `sub MAIN ($x) {}; sub USAGE { $?USAGE.uc.say }` prints default usage in uppercase
perlpilot: ok, thanks :) I'll merge in a week unless someone has better ideas. Just kinda iffy for `$?` variable to not have a proper value at compile time. 19:27
I guess the crux of my hesitation is that the variable is mis-named.
S02 says "All $? variables are considered constants, and may not be modified after being compiled in." 19:29
.oO( install a Proxy; hey, technically I'm not "modifying" any variables ^_^ )
19:30
perlpilot That negates any argument about a piece-wise $?USAGE during compile time as far as I'm concerned. It sounds like $?VARS should be built once at some canonical time (the very end of compile time?) 19:33
Zoffix S02 says you can modify them at compile time 19:34
But I don't get the usefulness of piece-wise making of $?USAGE; also there's a problem that we don't wanna pay for making it
I'd just shove it into PROCESS:<$USAGE> from within MAIN_HELPER. Let it live in the bunch with $*KERNEL and stuff 19:36
.ask TimToady S02 says $? vars must not be changed after compile time; that makes $?USAGE kinda iffy, since we run all the sub MAIN bits at runtime. I'm thinking of changing it to $*USAGE on Sept 30th. Thoughts? IRC discussion: irclog.perlgeek.de/perl6-dev/2017-...i_15204296 19:43
yoleaux Zoffix: I'll pass your message to TimToady.
Zoffix .tell TimToady worth clarifying: currently $?USAGE isn't available to users (so the change won't be breaking any code) 19:44
yoleaux Zoffix: I'll pass your message to TimToady.
bartolin jnthn: i can't find a way to fix the issue with perl6-eval-server by moving the arguments to create-jvm-runner around. the evalserver starts, but once I run eval-client.pl I get a NoSuchFileException because it looks for BOOTSTRAP.jar below libdir 19:54
jnthn bartolin: Aww, too bad. Then it must be something else. 19:55
bartolin jnthn: the relevant line seems to be here: github.com/rakudo/rakudo/blob/c46d...er.nqp#L52
falling back to blib/Perl6/BOOTSTRAP.jar 'works': gist.github.com/usev6/9a2fde23088b...3175641b4c (second comment) 19:56
maybe i'm missing an easy fix ... 19:57
Geth rakudo/nom: 17aead2759 | usev6++ | 4 files
[jvm] Update requirement for jdk 1.8

It's no longer possible to build NPQ with JDK 1.7, since nqp::codes requires Java8 (cmp. nqp commits de18e88970 and 8d8bb5d3bc).
20:33
nqp: cd588c17da | usev6++ | 2 files
[jvm] Add note about requirement for jdk 1.8
20:35
gfldex jnthn: while siegeing the golfed httpd I got "MoarVM oops: Return label is NULL!" 21:10
stacktrace: gist.github.com/gfldex/8999a8bd511...e6887ff08b
Geth rakudo/nom: ffd17990d0 | (Nick Logan)++ (committed using GitHub Web editor) | .travis.yml
[jvm] Update requirement for jdk 1.8

  See: github.com/rakudo/rakudo/commit/17...5b901428b0
21:12
bartolin ah, missed that, ugexe++ 21:18
gfldex jnthn: the evil RAMz eating monster seams to be banished tho 21:57
jnthn Well, I guess that's bad news and good news respectively :) 22:11
Will probably be Monday before I dig any further; quite tired from the week's supply guts hackery, and it's both national railway day *and* some food truck festival here tomorrow, so I figure I'll distract myself with at least one of those :) 22:13
thundergnat seen samcv 22:26
argh
tell samcv I tried out that branch with the 'natural' number collation and was found things I would consider suspect if not completely wrong. Demo test script at gist.github.com/thundergnat/8a4857...7777e85874 22:30
argh again. 22:31
geekosaur leading ,.
thundergnat .tell samcv I tried out that branch with the 'natural' number collation and was found things I would consider suspect if not completely wrong. Demo test script at gist.github.com/thundergnat/8a4857...7777e85874
yoleaux thundergnat: I'll pass your message to samcv.
geekosaur er .
I can't type
samcv hey
yoleaux 22:31Z <thundergnat> samcv: I tried out that branch with the 'natural' number collation and was found things I would consider suspect if not completely wrong. Demo test script at gist.github.com/thundergnat/8a4857...7777e85874
thundergnat geekosaur, yeah you and me both. :)
samcv can you give me some of the output?
thundergnat sure, here or a gist? 22:32
samcv gist is fine. depends how long it is 22:33
thundergnat gist.github.com/thundergnat/87cd09...df5443e679
Not ALL of that is suspect but a bunch of it is. 22:34
first line is Sort::Naturally natural sort second is collate method in that gist ^^ 22:35
samcv ok thank you 22:38
would you mind making an issue on the moarvm issue tracker for feature request and link to both of those gists?
thundergnat Sure
samcv awesome :) 22:39
Geth roast: skids++ created pull request #328:
Add tests for RT#104980
23:24
synopsebot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=104980
Geth roast: 49f2e05f05 | skids++ | S12-construction/BUILD.t
Add tests for RT#104980
roast: d06b0a2308 | skids++ (committed using GitHub Web editor) | S12-construction/BUILD.t
Merge pull request #328 from skids/rt104980

Add tests for RT#104980
synopsebot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=104980
synopsebot6 Link: rt.perl.org/rt3/Public/Bug/Display...?id=104980
travis-ci Rakudo build errored. Nick Logan '[jvm] Update requirement for jdk 1.8 23:44
travis-ci.org/rakudo/rakudo/builds/278783880 github.com/rakudo/rakudo/compare/1...d17990d013
buggable [travis build above] ☠ Did not recognize some failures. Check results manually.
Geth rakudo/nom: 7af339b91d | (Nick Logan)++ (committed using GitHub Web editor) | .travis.yml
Use proper java 8 jdk package
23:49
Zoffix Travis error on all Linux builds only: E: Package 'openjdk-8-jdk' has no installation candidate 23:50
ah fixed already 23:51