dalek kudo/nom: 5d514af | coke++ | docs/release_guide.pod:
release in progress...
00:01
kudo/nom: c766094 | coke++ | tools/build/NQP_REVISION:
[release] bump NQP revision
kudo/nom: c067957 | coke++ | VERSION:
[release] bump VERSION
kudo/nom: 8e0b56b | coke++ | docs/release_guide.pod:
warn about perl6 vs. ./perl6
00:06 lizmat joined
dalek kudo/nom: b8302b3 | coke++ | docs/release_guide.pod:
fix shell typo
00:08
kudo/nom: 816a2c4 | coke++ | docs/release_guide.pod:
Test the Inline::Perl5 tests in roast

as part of the official release process.
00:18
kudo/nom: bb40720 | coke++ | docs/release_guide.pod:
Warn about stresstest warnings
00:26
kudo/nom: 9f3ec1a | coke++ | docs/release_guide.pod:
clarify stresstest in the tarball build
00:51
kudo/nom: 4461719 | coke++ | CREDITS:
combine identical emails
00:59
kudo/nom: 0c6c1c1 | coke++ | docs/ChangeLog:
one or two more changelogs
01:03
kudo/nom: ec2b6b2 | coke++ | docs/announce/2016.04.md:
expand people
01:07
kudo/nom: d941e62 | coke++ | docs/ChangeLog:
remove dupe, whoops
kudo/nom: 3a606a1 | coke++ | docs/announce/2016.04.md:
add notes from Changelog
kudo/nom: c37939c | coke++ | docs/announce/2016.04.md:
remove early adopter language
[Coke] release tagged and tarballed. 01:10
02:15 geekosaur joined 03:29 vendethiel joined
stmuk w00t! 04:56
07:20 RabidGravy joined
[Sno] nine_: in case you want to destroy one more bubble, take a look at www.lrde.epita.fr/~adl/autotools.html 07:46
in doubt, skip the macro explanations, just read reasons and consequences 07:47
07:51 lizmat joined
masak [Coke]++ # release 08:11
08:45 brrt joined
jnthn [Coke]++ # release 09:04
RabidGravy [Coke]++ # Woah the Okey cokey! 09:18
jnthn [Sno]: Was too tied up yesterday with other tasks to read the slides properly. Now I did, and my notes/questions are here: gist.github.com/jnthn/7843dadbe45e...679c21f407 09:19
[Sno] jnthn: thanks, will check them
jnthn: your comment to slide 9 is why I yesterday said "NQP is platform-agnostic" is true and wrong 09:20
jnthn [Sno]: I don't get the "and wrong" bit at all 09:22
[Sno] it is the reason for the mail from Feb 298th to you, liz and a few others - caused by a build error of IIRC rakudo 09:23
jnthn How do you handle cross-compilation of, say, a pure Perl module?
Or maybe a better example, a Java library that's pure JVM bytecode?
[Sno] jnthn: the compilation isn't always the problem - it is prereqs and post-compile processes at well
jnthn: see eg. github.com/rehsack/meta-jens/blob/...-bin.patch 09:25
jnthn: regarding prereqs - when you cross-compile a pure-perl but use data from build host to do that (simple example: INT_MAX), it might cause hard to find issues on target 09:27
for a typical developer - that's all "compile" (for you, it's probably packaging)
psch hrm 09:28
psch lacks thinking yet, apparently
not related to the cross-building stuff, sorry for potential interruption... :) 09:29
jnthn [Sno]: OK, so (for the pure Perl case) how is that resolved?
Though maybe it's "not an issue" in that compiling modules doesn't really happen... 09:30
[Sno] jnthn: depends - for recent Perl6 build's it resolved, I still stuck in find the location where the target artifact is executed
that heavily depends on the particular problem if, and when, how to solve 09:31
jnthn: s/for recent Perl6 build's it resolved/for recent Perl6 build's it not resolved/ 09:33
I talked with lizmat regarding the issue and showed her the build logs and we decided I first do this talk and send it around to "educate" some people and then we look again 09:34
it is not a business-critical situation but when we can avoid mistakes made for other languages in Perl6 in early versions, we can become No°1 in IoT ;) 09:35
09:35 synopsebot6 joined
jnthn nine_: github.com/rakudo/rakudo/commit/ef...330fcR2119 - if I understand, in nested mode we always immediately run a code object we just produced? 09:36
[Sno] jnthn: regarding comment to slide 14 - I didn't dig really deep - I realized that a found lua without lua-jit causes Configure.PL to fail
jnthn nine_: What happens if the `EVAL` contains a role or defines a class or itself has a BEGIN block? I'm worrying if github.com/rakudo/rakudo/commit/ef...330fcR2303 has bad consequences... 09:38
[Sno] jnthn: for cross-compiling Rakudo*, my recipe first builds a build version (runable on build-host), then cross-compiles for target (specifying build with --sdkroot)
09:39 sortiz joined
[Sno] jnthn: my first goal is to make you, moritz, froggs, nine etc. being aware of the situation (even of wrong PATH's because of build sysroots and DESTDIR -- both, and unusual for normal developers) 09:39
jnthn nine_: github.com/rakudo/rakudo/commit/ef...330fcR4089 - this looks moar-specific? 09:40
[Sno] maybe when you next time visit liz and wendy, I come around or you three come to my house and I can demonstrate all of that in practice
jnthn nine_: I should probably have made those comments on the commit, d'oh :) 09:41
[Sno]: Yeah, I see the issue a little better now, at least. 09:42
[Sno] jnthn: if I'm allowed to clarify - I packaged a lot for a cross-build, most languages are weird and Perl6 is (likely because of split into (Moar|J)VM, NQP, Rakudo*) beside really simple ones as lua the one with fewest crap in the build system 09:44
jnthn [Sno]: Having the clean separation helps quite a lot architecturally in other ways too...good to know it also has build benefits. 09:49
m: role Foo::Bar { }; say (42 but Foo::Bar).^shortname 09:52
camelia rakudo-moar c37939: OUTPUT«Bar}␤»
psch hm, nqp-j VMNull compiles, mostly... except stage2 wants to do aggregate operations on it, apparently 09:54
well, stage2 compilation... :) 09:55
that's minor, right? :P
jnthn Odd 09:56
nine_ jnthn: we do not run the code object immediately but the compiler_thunk that replaces the stub with the compile_in_context'ed code object.
psch jnthn: the role shortname?
jnthn: seemed obvious how, functionally, it occurs, but why it only happens for runtime mixins i didn't get into 09:57
jnthn psch: Probably because Mixins.nqp computes the name 09:58
psch: And I don't think we have anything else 09:59
uh, anything else that does that
nine_ jnthn: it's unfortunate that the EVALed code doesn't get access to the lexical symbols for now, but I figured it's still better than having no EVAL at all. Do you think it could cause back compat issues when we do fix this?
jnthn Other things like coercion types will, iirc, call shortname on the two types in order to implement its own shortname
m: BEGIN EVAL 'say 42' 10:00
camelia rakudo-moar c37939: OUTPUT«42␤»
jnthn It'd break that, no?
psch m: use nqp; role Foo::Bar { }; my $x = Any.^generate_mixin(nqp::list(Foo::Bar)); say $x.WHAT
camelia rakudo-moar c37939: OUTPUT«(Bar})␤»
psch ah, neat
jnthn psch: Anyways, I left a fix suggestion on the ticket :)
psch jnthn: yeah, i might stash the nqp-j VMNull for now and do that instead 10:01
nine_ jnthn: I'd be surprised if it did as BEGIN EVAL 'CompUnit::DependencySpecification.new(:short-name<Foo>)' works just fine. Will test. 10:02
jnthn nine_: About running the compiler thunk: how does that work out with, say, `sub foo() { if 1 { 2 } }`, where there's code-objects nested within each other?
nine_ Also it passes all spectests
jnthn That is, do we compile the { 2 }, then again compile it as part of sub foo's block, and those two again as part of the outermost block?
Passing the spectests is good, though I'm guessing this area is woefully undertested (guess it'll be improving as we add tests for the RT this stuff fixes, though) 10:04
nine_ BEGIN EVAL 'say 42' does indeed work just fine. It prints 42 during precompilation. 10:05
jnthn Hm, OK. I wonder how it finds the `say`...
Maybe just late binding... :) 10:06
nine_: Oh, I got the wrong example
m: BEGIN EVAL 'BEGIN say 42'
camelia rakudo-moar c37939: OUTPUT«42␤»
jnthn How about that one? :)
nine_ That blows up :) 10:07
Cannot invoke this object
jnthn Right 10:08
psch uh, how far through do i have to hand the shortname optional..? 10:09
jnthn m: BEGIN EVAL 'my role R { }; my class C does R { }; say C'
camelia rakudo-moar c37939: OUTPUT«(C)␤»
nine_ Well now that I've established a working base line, it should be much easier to try out different approaches.
psch i mean, from generate_mixin it'd go to new_type, which depends on *what* we're mixin into afaict..?
jnthn psch: Oh, hmm
nine_ Could not instantiate role 'R': No lexical found with name '$_' 10:10
jnthn :(
Yeah, feared that might break
psch jnthn: so, probably parse the mixed in long name properly in Metamodel::Naming i guess
nine_ jnthn: well technically the patch doesn't break it. It errors only if run during precompilation where previously EVAL was not usable at all. 10:11
jnthn: normal compilation/run time is still just fine
jnthn nine_: But does it break it in the non-precomp case also?
psch: That sounds fragile 10:12
nine_ jnthn: no. Nesting is only activated during precompilation as there's no need to fix anything outside precomp.
jnthn nine_: OK, then it's not a regression :) 10:13
nine_ github.com/rakudo/rakudo/commit/ef...8dba19R447
jnthn psch: In Mixins.nqp: "# Work out a type name for the post-mixed-in role."
psch: We should calculate the shortname there too
psch jnthn: right, but then i have to touch every new_type, no? 10:14
+method
jnthn psch: If you take that root - only those that happen to compose Perl6::Metamodel::Mixins
psch: Which is, afaik, only ClassHOw
*ClassHOW
psch: But there's an easiser option
psch: Which is to update the Naming role to have a set_shortname 10:15
And just tweak it *after* the new_type call
psch ah, right
yeah, i'll do that
10:22 dalek joined
psch oh shucks 10:27
apparently a role isn't guaranteed to have a method shortname during stage parse..? 10:28
jnthn psch: Possibly not...probably means it's an NQP role 10:32
Or something else :)
Maybe we really are missing a shortname method somewhere?
psch hm, Callable[Int:D] is what doesn't have it apparently 10:38
10:39 brrt joined
psch m: Callable[Int:D].new.^shortname.say 10:49
camelia rakudo-moar c37939: OUTPUT«Callable[Int:D]␤»
jnthn m: Callable[Int:D].^shortname.say 10:50
camelia rakudo-moar c37939: OUTPUT«Method 'shortname' not found for invocant of class 'Perl6::Metamodel::CurriedRoleHOW'␤ in block <unit> at /tmp/yRgw4ACgsr line 1␤␤»
jnthn Indeed
psch oh, of course
jnthn .new will pun it
psch checks if "CurriedRoleHOW does Naming " is enough...
10:54 cognominal joined
psch heh, almost 10:55
$ ./perl6-m -e'role F::B { }; say (5 but F::B).^shortname'
+{}
...
dalek kudo/moar/reframe: 89f35fa | jnthn++ | src/vm/moar/ops/perl6_ops.c:
Sync with MoarVM API changes.
10:56
jnthn heh :) 10:58
11:05 skids joined
psch right, so the solution for that was not removing the bit that sets the shortname in set_name 11:09
and i think that's fine 'cause we only have that problem with mixins and generate_mixin calls set_shortname shortly after..?
dalek kudo/nom: 60550d1 | peschwa++ | src/Perl6/Metamodel/ (3 files):
Fix RT #127916.

  jnthn++ for the hints.
