Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2016-05-17

| Channels | #perl6-dev index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
02:22 ugexe joined #perl6-dev
04:10 skids joined #perl6-dev
06:19 [Tux] This is Rakudo version 2016.04-204-ge239f6e built on MoarVM version 2016.04-134-g9879233
06:19 [Tux] test            20.111
06:19 [Tux] test-t          13.240
06:19 [Tux] csv-parser      35.028
06:50 stmuk joined #perl6-dev
07:44 RabidGravy joined #perl6-dev
07:56 dalek rakudo/nom: 28b7408 | niner++ | tools/build/Makefile- (2 files):
07:56 dalek rakudo/nom: Mark repositories as version 1 at install time
07:56 dalek rakudo/nom:
07:56 dalek rakudo/nom: The only part missing was the version file.
07:56 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/28b74083a8
07:56 nine And of course it quits before the much more interesting commit:
07:57 nine Add a basic packaging tool for modules
07:57 dalek joined #perl6-dev
07:57 nine This script can be used for installing dists which don't need a build step or for which the build has been run manually.
07:57 nine More importantly, it can be used as part of the module packaging process. It can install a dist into a temporary repository while creating (precomp-) files that can be dropped into the real destination repo during package installation.
07:57 nine For example, run the following commanads:
07:57 nine VENDOR=$(perl6 -e 'CompUnit::RepositoryRegistry.repository-for-name("vendor").prefix.print')
07:57 nine perl6 install-dist.pl --for vendor --to /tmp/vendor /path/to/module
07:58 nine sudo cp /tmp/vendor/* $VENDOR # or package /tmp/vendor up
07:58 nine review: https://github.com/rakudo/rakudo/commit/2801780673f7f5a32f72e0a1d2b9a81e01f7f2e9
08:13 RabidGravy cool
09:04 cognominal joined #perl6-dev
09:12 dalek nqp: 43e3696 | usev6++ | src/vm/jvm/runtime/org/perl6/nqp/io/SyncHandle.java:
09:12 dalek nqp: Only get new data from readBuffer
09:12 dalek nqp:
09:12 dalek nqp: While using nqp::readallfh after a call to nqp::readlinechompfh
09:12 dalek nqp: there seemed to be old data in readBuffer -- and we copied that
09:12 dalek nqp: instead of only new data.
09:12 dalek nqp: review: https://github.com/perl6/nqp/commit/43e3696f94
09:12 dalek nqp: c043ac3 | usev6++ | t/nqp/019-file-ops.t:
09:12 dalek nqp: Add another test for nqp::readlinefh
09:12 dalek nqp: review: https://github.com/perl6/nqp/commit/c043ac31cd
09:12 dalek nqp: f198ea5 | usev6++ | src/vm/jvm/runtime/org/perl6/nqp/io/SyncHandle.java:
09:12 dalek nqp: Look in readBuffer before reading from Channel
09:13 psch nine: with ^^^ that locally i get "setcodeobj can only be used with a CodeRef", which is where you were at with the work r-j workaround, wasn't it?
09:14 psch s/ work//
09:17 nine yes, indeed
09:17 psch i'm somewhat annoyed that install-core-dist.pl is so jdb-resilient
09:18 psch like, there's a point somewhere in its execution where it stops doing anything when run under jdb
09:18 psch although not completely reliable, which i guess means threading weirdness vOv
09:19 nine Could be similiar to perl6-gdb-m. We do run precompilation in separate processes and capture stdout and stderr. Seems to confuse debuggers.
09:21 psch ah, yes, CUPR:199
09:21 psch i guess i'll try running perl6-jdb-server from there instead of $*EXECUTABLE
10:03 psch hrm, that doesn't work.  i end up with two java -Xdebug processes listening on the same port :/
10:05 nine Can you attach to a running process?
10:05 nine Maybe add some sleep 30 to the to-be-compiled module to give you some time
10:07 psch well, perl6-jdb-server suspends until a debugger is attached
10:08 psch ...actually, it's probably smarter to implicitly precompile the module that breaks, isn't it
10:11 psch but afaict every dependency starts it's own process..?
10:12 psch which means i either have to add the port as an arg to perl6-jdb-server or edit the script before running it
10:18 psch hm, can i get the name of the module somehow in .precompile?
10:19 dalek nqp: 36946e0 | (Pawel Murias)++ | src/vm/js/nqp-runtime/ (3 files):
10:19 dalek nqp: [js] Serialize hllOwner.
10:19 dalek nqp: review: https://github.com/perl6/nqp/commit/36946e0ea8
10:19 dalek nqp: 3e10591 | (Pawel Murias)++ | / (2 files):
10:19 dalek nqp: Test serializing a type with a hllOwner.
10:19 dalek nqp: review: https://github.com/perl6/nqp/commit/3e1059191f
10:19 dalek nqp: 021c409 | (Pawel Murias)++ | src/vm/js/bin/run_tests.pl:
10:19 dalek nqp: [js] Fix run_tests.pl after the rename.
10:19 dalek nqp: review: https://github.com/perl6/nqp/commit/021c409241
10:54 nine $source-name should give it away
10:58 dalek joined #perl6-dev
11:44 psch turns out i didn't need that, anyway
11:44 psch guessing "it's NativeCall" was sufficient... :)
11:45 psch nine: the breakage is somewhere downwards from PrecompilationDependency::File.deserialize
11:45 nine Yes, the EVAL
11:45 psch yeah, the CodeRef is null
11:46 psch ...you probably knew that vOv
11:46 psch anyway, jdb-fu doesn't help there i suppose, at least not during loading of the dependency
11:53 nine This patch is somewhat revealing: https://gist.github.com/niner/6b79af9b3ddb67178c05861e5ae6898f
12:35 psch ...i'm not seeing it
12:48 nine The EVAL in question is evaluating "CompUnit::DependencySpecification.new(:short-name<NativeCall::Types>)". This happens several times during a install-core-dist.pl run. The first 2 times it works, the third time breaks.
12:48 nine There is a difference between the working QAST trees and the breaking.
12:49 nine Especially the I think post_deserialize frames in the beginning
12:50 psch i'm getting exactly one QAST dump here
12:54 nine That's....odd. Have to try it myself then. I'm on a different machine right now
12:55 psch there's three "Oops!!!" in there, fwiw
12:55 psch one "cannot stringify", two "cannot invoke"
13:08 hoelzro joined #perl6-dev
13:14 cognominal joined #perl6-dev
13:20 nine psch: indeed, on this machine I only get a single QAST and it's the broken one.
13:21 nine psch: I hope I can still reproduce the situation I described earlier on my desktop at home. Might give us valuable insight.
13:22 nine Do you see the - QAST::Op(bindcurhllsym) - QAST::SVal(GLOBAL) - QAST::WVal(NQPMu) in the [post_deserialize], too? That alone doesn't look right...
13:24 psch yeah, that's here too
13:24 psch and yes, i agree.  NQPMu as GLOBAL seems wrong
13:50 Woodi joined #perl6-dev
14:04 skids joined #perl6-dev
14:15 lizmat joined #perl6-dev
14:15 lizmat good *, #perl6-dev
14:16 * lizmat notes the backlog URL misses an "l" in the topic
14:16 timotimo oh, indeed it does
14:16 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/2016-05-15
14:17 lizmat moritz++
14:17 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
15:06 pmurias joined #perl6-dev
15:09 dalek nqp: d2a5791 | (Pawel Murias)++ | src/NQP/Optimizer.nqp:
15:09 dalek nqp: Stop the optimizer from breaking nqp code using takedispatcher and getlexouter.
15:09 dalek nqp: review: https://github.com/perl6/nqp/commit/d2a57918c3
15:09 dalek nqp: baf5c0a | (Pawel Murias)++ | t/nqp/100-dispatcher.t:
15:09 dalek nqp: Avoid a now not needed optimizer bug workaround in test.
15:09 dalek nqp: review: https://github.com/perl6/nqp/commit/baf5c0af6d
15:09 dalek nqp: 1ff50c8 | (Pawel Murias)++ | src/vm/js/Operations.nqp:
15:10 dalek nqp: [js] Implement nqp::getlexouter.
15:10 dalek nqp: review: https://github.com/perl6/nqp/commit/1ff50c8424
15:17 dalek nqp: 6010bd6 | (Pawel Murias)++ | t/nqp/101-lexpad-stuff.t:
15:17 dalek nqp: Test nqp::ctx, nqp::ctxcaller and nqp::getlexouter.
15:17 dalek nqp: review: https://github.com/perl6/nqp/commit/6010bd6c4d
15:18 timotimo pmurias: this work is really worth a lot; adding tests makes everything better!
15:19 pmurias_ joined #perl6-dev
15:36 nine psch: this is the QAST when the EVAL works: https://gist.github.com/niner/5b9eb2808757e2f3020cb83fb8ef7590
15:37 lizmat nine: I'm working on the P6W: could you summarize the work that you just merged ?
15:41 pmurias joined #perl6-dev
15:45 lizmat ===SORRY!===
15:45 lizmat Function 'NativeCall::Types::void' needs parens to avoid gobbling block (or perhaps it's a class that's not declared or available in this scope?)
15:45 lizmat ^^^ make install on JVM
15:45 lizmat is that a known issue ?
15:45 nine lizmat: that should be fixed on nqp master
15:45 lizmat ah, ok
15:45 lizmat is there a reason not to bump ?
15:46 nine The build still does not finish :/
15:46 nine PrecompilationStore overhaul
15:46 nine Redesigned the way precompilation files and the accompanying dependency information is stored so we no longer have to file lock the PrecompilationStore for read access (i.e. loading modules). This also rids us of needing write access to the standard repositories, meaning that you no longer get permission errors with a system wide rakudo installation.
15:46 nine We can now store the result of dependency verification necessary when (probably unrelated) modules were installed since a file was precompiled, speeding up module loading in the common case.
15:46 nine For the first time, it's now possible to package modules for Linux distributions, including the precompiled files.
15:46 nine lizmat: ^^^
15:47 lizmat nine++
15:47 lizmat nine++  # for making my work easier  :-)
15:48 nine Summing it up like this, I see that it really was a "fix all things at once" kind of endeavour :)
15:49 timotimo mhhh
16:17 dalek rakudo/nom: e39ce3d | niner++ | tools/install-dist.pl:
16:17 dalek rakudo/nom: Fix stupid editing mistake in install-dist.pl
16:17 dalek rakudo/nom:
16:17 dalek rakudo/nom: Thanks to vendethiel++ for spotting this.
16:17 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e39ce3dbfd
16:30 pmurias joined #perl6-dev
17:11 pmurias joined #perl6-dev
17:41 lizmat hmmm... looks like Travis doesn't know about #perl6-dev yet
17:48 timotimo yeah, i think froggs' travis user account is used for that
17:48 timotimo he'd probably have to flip the switch
17:48 timotimo do you know what's up with him?
17:49 ugexe https://github.com/rakudo/rakudo/blob/nom/.travis.yml#L25
17:56 pyrimidine joined #perl6-dev
18:08 ilbot3 joined #perl6-dev
18:08 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
18:09 lizmat And another Perl 6 Weekly hits the Net: https://p6weekly.wordpress.com/2016/05/17/2016-20-packaging-progress/
18:23 bartolin lizmat++
18:25 hoelzro lizmat++
18:28 nine Thanks lizmat++!
18:56 RabidGravy yay!
19:12 [Coke] lizmat++ <teal'c>indeed</teal'c>
19:16 cognominal lizmat++
19:47 pyrimidine joined #perl6-dev
20:00 nine psch: # TODO: use the Moar code-path here on all backends. The issue was discovered close to release, so only the Moar backend - that really needs this - is being updated for now.
20:00 nine psch: https://github.com/rakudo/rakudo/blob/nom/src/Perl6/World.nqp#L3101
20:00 nine psch: This FixupList is part of the failing QAST
20:01 psch ohh, yeah, i've seen that a few times
20:01 psch i think i even tried porting it once
20:02 psch i mean, the comment and code
20:02 psch so, wait
20:03 psch the *class* FixupList doesn't work on r-j?
20:03 dalek roast: 4773808 | usev6++ | S03-operators/buf.t:
20:03 dalek roast: Unfudge passing tests for JVM, RT #126530
20:03 dalek roast: review: https://github.com/perl6/roast/commit/47738082e9
20:06 nine psch: no idea. I just noticed that it shows up in the failing QAST. Maybe completely unrelated, but we do have a failure and a TODO, so it seems prudent to investigate
20:06 nine psch: though I may just have across something that is closer to the error message
20:10 psch nine: great.  i've not really found any approach to figure that out.  if you have anything that needs a different pair of eyes, make a noise :)
20:16 dalek roast: a85c4b4 | usev6++ | S03-operators/buf.t:
20:16 dalek roast: Add test for RT #126529
20:16 dalek roast: review: https://github.com/perl6/roast/commit/a85c4b4b8c
20:21 dalek roast: 7073efe | usev6++ | S03-operators/buf.t:
20:21 dalek roast: Tweak test for RT #126529
20:21 dalek roast: review: https://github.com/perl6/roast/commit/7073efe39a
20:55 dalek roast: fb10313 | usev6++ | S (3 files):
20:55 dalek roast: Unfudge some more tests for JVM
20:55 dalek roast: review: https://github.com/perl6/roast/commit/fb10313606
20:56 psch bartolin++
20:56 psch looks like the Binder fix actually did something
20:56 psch still not sure how to solve #126493
20:56 psch 'cause, like, that's the case that explicitly *isn't* fixed there... :)
21:02 bartolin looks like a nqp bump would make it possible to run spectests for r-j again \o/
21:02 * bartolin has absolutely no idea how a fix for #126493 would look like :-/
21:08 psch ("there" means "the place i last patched the jvm Binder", for clarity)
21:09 psch fwiw, 'make test' has somewhat higher priority in my mind than 'make spectest', but seeing as nine++ is already on that we might as well bump now
21:09 psch as in, 'make test' is currently blocked by NativeCall not precompiling right
21:11 bartolin true. on the other hand I'd really like to be able to run my daily stresstests again. mainly because it makes it much easier to catch regressions
21:21 dalek roast: 54bbc00 | usev6++ | S02-types/hash_ref.t:
21:21 dalek roast: Another passing test for JVM
21:21 dalek roast: review: https://github.com/perl6/roast/commit/54bbc00b96
21:21 psch bartolin: ...i don't really see how that's the other hand :)
21:21 psch my point is "we can run spectest with bump, but can't without, so we should bump"
21:22 bartolin :-)
21:23 psch bartolin: 2016.04-108-g6010bd6 is the right one, isn't it?
21:23 bartolin I just wanted to explain why my priorities were a bit different from yours. but it's late here, so I'll head to bed ...
21:23 * psch doesn't really want to build and start spectest right now
21:23 bartolin mom, looking
21:25 psch that's 'git describe' for master HEAD, fwiw
21:26 bartolin hmm, I never did that version bump thing, so I'm not sure
21:26 bartolin maybe you can just leave it for tomorrow?
21:26 psch yeah, sure :)
21:27 bartolin ++psch :-)
21:28 * psch heads off o/
23:52 lizmat joined #perl6-dev

| Channels | #perl6-dev index | Today | | Search | Google Search | Plain-Text | summary