MasterDuke Zoffix: i really like your last blog post, but i obviously wasn't as clear as i should have been in RT#128526 00:26
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128526
MasterDuke in that i think there should have been something to catch when using the :w
Zoffix MasterDuke, right. Instead of throwing the exception, .write seems to exit altogether. 00:27
MasterDuke what should have been thrown and caught is that i was attempting to start a non-existing executable
yeah, .write ate the exception 00:28
Zoffix And .start wouldn't throw. It's the Promise it returns would be broken and you'd get an exception when you `await` it. 00:29
Which actually works if you toss out the .write() 00:30
MasterDuke yeah, my "works like it should" example catches that exception, but then dies with a message instead of reporting the actual exception thrown, which was less than clear 00:32
dalek ast: a053865 | (Zoffix Znet)++ | / (2 files):
Add doesn't_hang() test to Test::Util

Executes a potentially-hanging program with Proc::Async. Kills it if it does not complete within specified time. Tests STDERR/STDOUT if the program completes successfully.
01:08
ast: c46127c | (Zoffix Znet)++ | packages/Test/Util.pm:
Change default wait time for doesn't_hang()

Use 1.5 second default wait instead of 1 second.
01:29
ast: 40a965e | (Zoffix Znet)++ | packages/Test/Util.pm:
Use kebob case for doesn't-hang
ast: 242c56c | (Zoffix Znet)++ | fudge:
Use kebob case for doesn't-hang() in fudgeables
01:41
ast: 430bd20 | (Zoffix Znet)++ | S19-command-line/repl.t:
Replace verbose test with doesn't-hang() call
ast: a047d78 | (Zoffix Znet)++ | S17-supply/interval.t:
[SKIP FUDGE] done() on first iteration of Supply.interval must not hang

RT#128469
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128469
travis-ci Rakudo build errored. Elizabeth Mattijsen 'Make Str.samemark about 50x faster 01:51
travis-ci.org/rakudo/rakudo/builds/144558128 github.com/rakudo/rakudo/compare/6...4734fd4fed
dalek ast: 1156ad1 | usev6++ | S32-str/samemark.t:
Skip test for samemark on JVM (NYI)
05:04
lizmat Files=1109, Tests=52438, 225 wallclock secs (13.38 usr 3.83 sys + 1401.01 cusr 117.03 csys = 1535.25 CPU) # new low in CPU, on a cold machine 07:41
down from 1544 :-)
dalek kudo/nom: 79348c7 | neuron++ | lib/NativeCall.pm6:
Move role definitions before the setup method
07:52
kudo/nom: a3fad54 | neuron++ | lib/NativeCall.pm6:
Add ability to mark native call to be not mangled
kudo/nom: 527f8d9 | lizmat++ | lib/NativeCall.pm6:
Merge pull request #826 from vlmarek/nom

Ability to mark nativecall import symbol to be mangled or not
psch yay, i got the 'use lib <java#...>' stuff kinda working 12:12
as in, it doesn't die on the use 12:13
but that's about how far it works, and i also seem to have broken :from<JavaRuntime> in the process :|
[Coke] Zoffix: I have no insight into the mailing list; in those cases, all I can do is raise it to the rt admins - but keep in mind that there is a spam filter in front of that, so some emails will get blacklisted and dropped, and others will get held in queue until a human can review them.
yoleaux2 13 Jul 2016 21:43Z <Zoffix> [Coke]: unsure if you have access to look into it, but it seems there's some email issues between RT and perl6-compiler list. For example lizmat replied on the mailing list to a bug report (to [email@hidden.address] but it did not show up on the ticket: RT#128615 Also, I've been commenting on a bunch of tickets with Bcc to perl6-compiler, but those don't get to mailing list
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128615
dalek ast: bf10b7b | (Zoffix Znet)++ | S29-os/system.t:
Use SKIP fudge instead of commenting out the test

The skip fudger does not run the actual tests, so they won't hang
12:18
ast: ca52ecc | (Zoffix Znet)++ | S29-os/system.t:
[TODO FUDGE] LAST phaser gets triggered when using -n command line switch

RT#128398
12:28
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128398
psch hrm, so i get a TypeObject now 12:56
i think i had this exact same problem before and fixed it, but...
well, that was probably like a year ago or something :|
dalek ast: 8e585a4 | (Zoffix Znet)++ | S03-metaops/cross.t:
&infix: works with metaoperators regardless of combination