11:16
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=127916
jnthn psch: Yeah, the default in set_name is a fine enough default, I think 11:17
psch: Just not right for this case 11:18
(the mixin case)
psch grmbls at git diff not showing added but uncommited files 11:24
guess i'll have to squash when i get it working instead :/ 11:25
'cause i was about to gist the nqp-j VMNull attempt, which dies with a complaint about aggregate operations on a type object
jnthn git diff --staged :)
lunch &
timotimo git lunch --staged 11:27
psch ...but --staged shows *only* those files /o\
timotimo then you can apply that in reverse, then you'll be left with the opposite 11:28
and then you can restore it again from the .patch on disk
psch ...what
i just want to gist it so i can realize where i'm being stupid after i ask for help... ;)
timotimo oh!
well, then you can apply that in reverse, and gist the output of "git diff"? 11:29
psch why do i have to apply anything? i have a new file in the repo and just want a git diff that shows the content of the new file plus the changes in existing files... :/
timotimo oh?
psch also i am in somewhat of a sour mood, so sorry if i'm sounding whine or anything
*whiny 11:30
timotimo so git add the new file and you'll get it in --staged, too, i think
psch ahh
the actual trick to --staged is to *actually stage* the changed files as well!
as in, git add them as well
timotimo %) 11:31
psch gist.github.com/peschwa/7fddd65858...21ae455596 there 11:32
i'm doing something else for a bit i think...
if there is an obvious hint for why that breaks as it does feel free to share :P
[Coke] btw, met Brian Duggan in baltimore, loved his presentation on making a web app in Perl 6 (slides not (yet?) available). on hackathon day he was looking in the Perl 6 Grammar for some p6doc oddities. (multi #|'s not being captured, IIRC) 12:26
Also let out a WOOT at John Anderson's "Moderl Perl for the Unfrozen Paleolithic Perl Programmer" when he said he had had to remove the slide about P6 not being released yet.
BTW, the last release I didn't do was 2015-07-25 12:30
(and then we skipped August because of the GLR)
dalek kudo/nom: 6df7ff8 | coke++ | docs/release_guide.pod:
reflect actual (not planned) date
12:34
moritz stmuk: is there an RC tarball for the star release somewhere? 12:56
timotimo there's the one i made earlier, not sure about the one stmuk made 13:01
psch so i had an idea why i get the aggregate op error 13:15
which was "probably because isnull doesn't check for VMNull"
timotimo ah!
psch and then i tried to correct that, but isnull needs a TC for that
timotimo yeah, moar has an MVM_is_null(tc, obj) for that
psch so i added that the coreop mapping
and now stage0 can't build stage1
'cause Ops.isnull now needs a TC, but stage0 calls an isnull without a TC 13:16
...i think
13:16 perlpilot_ joined
timotimo ah! 13:16
yes, changing stuff like that will require a stage0 upgrade
with make j-bootstrap-files or what'?s it called
psch that has the same error 13:17
oh, but i didn't clean
...well, not that it helped vOv
timotimo it's ... complicated 13:20
psch yeah, i think it's because of the bootstrapping 13:21
i heard that makes bootstrapping complicated vOv
timotimo yeah, the bootstrapping does that to the bootstrapping 13:22
OK, let's think this through
i think if you build an nqp to completion, then change that isnull needs :tc, then make the bootstrap files, you'll have a stage0 that gives a tc to isnull 13:23
with java overloading, you should be able to make the same .jar with the ops work with both definitions
psch so i build HEAD now, unstash, and then make j-bootstrap-files 13:24
timotimo i hope that actually works :S 13:26
psch me too!
hrm, nope 13:30
timotimo uh oh 13:38
how does it b0rks?
psch Unhandled exception: java.lang.NoSuchMethodError: org.perl6.nqp.runtime.Ops.isnull(Lorg/perl6/nqp/sixmodel/SixModelObject;)J
i'd guess stage0 still has bytecode that wants to call that method 13:39
which seems sensible
timotimo well, did you try giving it both alternatives?
psch but it doesn't exist anymore in what's to become stage1
timotimo remember, java has method overloading
psch oh, right, i don't need an overloaded mapping
timotimo we don't support overloaded mappings in the QAST compiler anyway 13:40
psch i mean, it's already bytecode, so we don't need to translate the nqp op anymore
yeah, that's why i didn't try it... :) 13:41
timotimo there's a few ops that can handle different amounts of arguments, but they just compile to one of multiple different ops using QAST or something like that
psch hm, now i'm back to the error before. apparently isnull wasn't to blame after all :S 13:43
timotimo oh no :| 13:45
13:46 skids joined
stmuk moritz: pl6anet.org/drop/rakudo-star-2016.04-RC0.tar.gz 13:53
timotimo neat
[Coke] RT: 4 [PATCH]es. might be nice to see if those even still apply. 13:54
And we might want to update our contributor notes to push people towards github PRs.
moritz stmuk: thanks, testing now...
stmuk I get a test fail on the embedded version of Shell::Command in panda with OS X 14:11
maybe panda needs a Shell::Command version bump
14:13 brrt joined 14:58 lizmat joined
stmuk yes it does .. if someone can panda/update-subtree.pl I'll build a RC1 later 15:06
15:14 [TuxCM] joined
[TuxCM] This is Rakudo version 2016.04-2-g6df7ff8 built on MoarVM version 2016.04 15:15
test 22.996
test-t 13.032
csv-parser 26.103
# Failed test 'Data'
# at 88.t line 27
# expected: Buf.new(61,171,79,74,34,210,39,46,232,113,247,205,246,38,73,24,50,147,169,107,195)
# got: Buf.new(61,171,79,74,34,210,39,46,232,113,247,205,246,38,73,24,50,147,169,107,195,0)
utf8-c8 decode/encode still not 100%
timotimo right, that's "the bug" i saw 15:16
15:24 geekosaur joined
dalek kudo/moar/reframe: 85e3302 | jnthn++ | src/vm/moar/ops/perl6_ops.c:
Add an MVMROOT on ctx, now frames are GCable.
15:31
stmuk github.com/tadzik/panda/pull/308 15:34
TimToady [Coke]: so, basically, you'll keep doing the releases until we appoint you permanent release manager, and then you'll quit? :) 16:01
16:02 vendethiel joined
[Coke] TimToady: mmheheh! 16:03
I think it would be really good if neither jnthn nor I did a release in May. :) 16:04
lizmat m: dd Buf.new(195).decode("utf8-c8") # golf of problem Tux found 16:06
camelia rakudo-moar 6df7ff: OUTPUT«"􏿽xC3\0"␤»
16:19 awwaiid joined
stmuk pl6anet.org/drop/rakudo-star-2016.04-RC1.tar.gz 16:27
[Coke] if I run "perl Configure --gen-moar --gen-nqp --backends=moar" in that dir, it's trying to download something via git. 16:47
shouldn't everything be pre-bundled?
ugexe probably easier to lean on github as a CDN doing it that way for now 17:27
timotimo but we *are* supposed to make rakudo star release tarballs installable without an internet connection 17:28
[Coke] and I thought we already had bene 17:33
*been
if it's an old issue, that's fine. just wanted to make sure I mentioned it
stmuk I don't think it's a new issue .. I suspect the --gen-nqp flag 18:16
timotimo so if you only --gen-moar but not --gen-nqp it'll work OK? 18:17
stmuk yes which is what I usually type
I did notice "make rakudo-spectest" gave some strange warnings about roast (which it does checkout via git) 18:19
but assume those are roast issues (missing files) rather than R* ones
[Coke] stmuk: see this : 18:20
... crap. you can't link to an annotated line of an .md file in github? 18:21
here, try this; github.com/rakudo/rakudo/commit/bb...b713d01d5d
so if you're using the 2016.04 compiler tarball, you have 6.c-errata branch of spec, but nom t/spectest.data, so... 18:22
stmuk ah 18:23
you can link to lines via blame view of .md file I think likegithub.com/rakudo/star/blame/maste....04.md#L65 18:25
github.com/rakudo/star/blame/maste....04.md#L65
[Coke] stmuk: ahah! thanks. 18:45
19:06 awwaiid joined 19:08 skids joined 19:25 brrt joined 20:28 hankache joined 22:22 skids joined