| 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
|
|||