Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm Set by Zoffix on 27 July 2018. |
|||
00:32
lucasb left
|
|||
MasterDuke | ugh, trying to find exactly where --target=parse is implemented is annoying. 'target' and 'parse' are not uncommon words in the source | 00:36 | |
huh, in the case of --target=parse, why does it end up in the else? github.com/perl6/nqp/blame/master/...#L143-L150 an NQPArray is a list according to nqp::islist() | 01:07 | ||
./nqp -e 'my @a; say(@a.HOW.name(@a)); say(nqp::islist(@a))' NQPArray 1 | 01:08 | ||
oh, it's in the else because $_ is false | 01:10 | ||
turns out it's actually the hash conditional github.com/perl6/nqp/blame/master/...#L158-L165 and changing it to `if $v.defined` gives `- statementlist: - statement: 0 matches` for `./nqp --target=parse -e ''` | 01:19 | ||
well, changing the conditionals in both the self.hash() and the self.list() blocks to `if $v.defined` and `if $_.defined` respectively passes all nqp test, rakudo tests, and spectests | 01:50 | ||
and now `perl6 --target=parse -e ''` gives `- lang-version: - lang-version: - <self-reference> - statementlist: - statement: 0 matches` | 01:51 | ||
.tell jnthn colabti.org/irclogger/irclogger_lo...9-05-03#l2 (but really starting a couple lines down) has some more info somewhat relevant to <statement> reporting an NQPArray | 01:57 | ||
yoleaux | MasterDuke: I'll pass your message to jnthn. | ||
ugexe | nine: that new test is failing on travis, appveyor, and circle-ci | 02:11 | |
MasterDuke | ugexe: does circle-ci offer BSDs? | 02:33 | |
03:11
vrurg left
05:26
robertle left
06:30
[TuxCM] left
|
|||
nine | Aah...of course I forgot to bump NQP and MoarVM. Tests++ | 06:59 | |
yoleaux | 2 May 2019 22:14Z <lizmat> nine: alas, t/02-rakudo/reproducible-builds.t fails for me on MacOS | ||
releasable6 | Next release in ā2 days and ā11 hours. 2 blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft | 07:00 | |
nine | Oh, there could be a real issue still there uncovered by the test: I get it to fail locally on the first run after removing lib/.precomp | 07:04 | |
Apparently when we precompile a dependency, we end up serializing additional Match objects and all their dependencies. | 07:42 | ||
07:54
[TuxCM] joined
07:57
pmurias joined
|
|||
pmurias | MasterDuke: re --target=parse it's implemented in github.com/perl6/nqp/blob/master/s...or.nqp#L99 | 07:58 | |
MasterDuke: if you look inside HLL::Compiler in the dumper method a dump method is called for the last stage | 07:59 | ||
08:09
travis-ci joined
|
|||
travis-ci | Rakudo build failed. Stefan Seifert 'Bump NQP_REVISON for build reproducibility fixes' | 08:09 | |
travis-ci.org/rakudo/rakudo/builds/527631650 github.com/rakudo/rakudo/compare/5...69bc9235ab | |||
08:09
travis-ci left
09:10
lizmat_ is now known as lizmat
|
|||
lizmat | .tell nine test still fails first time after a build of rakudo, not any time after (so far) | 09:14 | |
yoleaux | lizmat: I'll pass your message to nine. | ||
nine | lizmat: even after commit 37b7ef7ce9b6c5afb18f94b2230db625da24c96a? "Work around reproducible-builds.t failing on first run" | 09:34 | |
yoleaux | 09:14Z <lizmat> nine: test still fails first time after a build of rakudo, not any time after (so far) | ||
lizmat tests an idea | 09:35 | ||
nine | Aha! the Match object or Regex stuff whatever it is seems to be from Rakudo::Internals::JSON::str-escape which makes sense. We use JSON to pass some data to the process doing the actual precompilation. So when we need to precompile a dependency that might just be the first time we deserialize the to-json causing it to get added to the current compiler's SC | 09:37 | |
kawaii | releasable6: status | ||
releasable6 | kawaii, Next release in ā2 days and ā9 hours. 2 blockers. 132 out of 275 commits logged (ā 2 warnings) | ||
kawaii, Details: gist.github.com/6ba2079bc2794d7c62...65a8c7f6b8 | |||
lizmat | nine: "make test" works ok first time after a rebuild | 09:38 | |
nine | great! | ||
lizmat | I was testing the file by itself after a rebuid | ||
so it impicitely depends on having other tests run before it | |||
nine | Odd: nine@sphinx:~/rakudo (master *=)> rm -Rf lib/.precomp/ .precomp/ ; perl6 -Ilib t/02-rakudo/reproducible-builds.t | 09:39 | |
ok 1 - Both precompilation runs resulted in the same checksum | |||
Travis is still not happy either | 09:40 | ||
lizmat | afk& | 09:42 | |
10:03
travis-ci joined
|
|||
travis-ci | Rakudo build failed. Stefan Seifert 'Work around reproducible-builds.t failing on first run | 10:03 | |
travis-ci.org/rakudo/rakudo/builds/527670515 github.com/rakudo/rakudo/compare/5...b7ef7ce9b6 | |||
10:03
travis-ci left
11:19
pmurias left
11:27
El_Che joined
|
|||
El_Che | Hi, I use the release tar-balls to create linux packages (rakudo-pkg). Should I better use the github releases of rakudo, moarvm, nqp? Or is there some additional magic on the releases tarballs on rakudo.org and moarvm.org? | 11:28 | |
timotimo | if you grab the tarball from the "releases" section of github, it will be missing git submodules, and thus not work | 11:38 | |
El_Che | timotimo: ok, thank you | 11:39 | |
timotimo | i know that it's a problem for moarvm; i'm not entirely sure if rakudo has submodules in it | ||
lizmat | it doesn't afaik | 11:40 | |
unless you consider "nqp", and "MoarVM" under that submodules ? | |||
timotimo | nah, i'd say that's different | 11:44 | |
that's part of the --gen-nqp convenience stuff | |||
11:45
pmurias joined
|
|||
El_Che | ok, I'll just wait untill the normal release process is restored (new Ubuntu and Fedora distro releases last weeks) | 11:54 | |
11:59
Xliff joined
|
|||
Xliff | jnthn: I have it down to one commit. The problem was introduced in either -270 or -271. I will have an answer for you, shortly. | 12:00 | |
As far as -260, there was an issue where a role composition issue was apparently not detected. | 12:01 | ||
12:02
El_Che left
|
|||
Xliff | Then, subsequent to -260, I am now get the following error message: Method 'remove_action' must be resolved by class GTK::Compat::SimpleActionGroup because it exists in multiple roles | 12:02 | |
Subsequent to THAT, any attempts to compile that method run into what appears to be an infinite loop. | 12:03 | ||
timotimo | ah dang, el_che is gone already | 12:08 | |
Xliff | Bisected: Error is here a973dae670973ae9fbce51941014c07f8471e660 | 12:12 | |
Updating bug | |||
12:15
MasterDuke left
|
|||
Xliff | Bug updated. | 12:18 | |
12:25
Kaypie left,
Kaypie joined
|
|||
ugexe | lizmat: what invocation did you use to run the test by itself? | 13:14 | |
lizmat | perl6 t/spec/....t | 13:15 | |
ugexe | Ah yes | ||
make test almost certainly uses -Ilib | |||
which changes the repo id | |||
lizmat | which would imply that after a build and a make test | 13:16 | |
running the script like that should still fail the first time ? | |||
lizmat rebuilds | 13:17 | ||
ugexe | i donāt immediately see why, but it wouldnāt surprise me if having some files exist from a previous run were involved | ||
13:20
Kaypie left
|
|||
lizmat | running with "perl6" after make test, succeeds the first time | 13:21 | |
lizmat rebuilds again | |||
13:21
Kaiepi joined,
vrurg joined
|
|||
Xliff | nine: Further tests have tracked the role duplication issue to 5dcc687e239d6ecc4f4ca16c77cee370a83b8d46 | 13:23 | |
I believe I can now glare at you... 8-p | 13:24 | ||
=) | |||
lizmat | argh, ran wrong test | ||
Xliff | Ooh! I can now start glaring at lizmat, too! :D | 13:27 | |
(Method::Also seems to be a necessary ingredient, here github.com/rakudo/rakudo/issues/2873) | |||
nine | Nah, it's all my fault | 13:29 | |
lizmat | ugexe nine: confirmed that after rebuild and make test, first run of perl6 t/02-rakudo/reproducible-builds.t is ok | 13:30 | |
nine | lizmat: thanks! | 13:31 | |
lizmat | without "make test", first run of perl6 t/02-rakudo/reproducible-builds.t fails | ||
nine | what about perl6 -Ilib t/02-rakudo/reproducible-builds.t? | ||
lizmat | fails first time (also after "make test"), succeeds second time | 13:33 | |
ergo: make test doesn't run with -Ilib, I would say | |||
rba | .tell El_Che at the moment you can download the build fromĀ perlgeek.de/static/p6/Ā orĀ files.p6c.dev/ | 13:39 | |
yoleaux | rba: I'll pass your message to El_Che. | ||
13:54
Xliff left
13:55
lucasb joined
|
|||
nine | Fix is in the works, but I'll only be able to continue tomorrow | 14:09 | |
kawaii | releasable6: status | 14:12 | |
releasable6 | kawaii, Next release in ā2 days and ā4 hours. 2 blockers. 132 out of 275 commits logged (ā 2 warnings) | ||
kawaii, Details: gist.github.com/aeca7b151ef82ada1b...0fd9d4a75d | |||
kawaii | jnthn: as you have more experience in this matter than myself currently, did I interpret your previous messages correctly with regards to the two issues labelled 'blockers' and that we should be fine to proceed with a release this Sunday? | 14:14 | |
14:30
pmurias left
14:32
pmurias joined
|
|||
jnthn | kawaii: Will try and take a look in an hour or so | 14:38 | |
kawaii | jnthn: okay great, HEAD seems to build and function fine (albeit with old nqp) so hopefully we can get it done | 15:01 | |
15:04
discord62 joined,
discord62 left,
discord62 joined
15:05
discord6 left,
discord62 is now known as discord6
|
|||
ugexe | lizmat: without looking i'd expect `make test` to use -Ilib, otherwise tests would not pass before a `make install` | 15:25 | |
yep. t/harness5 sets PERL6LIB=lib. t/harness6 gets invoked with -Ilib | 15:26 | ||
15:32
pmurias left
15:47
[TuxCM] left
16:04
gfldex joined
|
|||
jnthn | kawaii: The readline one isn't marked up as a regression, so while it'd be nice to address, I don't think it's a real blocker in that it's made things worse. | 16:09 | |
kawaii: The other one is a bit more curious | 16:10 | ||
Hm, when I try it I get a totally different error | 16:14 | ||
bah, the ticket's original post had the wrong URL in it compared ot the Travis test that's linked later | 16:20 | ||
github.com/gfldex/perl6-hard-tests...9af94ce151 | 16:21 | ||
but I can't reproduce that at, well, something very close to HEAD, if not HEAD | 16:22 | ||
Stuck it in a loop to do it 100 times and no luck either | |||
Also ran the script as a whole 100 times and didn't reproduce it | 16:23 | ||
16:26
epony left
|
|||
jnthn | kawaii: Left a comment on the WWW one; I've tried for a while to repro it and cannot though. | 16:27 | |
16:32
Geth left
16:33
Geth joined
|
|||
kawaii | jnthn: in that case I will unmark it as a blocker | 16:33 | |
gfldex | jnthn: what is your uname -a? | 16:37 | |
jnthn | gfldex: Linux jnthn-praha 4.15.0-47-generic #50~16.04.1-Ubuntu SMP Fri Mar 15 16:06:21 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux | 16:41 | |
Time to make dinner o/ | 16:43 | ||
16:47
robertle joined
17:24
[TuxCM] joined
17:28
patrickb joined
|
|||
AlexDaniel | kawaii: when was the last run of Blin? | 17:39 | |
kawaii | AlexDaniel: about a week ago now, so I'll set it running again tomorrow | ||
AlexDaniel | can you even run it nowadays? I recall zef was a bit unhappy because of the server issues | ||
kawaii | with aim to release on Sunday | ||
17:59
epony joined
20:07
vrurg left
20:08
ufobat__ joined
20:11
ufobat_ left
21:39
unicodable6 left,
benchable6 left,
undersightable6 left,
committable6 left,
notable6 left,
nativecallable6 left
21:43
a3f left,
tyil[m] left
22:08
committable6 joined,
undersightable6 joined,
notable6 joined,
benchable6 joined,
ChanServ sets mode: +v committable6,
ChanServ sets mode: +v undersightable6,
ChanServ sets mode: +v notable6,
ChanServ sets mode: +v benchable6
22:09
a3f joined,
a3f left,
a3f joined,
nativecallable6 joined,
ChanServ sets mode: +v nativecallable6,
unicodable6 joined,
ChanServ sets mode: +v unicodable6
22:12
tyil[m] joined
22:13
vrurg joined
22:17
yoleaux left
22:18
yoleaux joined
22:42
patrickb left
|
|||
ugexe | Is there any reason not to have TAP::Harness in core again? | 22:57 | |
jnthn | Is there a strong case for having it in core? | 22:58 | |
I guess by "in core" you mean "in the Rakudo repo, alongside Test and NativeCall"? | 22:59 | ||
ugexe | right | ||
the only real reasons I have are 1) its like the other half of Test 2) dog fooding (for zef to use its features) / why would anyone otherwise use the perl6 TAP::Harness / prove6 when they can just use the common prove? | 23:02 | ||
jnthn | Generally, though, I'd prefer we keep what's bundled with the compiler itself quite minimal. NativeCall is there because it's coupled so closely to guts and we want to be able to version it exactly to match the Rakudo version. Same for Telemetry. Test is there largely because we use it for `make test`, which is only sort of a good reason. | ||
I'm also not that fond of modules that we bundle in Rakudo living a separate life in the ecosystem, even if it's technically possible. | 23:03 | ||
ugexe | yeah i guess my main gripe is having t/harness5 and t/harness6 type splits | ||
jnthn | I don't think we can live without having harness5 availble as an option. Or at least, *I* can't. | 23:04 | |
ugexe | i was operating under the premise they are equivalent to not notice a difference for end users | 23:05 | |
but now im guessing harness6 must be slower? | |||
timotimo | it's slower, but it can run things in parallel on windows, isn't that a thing? | 23:06 | |
yoleaux | 18:30Z <jmerelo> timotimo: the documentation is not being updated. Can you please set up a cron job or something to re-build it from time to time? | ||
ugexe | i would think harness5/prove would be able to do things in parallel on windows too | ||
jnthn | No, that's not the problem. The problem is that when I do some deep guts change, I can easily end up with a Perl 6 that's decidedly broken. The spectests - at least once I'm unbroken enough to use Test.pm6 - can help explain what is going on. | 23:07 | |
But a test harness is a relatively complex program; if the changes break *that* then I'd be out of look for running the spectests. | |||
I'm not arguing for harness5 as a default, but sometimes the escape hatch is important. | 23:08 | ||
I accept I have a minority use case here; most folks don't decide to go breaking and putting back together some of the things I do. | |||
Of course, an unbusted Perl 6 install to run the harness is an option too, I guess... | 23:09 | ||
timotimo | aye | ||
i had that for a time | |||
~/build/stable_perl6/install/bin/perl6 | 23:10 | ||
ugexe | i usually go raw dog prove | ||
jnthn | Yeah, but fudge? | ||
ugexe | prove --formatter TAP::Formatter::JUnitREGRU --ignore-exit -r -j4 -e \'$INSTALL_DIR/bin/perl6\' - < test-list.txt | ||
ok ok, have to run perl fudgeall rakudo.moar **/*.t > test-list-spaces.txt && perl -p -e \'s/\\s+/\\n/g\' test-list-spaces.txt > test-list.txt too | 23:11 | ||
jnthn | I guess that could go in a Makefile target, plus define a STABLE_PERL6 or some such envvar and it's alright | 23:14 | |
Oh wait, it's not needed, 'cus it uses prove :) | 23:15 | ||
jnthn should apparently already be sleeping | |||
timotimo | Your JavaScript runtime does not support some features used by the coffee command. Please use Node 6 or later. | 23:41 | |
^- does that mean htmlify.pm6 isn't doing any progress? | |||
because it's not using much cpu time | |||
it doesn't have a subprocess in any case | 23:45 | ||
so that's probably a problem | |||
i'm trying "make html-no-highlight" for now and go to bed | 23:47 |