RT#78188
13:12
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=78188
dalek p: 0a77c17 | (Pawel Murias)++ | src/vm/js/ (2 files):
[js] Implement nqp::sleep.
13:29
[Coke] pmurias: how's it going? Haven't seen a blog post in a while. 13:30
Frameless So some entire roast files aren't used during tests? How does the make spectest know what to skip? 13:38
pmurias [Coke]: working up on speeding up the code nqp-js generates as building rakudo.js/compiling the part of the setting that works took ages (and if rakudo.js was compiling code that slow it wouldn't be usefull for much)
Frameless For example S10-packages/require-and-use.t is still testing %*INC and when I run it manually pretty much every test in it fails. Yet that's not see with make spectest 13:39
*seen
pmurias [Coke]: I'll set to planning a blog post as there are some (sort of interesting) optimization ideas
[Coke] pmurias++ 13:46
lizmat jnthn: looking at SlippyIterator: is there a reason why we cannot just use DEFINITEness of $!slip-iter as a flag for slipping ? 13:47
jnthn: and get rid of the $!slipping attribute altogether ? 13:48
dalek kudo/nom: eb79d73 | lizmat++ | src/core/Any-iterable-methods.pm:
Make for @a.kv -> $k, $v { } 4x as fast

By adding a special optimised case for &block.count == 2 to sequential-map. Otherwise, this would have been done by the verye generic case that takes any number of arguments and has support for phasers. Since the -> $k, $v case is a pretty common occurrence, I felt that this special optimised code made sense to add, even though it adds an extra code path and thus burden on maintenance..
14:36
lizmat afk& 14:39
perlpilot That block that's needed "for some reason" is slightly scary. 14:55
japhb
.oO( Why is it scary? For some reason. )
14:59
psch well, it is about lowering, so i'd guess inlining looses a reference somehow? 15:07
not that i really know those bits, like, at all vOv
okay, what 15:30
the existence of a second candidate for typeForName in BootJavaInterop is enough to break importing of JavaRuntime classes
...i think that's actually somewhat of a bootstrappy issue, maybe 15:31
'cause BootJavaInterop builds the interop adaptor for RakudoJavaInterop 15:32
and maybe inheritance and mmd somehow step on each others feet there..?
ha ha 16:08
soo, i changed it
instead of having two typeForName candidates i ripped out the "hack a new path into the sysClassLoader via inflection" bit from the new candidate 16:09
and put it into RakudoJavaInterop, instead of BootJavaInterop
and, well, it relies on getting the class loader of the current class
which, apparently, in RakudoJavaInterop, is null
well 17:08
i can't get a class loader in any way i can think of
going via ClassLoader.systemClassLoader gives me null, super.getClass().getClassLoader() gives null, and even a method that does getClass().getClassLoader() in BootJavaInterop called by RakudoJavaInterop gives null
...the latter is probably not particularly different from calling getClass().getClassLoader() in RakudoJavaInterop, but i'm confused and desperate :P 17:09
oh fsck, that's the bootstrap loader 17:21
which means ripping out the "don't use bootclasspath fix" i had in previously was a bad idea :|
as in, getting null from getClassLoader() means it's the boot ClassLoader 17:22
but, when i don't have the bootclasspath set i get problems with JavaRuntime imports
i mean, i had a reason to rip that "fix" out again :|
nine Frameless: t/spectest.data in rakudo 17:27
Frameless: if you see test files that could actually work with maybe a little update, then please fix them and add them to spectest.data :) It's a waste to leave them lying around 17:29
Frameless Thanks
[Coke] there is a utility to run that will show you all the unrun files and how well they do: 17:30
psch humm, some kind of progress, probably..? 17:54
the java# spec works now
although a bad test revealed how fragile it is... 17:55
as in, calling a non-static method on the class (and not an instance) SEGVs the jvm
but, unfortunately, the javart# spec is now broken again, due to the bootclasspath removal
i think i'm gonna let that sit for at least the rest of today 17:56
all this class loader business is really weird and opaque
[Coke] tools/update-passing-test-data.pl # sorry, someone in office since last send. 18:01
lizmat drops a pin 19:58
AlexDaniel committable: 2015.10 use experimental :macros; macro bar { 42 }; bar; 20:20
committable AlexDaniel: 「exit=1」 ===SORRY!===␤Could not find experimental in any of:␤ file#/home/bisectable/.perl6/2015.10/lib␤ inst#/home/bisectable/.perl6/2015.10␤ file#/home/bisectable/git/bisectable/builds/3df26301e146883b287138df382878a0414f62de/share/perl6/lib␤
..file#/home/bisectable/git/bisectable/builds/3df26301e146883b287138df382878a0414f62de/share/perl6/vendor/lib␤ file#/home/bisectable/git/bisectable/builds/3df26301e146883b287138df382878a0414f62de/share/perl6/site/lib␤
..inst#/home/bisectable/git/bisectable/builds/3df26301e146883b287138df382878a0414f62de/share/perl6␤ inst#/home/bisectable/git/bisectable/builds/3df26301e146883b287138df382878a0414f62de/share/perl6/vendor␤
..inst#/home/bisectable/git/bisectable/builds/3df26301e146883b287138df382878a0414f62de/share/perl6/site
AlexDaniel oh crap no
MasterDuke: just killed bisectable thinking that I was running it :D 20:22
MasterDuke AlexDaniel: i thought you were? 20:40
AlexDaniel MasterDuke: rajaniemi.freenode.net (Helsinki, FI, EU) – no idea who is that :) 20:41
mleh wrong thing copied
~Committab@ns306169.ip-94-23-219.eu I mean
oh, that's me! 20:42
MasterDuke ha 20:43
AlexDaniel yeah, that was definitely me…
AlexDaniel hides
anyway, it's time to run latest versions now
MasterDuke woot for new versions 20:49
dalek kudo/nom: 6bad689 | lizmat++ | src/core/ (2 files):
Make Str.starts-with 2x as fast

By creating an optimized Str version, and letting the Cool candidate refer to that one.
22:14
kudo/nom: 806ea82 | lizmat++ | src/core/ (2 files):
Make Str.ends-with 25% faster

By providing a separate Str candidate, and letting the Cool candidate use that.
kudo/nom: c3ee517 | lizmat++ | src/core/ (2 files):
Make Str.substr-eq 4x as fast

By adding dedicated optimised Str candidates, which the Cool candidate calls for compatibility
22:32
kudo/nom: ada2fe0 | lizmat++ | src/core/Str.pm:
Make Str.contains 6x as fast

By adding optimised Str candidates, to which the Cool candidate defers.
22:46
kudo/nom: fb71b2b | lizmat++ | src/core/Cool.pm:
Oops, forgot to adapt the Cool.contains variant
22:50
kudo/nom: c9dcc9e | lizmat++ | src/core/Cool.pm:
Oops, forgot to Intify the position
23:36
lizmat two oopses in a row, I should stop committing
good night, #perl6-dev