Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2017-09-16

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

All times shown according to UTC.

Time Nick Message
00:00 AlexDaniel timo: hey, you've been using neo layout, right?
00:00 AlexDaniel timo: does it work in chromium?
00:00 AlexDaniel like shift+arrows and stuff like this?
00:01 timo yeah
00:01 AlexDaniel :-|
00:01 timo something wrong?
00:02 AlexDaniel yea, my layout is completely useless in chromium, a lot of things just don't work
00:02 timo oh crap :(
00:02 AlexDaniel and I've been ignoring this for years by simply labeling chromium as garbage
00:02 timo some IDEs are unhappy with the neo2 arrow keys
00:03 timo especially on windows
00:03 AlexDaniel now a lot of things use electron (which is based on chromium as far as I can see) and I'm screwed
00:03 MasterDuke_ timo: that's very well written, looks great
00:04 MasterDuke_ only one minor suggestion, and one minor thought
00:04 timo (and before sending it off i'll remove the hour counts again)
00:04 MasterDuke_ i think it's a little unclear what an end user would use the heap snapshot profiler for
00:05 timo ah, sure, i can write more about that
00:05 timo haha, yeah, now that i look at it again, it's many words saying very little
00:06 MasterDuke_ and i believe Devel::NYTProf is pretty popular in the Perl 5 world, maybe some comparison to it?
00:06 timo NYTProf is line-oriented, right?
00:07 MasterDuke_ but i don't really have concrete suggestions about that thought, so feel free to ignore
00:07 MasterDuke_ believe so
00:07 timo how do you like the initial part to the heap snapshot section?
00:11 MasterDuke_ good
00:13 timo the sampling profiler jnthn has been talking about will be more similar to NYTProf as it will give line-by-line accuracy, but it'll be probabilistic rather than measuring everything
00:13 timo so it'd be a lot like perf
00:13 MasterDuke_ btw, between 2017.04 and 2017.05, a --profile-compile of stage parse of the setting increased in size by 50mb, and the compressed size went from 50mb to 115mb
00:13 timo wow
00:14 timo the heap snapshot analyzer will also want a bit more memory use tweaking %)
00:18 timo i'm glad i still have about 21h until the deadline hits
00:18 timo i should send a mail to "take back" my application so the first version doesn't get published
00:27 timo done
00:30 MasterDuke_ afk for a while, good luck
00:31 timo i'll go to bed first :)
00:45 entonian joined #perl6-dev
00:51 skids joined #perl6-dev
01:29 llfourn joined #perl6-dev
01:34 BenGoldberg joined #perl6-dev
01:55 ilbot3 joined #perl6-dev
01:55 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
01:57 cuonglm joined #perl6-dev
02:26 AlexDaniel joined #perl6-dev
02:42 greppable6 joined #perl6-dev
02:44 Geth ¦ rakudo: Gnouc++ created pull request #1159: use 'time' as default seed for srand
02:44 Geth ¦ rakudo: review: https://github.com/rakudo/rakudo/pull/1159
03:00 AlexDaniel what was the issue with make spectest on jvm?
03:01 AlexDaniel like, individual files are passing ok, but not make spectest
03:08 Geth ¦ nqp: Gnouc++ created pull request #371: add document for srand op
03:08 Geth ¦ nqp: review: https://github.com/perl6/nqp/pull/371
03:17 Geth ¦ roast: Gnouc++ created pull request #319: add test for srand has default value
03:17 Geth ¦ roast: review: https://github.com/perl6/roast/pull/319
03:18 cuonglm m: say srand;
03:18 camelia rakudo-moar ce95e1: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Calling srand() will never work with declared signature (Int $seed --> Int:D)␤at <tmp>:1␤------> 3say 7⏏5srand;␤»
03:27 AlexDaniel buggable: tag JVM
03:27 buggable AlexDaniel, There are 49 tickets tagged with JVM; See http://fail.rakudo.party/t/JVM for details
03:53 Ven`` joined #perl6-dev
04:19 dogbert17 joined #perl6-dev
04:20 lizmat_ joined #perl6-dev
04:21 AlexDaniel joined #perl6-dev
04:23 moritz joined #perl6-dev
04:28 eater joined #perl6-dev
04:54 AlexDaniel o/ see you all in ≈8 hours
05:00 [TuxCM] joined #perl6-dev
06:18 lizmat Files=1223, Tests=67805, 295 wallclock secs (11.02 usr  4.78 sys + 1953.74 cusr 208.60 csys = 2178.14 CPU)
06:39 bartolin for the records, I've seen the following issues with the jvm backend (but didn't have the time to take a closer look)
06:40 bartolin 1) 'make' does not work before 'make install': I believe that happens, because we use the EvalServer -- and that doesn't look for BOOTSTRAP.nqp in ./blib
06:41 bartolin 2) 'make test' fails a lot of nativecall tests. afaik that happens because the op 'nativecallinvoke' was introduced with commit cd7dc4ce93 in lib/NativeCall.pm6 (but isn't known on the JVM backend)
06:43 bartolin 3) a lot of tests for $! seem to fail. i think that happens since commit 1a4d94930c (there was a call to nqp::setmessage removed from method throw)
06:44 bartolin 4) the EvalServer seems to leak memory. it's no longer possible to run 'make spectest', even with -Xmx6000m
06:46 bartolin i'd be interested in suggestions how to fix 1) and 4), especially :-)
07:10 Geth ¦ nqp: ea6be29658 | (Cuong Manh Le)++ | docs/ops.markdown
07:10 Geth ¦ nqp: add document for srand op
07:10 Geth ¦ nqp: review: https://github.com/perl6/nqp/commit/ea6be29658
07:10 Geth ¦ nqp: b6ba7362e0 | lizmat++ (committed using GitHub Web editor) | docs/ops.markdown
07:10 Geth ¦ nqp: Merge pull request #371 from Gnouc/master
07:10 Geth ¦ nqp:
07:10 Geth ¦ nqp: add document for srand op
07:10 Geth ¦ nqp: review: https://github.com/perl6/nqp/commit/b6ba7362e0
07:21 lizmat afk&
07:21 cuonglm joined #perl6-dev
08:17 Geth ¦ rakudo/nom: c3a71acb33 | (Samantha McVey)++ | t/spectest.data
08:17 Geth ¦ rakudo/nom: Add collation tests to spectest.data
08:17 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c3a71acb33
09:53 llfourn joined #perl6-dev
10:06 [Tux] This is Rakudo version 2017.08-155-gc3a71acb3 built on MoarVM version 2017.08.1-171-gcf95892e
10:06 [Tux] csv-ip5xs        1.371 -  1.484
10:06 [Tux] test             9.777 - 10.006
10:06 [Tux] test-t           3.523 -  3.539
10:06 [Tux] csv-parser      10.881 - 12.371
10:56 Skarsnik joined #perl6-dev
10:58 Skarsnik Hello
11:20 samcv releasable6, status
11:20 releasable6 samcv, Next release in ≈7 hours. 2 blockers. 122 out of 155 commits logged
11:20 releasable6 samcv, Details: https://gist.github.com/ae02f7b965262c8c459f0dba6ec9923e
12:19 Geth ¦ nqp: 3b1858d6d9 | (Moritz Lenz)++ | src/QRegex/P6Regex/Grammar.nqp
12:19 Geth ¦ nqp: Suppress warning in /a b+/
12:19 Geth ¦ nqp:
12:19 Geth ¦ nqp: the warning (about the space not being significant) makes sense
12:19 Geth ¦ nqp: inside a normal literal, but when the last character is quantifier,
12:19 Geth ¦ nqp: it is likely just somebody splitting off the character to emphasize
12:19 Geth ¦ nqp: the quantified atom
12:19 Geth ¦ nqp: review: https://github.com/perl6/nqp/commit/3b1858d6d9
12:20 moritz s/quantifier/quantified/
12:20 moritz too late to use the example in the book :/
12:21 timo i like this change
12:28 Skarsnik_ joined #perl6-dev
12:35 cognominal joined #perl6-dev
12:41 cognominal joined #perl6-dev
12:44 Ven`` joined #perl6-dev
13:32 travis-ci joined #perl6-dev
13:32 travis-ci Rakudo build failed. Zoffix Znet 'Merge pull request #1157 from book/book/enum-pred-succ
13:32 travis-ci https://travis-ci.org/rakudo/rakudo/builds/275895080 https://github.com/rakudo/rakudo/compare/2ad51a0f5bc1...660156146917
13:32 travis-ci left #perl6-dev
13:32 buggable [travis build above] ✓ All failures are due to timeout (0), missing build log (0), GitHub connectivity (1), or failed make test (0).
13:36 lizmat wonder how Rakudo Perl 6 would be doing in this: http://greenlab.di.uminho.pt/wp-content/uploads/2017/09/paperSLE.pdf
13:48 jnthn Hmm, intersting paper :)
13:52 timotimo dangit, this bench either makes one single major collection or a whole ton of minor collections
13:52 timotimo i just want a program that makes like 5 snapshots %)
13:53 timotimo may want to build a "limit" option or something :D
13:56 timotimo yeah! rc-forest-fire with a 2x2 grid gives me 5 snapshots
14:08 MasterDuke joined #perl6-dev
14:13 AlexDaniel joined #perl6-dev
14:15 vendethiel- joined #perl6-dev
14:18 skids joined #perl6-dev
14:21 dogbert2 joined #perl6-dev
14:31 bartolin oh, AlexDaniel++ (creating tickets from my earlier messages today). i should have done that myself
14:31 * bartolin blushes
14:32 AlexDaniel RT #132101 RT #132102 RT #132103 RT #132104
14:32 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=132101
14:32 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=132102
14:32 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=132103
14:32 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=132104
14:32 AlexDaniel bartolin: thanks
14:35 AlexDaniel ⚠⚠⚠ Last time I checked, nothing was blocking the release seriously. If you're seeing some issues, please contact me. ⚠⚠⚠
14:36 AlexDaniel if there are any volunteers to run the spectest on windows, that'd be appreciated
14:37 stmuk AlexDaniel: OK I'll try now
14:37 AlexDaniel Skarsnik_: how long does it take to run toaster for you?
14:37 AlexDaniel releasable6: status
14:37 releasable6 AlexDaniel, Next release in ≈4 hours. 2 blockers. 122 out of 155 commits logged
14:37 releasable6 AlexDaniel, Details: https://gist.github.com/b05b81274185737530e5557dd828df2a
14:38 AlexDaniel Skarsnik_: if you have resources to do that, I think about now will be the right time :)
14:38 Skarsnik_ 4h?
14:38 AlexDaniel kick it off then just in case?
14:40 AlexDaniel FWIW I'd probably take a look at those few modules that fail because of the buffering change, but I think we want it to be in the release anyway. The fallout is minor, and these modules are truly missing .close somewhere I think
14:41 travis-ci joined #perl6-dev
14:41 travis-ci Rakudo build failed. Jonathan Worthington 'Don't attempt non-blocking await if holding locks
14:41 travis-ci https://travis-ci.org/rakudo/rakudo/builds/275907719 https://github.com/rakudo/rakudo/compare/8d938461a9fb...f26d1e24f927
14:41 travis-ci left #perl6-dev
14:41 buggable [travis build above] ☠ Did not recognize some failures. Check results manually.
14:43 Geth ¦ rakudo/nom: e6a695b272 | (Samantha McVey)++ | t/spectest.data
14:43 Geth ¦ rakudo/nom: Fix spectest.data path for Collation tests
14:43 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e6a695b272
14:50 Skarsnik joined #perl6-dev
14:52 MasterDuke joined #perl6-dev
14:55 bloatable6 joined #perl6-dev
14:55 coverable6 joined #perl6-dev
14:55 nativecallable6 joined #perl6-dev
14:55 releasable6 joined #perl6-dev
14:55 quotable6 joined #perl6-dev
14:55 evalable6 joined #perl6-dev
14:55 bisectable6 joined #perl6-dev
14:55 committable6 joined #perl6-dev
14:55 greppable6 joined #perl6-dev
14:56 unicodable6 joined #perl6-dev
14:56 benchable6 joined #perl6-dev
14:56 statisfiable6 joined #perl6-dev
14:56 squashable6 joined #perl6-dev
15:01 AlexDaniel Geth: ver https://github.com/rakudo/rakudo/commit/06e20f80
15:01 Geth AlexDaniel, version bump brought in these changes: https://github.com/perl6/nqp/compare/2017.08-62-gd35cdbdd3... No newline at end of file
15:01 AlexDaniel fucking Geth
15:03 AlexDaniel ( https://github.com/perl6/geth/issues/8 )
15:05 AlexDaniel Geth: ver https://github.com/perl6/nqp/commit/9a2ba37548cd51b7d77e2a4a2f81a23a49c83396
15:05 Geth AlexDaniel, version bump brought in these changes: https://github.com/MoarVM/MoarVM/compare/2017.08.1-158-g3c3a52f...2017.08.1-162-g4a7248e
15:35 Geth ¦ rakudo/nom: bdbb7e4aca | (Aleks-Daniel Jakimenko-Aleksejev)++ | docs/ChangeLog
15:35 Geth ¦ rakudo/nom: Log remaining changes
15:35 Geth ¦ rakudo/nom:
15:35 Geth ¦ rakudo/nom: Deliberately not logged:
15:35 Geth ¦ rakudo/nom: 29691b2f c4043b06 b7ab48ee fe719405 06e20f80 cc64a758 ce95e162
15:35 Geth ¦ rakudo/nom: dea0a085 a8e0352b 3de6f338 ac8e099b c3a71acb 66015614
15:35 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/bdbb7e4aca
15:38 AlexDaniel I think Test.pm is buffering its output needlessly
15:38 AlexDaniel does this idea ring the bells for anybody?
15:39 AlexDaniel I'm running parallelized tests in whateverable and I see ===(     172;53  1/?  1/?  1/?  1/?  1/?  1/?  1/?  1/? )===============
15:40 AlexDaniel the tests are running but I'm guessing that the result only shows up once the handle is closed
15:40 AlexDaniel these are just random thoughts though
15:41 stmuk I may be seeing something similar on windows - at least I'm not seeing test output around S32-io
15:50 MasterDuke joined #perl6-dev
15:51 timotimo next star's gonna be at least one more month out, right?
15:51 stmuk 2017.10 hopefully
15:55 timotimo good
15:56 timotimo so i don't really have a reason to rush my extra-proflie-options feature in before the release
15:58 AlexDaniel there's also this module that passes its tests just fine but fails under prove: https://github.com/azawawi/perl6-ncurses/issues/16
16:04 * stmuk turns off windows av
16:08 MasterDuke joined #perl6-dev
16:21 stmuk I'm seeing a few windows roast failures even oon 6.c-errata
16:22 AlexDaniel stmuk: more info?
16:25 stmuk t\spec\S02-literals\quoting.t t\spec\S02-magicals\KERNEL.rakudo.moar t\spec\S02-magicals\args.t
16:30 AlexDaniel I'm pretty sure that quoting.t was like this for a while
16:30 AlexDaniel this issue for example: https://github.com/perl6/roast/issues/197
16:32 stmuk yeah and at least some of those (like the precomp failure) are fixed
16:34 AlexDaniel rakudo on windows definitely needs more love
16:36 AlexDaniel so I guess it's alright?
16:36 stmuk SNAFU :)
16:38 timotimo Situation Needs A Fine Understanding
16:40 stmuk ha
16:43 AlexDaniel well, at least not TARFU like we had it before last release
16:47 stmuk Seaman Tarfu, a brother of cartoon character Private Snafu
16:48 AlexDaniel folks, we have a blocker
16:48 AlexDaniel I think. Maybe.
16:48 AlexDaniel this one: https://rt.perl.org/Ticket/Display.html?id=132083
16:48 AlexDaniel and here's why
16:49 AlexDaniel say $value;      # -2147483648
16:49 AlexDaniel say -2147483648; # -2147483648
16:49 AlexDaniel say $value == -2147483648; # False
16:49 evalable6 AlexDaniel, rakudo-moar bdbb7e4ac: OUTPUT: «(exit code 1) ===SORRY!=== Error while compiling /tmp/XgeG6q6Q4b␤Variable '$value' is not declared. Did you mean '&values'?␤at /tmp/XgeG6q6Q4b:1␤------> say ⏏$value;      # -2147483648»
16:49 evalable6 AlexDaniel, rakudo-moar bdbb7e4ac: OUTPUT: «-2147483648»
16:49 evalable6 AlexDaniel, rakudo-moar bdbb7e4ac: OUTPUT: «(exit code 1) ===SORRY!=== Error while compiling /tmp/gJL6RZzlkm␤Variabl…»
16:49 evalable6 AlexDaniel, Full output: https://gist.github.com/9d78faf157d8d41e74c2e33272c4e8b1
16:49 AlexDaniel shut up evalable6
16:50 AlexDaniel anyway, these are two kinda identical numbers, but they == to False
16:50 AlexDaniel I remember seeing something similar… hmm
16:51 AlexDaniel which may simply be a side effect of RT #131994
16:51 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131994
16:52 AlexDaniel but $value * 1.0 is still -2147483648
16:52 stmuk https://github.com/perl6/roast/issues/320
16:54 AlexDaniel stmuk: thanks for documenting it
16:55 stmuk np
16:56 AlexDaniel we can of course say that number -2147483648 is cursed and move on, but uhh…
16:58 stmuk more positively I saw a full PASS on errata on FreeBSD 11 yesterday!
17:03 AlexDaniel I'm currently golfing that -2147483648 issue
17:13 bartolin stmuk: ooc, I'm seeing failures for roast master in S24-testing/11-plan-skip-all.t (aborted) and S29-os/system.t (test 35) on FreeBSD 10. do you have those on FreeBSD 11 as well?
17:14 bartolin stmuk: 6.c-errata is clean for me as well
17:17 stmuk bartolin: Yes I saw failures on roast master recently but I don't have a record
17:20 bartolin stmuk: thanks. no need to look again, i was just a tad bit curious
17:25 AlexDaniel okay, there we go
17:25 AlexDaniel m: my $value = -0x7FFFFFFF - 1; say $value; say -2147483648; say $value == -2147483648;
17:25 camelia rakudo-moar bdbb7e: OUTPUT: «-2147483648␤-2147483648␤False␤»
17:26 AlexDaniel bisect: my $value = -0x7FFFFFFF - 1; say $value; say -2147483648; say $value == -2147483648;
17:26 bisectable6 AlexDaniel, On both starting points (old=2015.12 new=bdbb7e4) the exit code is 0 and the output is identical as well
17:26 bisectable6 AlexDaniel, Output on both points: «-2147483648␤-2147483648␤False»
17:26 AlexDaniel :O what
17:26 AlexDaniel commit: all my $value = -0x7FFFFFFF - 1; say $value; say -2147483648; say $value == -2147483648;
17:27 committable6 AlexDaniel, https://gist.github.com/78b55a0024486a70082269ce659335ee
17:27 AlexDaniel :O what
17:28 Skarsnik_ joined #perl6-dev
17:29 AlexDaniel j: my $value = -0x7FFFFFFF - 1; say $value; say -2147483648; say $value == -2147483648;
17:29 camelia rakudo-jvm c3a71a: OUTPUT: «-2147483648␤-2147483648␤True␤»
17:29 AlexDaniel okay
17:30 AlexDaniel m: my $value = -0x7FFFFFFF - 1; say $value; say -2147483648; say $value < -2147483648;
17:30 camelia rakudo-moar bdbb7e: OUTPUT: «-2147483648␤-2147483648␤True␤»
17:40 AlexDaniel m: my $value = -0x7FFFFFFF - 1; say $value; say -2147483648; say $value == -18446744071562067968
17:40 camelia rakudo-moar bdbb7e: OUTPUT: «-2147483648␤-2147483648␤True␤»
17:48 AlexDaniel well, we can try bisecting it
17:48 timotimo hm, this isn't close to the smallbigint border is it?
17:49 AlexDaniel bisect old=2014.01 new=2014.02 my $value = -0x7FFFFFFF - 1; say $value; say -2147483648; say $value == -2147483648;
17:49 AlexDaniel timotimo: that's 2³¹ I think
17:49 timotimo m: say 2³¹
17:49 camelia rakudo-moar bdbb7e: OUTPUT: «2147483648␤»
17:49 timotimo it is
17:49 AlexDaniel but negative
17:49 AlexDaniel hello, bisectable?
17:49 timotimo that means the uppermost bit is also set, right?
17:50 AlexDaniel right
17:50 AlexDaniel bisect: old=2014.01 new=2014.02 my $value = -0x7FFFFFFF - 1; say $value; say -2147483648; say $value == -2147483648;
17:50 bisectable6 AlexDaniel, Bisecting by output (old=2014.01 new=2014.02) because on both starting points the exit code is 0
17:50 bisectable6 AlexDaniel, bisect log: https://gist.github.com/d9e374de485f03a4c6f21171cca6745e
17:50 bisectable6 AlexDaniel, (2014-02-08) https://github.com/rakudo/rakudo/commit/8e44bedbbe66d301d9d6078517372c865598e211
17:51 timotimo an nqp bump, heh.
17:51 AlexDaniel Geth: ver https://github.com/rakudo/rakudo/commit/8e44bedbbe66d301d9d6078517372c865598e211
17:51 Geth AlexDaniel, version bump brought in these changes: https://github.com/perl6/nqp/compare/2014.01-4-geaf891d...2014.01-17-gdcc6d47
17:51 AlexDaniel Geth: ver https://github.com/perl6/nqp/commit/dcc6d470ddfa217e8b5321a34c144122ae2da283
17:51 Geth AlexDaniel, version bump brought in these changes: https://github.com/MoarVM/MoarVM/compare/2014.01-4-gdd7ddb4...2014.01-91-ge9612cb
17:52 AlexDaniel timotimo: well here's the list ^
17:52 AlexDaniel some of your commits there also :)
17:52 timotimo oh, could it be a problem with variable int encoding?
17:54 Skarsnik m: my uint8 $a = 255; say $a++;
17:54 camelia rakudo-moar bdbb7e: OUTPUT: «-1␤»
17:54 timotimo that's been a problem forever :)
17:55 Skarsnik should that throw an error ? xD
17:55 timotimo need to make dinner, almost too hungry to think ATM
17:55 timotimo native ints are supposed to behave like that i think
18:00 AlexDaniel timotimo: Maybe RT #131994 can give you some idea also?
18:00 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131994
18:00 AlexDaniel huggable: no release?
18:00 huggable AlexDaniel, blead build fails on windows. Options: (1). Fix it. Find a way. (2). Revert the security fix. | See https://irclog.perlgeek.de/perl6-dev/2017-08-19#i_15043376
18:01 AlexDaniel huggable: no release? :is: See RT #132083
18:01 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=132083
18:01 huggable AlexDaniel, Added no release? as See RT #132083
18:01 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=132083
18:01 AlexDaniel timotimo: I think I can try bisecting it manually
18:01 AlexDaniel in a hope that it will give us a better idea
18:02 AlexDaniel but rakudo 2014.01-2014.02… uhh…
18:29 AlexDaniel ok, bisect is starting alright
18:29 AlexDaniel it's definitely not a change in nqp or whatever, so now bisecting moar…
18:38 Skarsnik AlexDaniel, file updated for toast
18:38 AlexDaniel link?
18:39 Skarsnik http://www.nyo.fr/~skarsnik/tmp/toast.sqlite.db
18:40 AlexDaniel Skarsnik: thanks, will look after I'm finished with the int issue
18:49 AlexDaniel .in 7d teach bisectable to bisect moar, you idiot.
18:49 yoleaux AlexDaniel: I'll remind you on 23 Sep 2017 18:49Z
19:08 AlexDaniel binary search is not so binary when some commits are unbuildable…
19:08 Geth ¦ roast: d776a06e52 | (David Warring)++ | S02-types/subset.t
19:08 Geth ¦ roast: tests for RT #132073 - isa on a subset type object
19:08 Geth ¦ roast: review: https://github.com/perl6/roast/commit/d776a06e52
19:08 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=132073
19:41 timotimo the serialization function changes at either one F more or one F less in the number, fwiw
19:46 gfldex jnthn: the segfault in the long running golfed httpd seams to be gone
19:47 AlexDaniel timotimo: I really don't know if git bisect will give any meaningful result here
19:47 timotimo oof, all the commits are unbuildable?
19:48 AlexDaniel I *think* it narrowed it down to 12 commits
19:48 AlexDaniel but it just keeps going…
19:48 AlexDaniel probably wants to make sure that all 12 of them are unbuildable
19:48 AlexDaniel but it feels like I've been doing it for way longer…
19:50 timotimo try "git bisect visualize"
19:51 timotimo it might require gitk
19:51 AlexDaniel I'm doing it over ssh
19:51 timotimo ah
19:52 AlexDaniel well, it's definitely not stuck… just doing something useless
19:52 timotimo i'm going to gdb around a bit in the place i'm expecting trouble
20:05 Skarsnik releasable6, status
20:05 releasable6 Skarsnik, Next release will happen when it's ready. 2 blockers. 154 out of 157 commits logged
20:05 releasable6 Skarsnik, Details: https://gist.github.com/4b6de50e30059383f9db97d54bfdba2c
20:05 AlexDaniel maybe I should just skip all the way through
20:08 AlexDaniel timotimo: https://gist.github.com/AlexDaniel/6e6b0408d1733fe148ffab6ad50e514a
20:09 timotimo well, crap ...
20:10 timotimo having the commit titles there would be nice
20:24 samcv good * all
20:25 timotimo good * samcv
20:26 timotimo debug output shows i'm deserializing a 2147483648
20:26 timotimo m: say 2147483648.base(16)
20:26 camelia rakudo-moar bdbb7e: OUTPUT: «80000000␤»
20:26 timotimo m: say 2147483648.base(16) - 1
20:26 camelia rakudo-moar bdbb7e: OUTPUT: «79999999␤»
20:26 timotimo oops
20:27 timotimo m: say 2147483647.base(16)
20:27 camelia rakudo-moar bdbb7e: OUTPUT: «7FFFFFFF␤»
20:27 timotimo i'm getting the value that's in the source, but + 1, so it must be the absolute value or something?
20:28 timotimo because i'm storing -0x7FFFFFFF - 1 in the module
20:44 jnthn gfldex: Ah, good; I figured that would be the same issue I uncovered with a short-running httpd hammered with requests.
20:46 Geth ¦ rakudo/nom: 24d6c66f30 | (Samantha McVey)++ | docs/ChangeLog
20:46 Geth ¦ rakudo/nom: Update ChangeLog with more Unicode/string related MoarVM changes
20:46 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/24d6c66f30
20:47 AlexDaniel samcv++
20:47 samcv so many speedups :)
20:52 BooK AlexDaniel: the good and bad commits have branches (or at least refs pointing to them), so you can still somewhat see what happens with git log --graph and the proper revlist
20:52 AlexDaniel right
20:52 BooK if you're still trying to "see" the current bisect
20:53 AlexDaniel we really need a volunteer for https://github.com/perl6/whateverable/issues/40
20:56 nine AlexDaniel: maybe the simplest way would be a unified repository
20:56 AlexDaniel nine: I doubt it. One possible strategy is described in https://github.com/perl6/whateverable/issues/40#issuecomment-326310996
20:57 samcv a lot of modules i think are broken. i can't `use META6:ver<0.0.4..*>`
20:57 samcv even though i have a newer version than that installed
20:57 AlexDaniel samcv: plz more info, I have toaster results in front of me and everything looks fine
20:57 BooK AlexDaniel: I'd been interested in seeing the code doing the current bisect stuff
20:57 samcv i can do `use META6` or `use META6:auth('github:jonathanstowe')` but not `use META6:ver<0.0.4..*>` (with or without the auth)
20:57 samcv and my friend is having the same issue
20:58 BooK nine: what do you mean by "unified"?
20:58 AlexDaniel BooK: https://github.com/perl6/whateverable/blob/daeee06e3eb1a85068b587961c52924f1ca024d6/bin/Bisectable.p6#L41-L125
20:58 nine samcv: ver<0.0.4..*> is a string
20:59 samcv my friend says: `zef install MongoDB::Client MongoDB::Server BSON::Document` gave me the missing META6:ver<0.0.4..*> error
20:59 samcv i've got the same error trying to install stuff
20:59 samcv nine, so the module needs to be changed? to what
20:59 samcv ver(0.0.4..*) ?
21:00 AlexDaniel BooK: the point is that bisectable does not build anything, and also it does not use “git bisect run”
21:00 BooK oh
21:00 nine m: say v0.5 ~~ v0.0.4..*
21:00 camelia rakudo-moar 24d6c6: OUTPUT: «True␤»
21:00 AlexDaniel BooK: we just have to make some extra builds for different nqp and moar revisions, and then teach it to handle these
21:00 BooK so you have a linear history with points in time?
21:00 nine m: say v0.5 ~~ v0.0.4+
21:00 camelia rakudo-moar 24d6c6: OUTPUT: «True␤»
21:01 nine m: say v0.5 ~~ Version.new('0.0.4..*')
21:01 camelia rakudo-moar 24d6c6: OUTPUT: «False␤»
21:01 nine m: say v0.5 ~~ Version.new('v0.0.4..*')
21:01 camelia rakudo-moar 24d6c6: OUTPUT: «False␤»
21:01 nine m: say v0.5 ~~ Version.new('v0.0.4+')
21:01 camelia rakudo-moar 24d6c6: OUTPUT: «False␤»
21:01 nine m: say v0.5 ~~ Version.new('0.0.4+')
21:01 camelia rakudo-moar 24d6c6: OUTPUT: «True␤»
21:01 samcv how do i grep all modules?
21:01 AlexDaniel BooK: no, we jush have everything pre-built. We still ask git to jump between version
21:01 AlexDaniel samcv: greppable6 ?
21:02 samcv greppable6, ver<0.0.4..*>
21:02 AlexDaniel samcv: or use https://github.com/moritz/perl6-all-modules/
21:02 nine samcv: so either ver<0.0.4+> or ver(v0.0.4+) or ver(v0.0.4..*)
21:02 greppable6 samcv, https://gist.github.com/a78573bb8fa48a36b90eac5991f5c65f
21:02 AlexDaniel greppable6: ver\<0\.0\.4\.\.\*\>
21:02 greppable6 AlexDaniel, Found nothing!
21:03 AlexDaniel BooK: point is, it takes a few minutes to build moar-nqp-rakudo, and typically bisect needs about 12 test IIRC
21:03 samcv looks liek Semaphore::ReadersWriters:ver('0.2.6'):auth('Marcel Timmerman')
21:03 AlexDaniel BooK: assuming that everything is buildable and you never “skip”, which is sometimes not the case
21:03 samcv my friend is gonna PR it
21:03 samcv thanks guys :)
21:03 AlexDaniel BooK: so you multiply 12 by 2 minutes, or even 1 minute if you're generous, and you don't get anything pretty :)
21:04 AlexDaniel BooK: when talking about bisecting moar or nqp, I don't think building it on the fly is a good solution, because why wait
21:04 BooK sure
21:04 AlexDaniel bisectable currently has over 6000 builds IIRC, and it takes almost no space
21:05 AlexDaniel (because we compress things in a smart way)
21:05 BooK are the builds themselves stored in git?
21:05 AlexDaniel no
21:05 BooK cause you could build a similar dag structure, but with builds instead of source
21:06 BooK and then use git bisect in the "binary" repo
21:06 AlexDaniel you can, but you win more free space by not doing that (and in the end it is also more flexible)
21:06 AlexDaniel here's some info on that: https://github.com/perl6/whateverable/issues/23
21:07 AlexDaniel so “quick-access” builds are compressed with zstd (these includes all commits after 2015.12 and all tags like 2014.01)
21:07 AlexDaniel now as for everything before 2015.12, here's the info: https://github.com/perl6/whateverable/issues/117
21:09 AlexDaniel basically it puts several adjacent builds in a pack of 20, and compresses it all with lrzip
21:09 samcv here's the issue https://gist.github.com/KingNoosh/bdbdffcd6a810401f37776aca408ad89#file-gistfile1-txt-L21
21:09 samcv i think this may be a different issue
21:09 BooK ok, so the tracking is done by naming the "tarball" with the commit id
21:10 AlexDaniel yeah
21:11 BooK using git bisect run sounds like just writing down the steps once you know the commit id in a script
21:11 BooK since git doesn't really care about what you do with the checkout it gives you, but only about the exit status
21:11 AlexDaniel and if it's in deep storage mode, it's just a symlink to a bigger lrz archive
21:11 AlexDaniel we've been using git bisect run before, and then switched from it
21:12 AlexDaniel git bisect run itself is just a shell script with some sugar in it
21:13 AlexDaniel I'm not entirely sure what was the motivation behind it, but here's the commit: https://github.com/perl6/whateverable/commit/540aba62e7c2ada598ccdda1b6c3abc96f454ef6
21:13 AlexDaniel well, I'm not sure today, back then it was an obvious thing to do :)
21:13 BooK the commit message is light on details :-)
21:14 BooK in fact, I jumped in the conversation with no background, so I have no idea what the current issue is, and if I can contribute anything to it
21:14 BooK I just heard "git" and jumped in ;-)
21:15 AlexDaniel BooK: well… I just saw somebody interested in the question and started pouring out as much as I know :)
21:16 AlexDaniel but implementing moar/nqp/rakudo bisect for bisectable requires this:
21:16 BooK there's probably a range of moar/nqp combinations that can be used with a given rakudo commit
21:16 AlexDaniel 1) create the required builds somewhere here: https://github.com/perl6/whateverable/blob/master/bin/build.p6 (for example, with RAKUDOSHA-NQPSHA-MOARSHA.zst filenames)
21:17 AlexDaniel 2) teach bisectable to use these, somewhere here maybe https://github.com/perl6/whateverable/blob/daeee06e3eb1a85068b587961c52924f1ca024d6/bin/Bisectable.p6#L41-L125
21:17 AlexDaniel 3) …
21:17 BooK so that limits the combinatorial explosion somewhat
21:17 AlexDaniel 4) PROFIT!
21:18 AlexDaniel BooK: typically… well, ok, *sometimes* when you bisect moar you just use whatever version is declared
21:18 AlexDaniel you may get some unbuildable or broken builds, but that's ok
21:18 AlexDaniel when you bisect nqp***
21:18 AlexDaniel so there's no 2D problem with this, or so I think
21:19 BooK 2D problems?
21:19 AlexDaniel and on Moar bumps you just go through the range of moar commits, so again that's pretty much linear
21:19 AlexDaniel trying out different nqp-moar versions
21:20 BooK I see the benefit of bisecting rakudo, but I'm not sure I understand the use case with the combination of the three
21:21 BooK or is it: given one somewhat broken rakudo commit, find the nqp/moar that actualy broke it?
21:21 AlexDaniel yea
21:21 AlexDaniel here's one real life example: https://github.com/rakudo/rakudo/commit/51b63bf9f0d0594687908f0756774f29cde39c1f
21:22 AlexDaniel it could have had some NQP commits too, but this shouldn't matter as much
21:22 BooK ok, so rakudo keeps track of the "new minimum version expected"
21:24 AlexDaniel and nqp does too for moar
21:25 BooK but it's only minimum, so someone can compile it with newer version and see how that goes
21:25 BooK hence the "ranges"
21:27 AlexDaniel yup. As I see it, when you're on a bump commit, you can choose any version from the range
21:27 BooK ranges
21:27 AlexDaniel ranges?
21:27 BooK nqp range, moar range
21:28 AlexDaniel As I see it, on https://github.com/perl6/nqp/commit/f6459b6d4d7640602e17bf7d77ab54934619da6d we can build it for every moar revision from 2017.05-100-g5ea6aaa to 2017.05-115-g369c0c5
21:28 AlexDaniel if some of it is broken that's alright
21:28 AlexDaniel and on rakudo bumps we can do the same, so it's not ranges
21:29 AlexDaniel well, it is, if you want to make life harder… :)
21:29 AlexDaniel but the goal is to get some kind of bisect to work, and make life easier :)
21:30 BooK that is only for bump commits?
21:30 BooK I mean, if you rakudo bisect lands you on a rakudo bump commit, you want to bisect on nqp/moar?
21:31 AlexDaniel I think we should bisect nqp first, then bisect moar if we find a bump in nqp
21:31 AlexDaniel but yeah
21:31 timotimo AlexDaniel: i just pushed something to moarvm to help with the 0x7FFFFFFF problem, could you run it against the originally problematic module?
21:31 timotimo (didn't bump the moar and nqp versions though)
21:31 AlexDaniel timotimo: sure, give me three minutes
21:32 timotimo of course
21:33 timotimo something's still wrong when i try to .base(16) the magic number, though
21:33 timotimo oh, i could have fixed that, too
21:33 timotimo cool cool.
21:36 timotimo m: say (-0x7FFFFFFF - 1).base(16)
21:36 camelia rakudo-moar 24d6c6: OUTPUT: «-FFFFFFFF80000000␤»
21:36 timotimo this should also give the right answer with latest moarvm and should potentially also get put into roast
21:41 AlexDaniel yeah, that does the trick
21:41 AlexDaniel the golfed version is fine, and all module tests are passing
21:42 AlexDaniel timotimo++
21:45 timotimo \o/
21:45 timotimo glad to hear it
21:45 timotimo AFK for a bit
21:45 timotimo will you do the release tomorrow, then?
21:46 timotimo or was there another distinct blocker?
21:47 AlexDaniel I'm not sure if it's a blocker
21:47 AlexDaniel but there's no moarvm release anyway today, so yes, tomorrow
21:47 timotimo ah, of course
21:48 AlexDaniel the buffering issue is worth another look, yes
21:48 AlexDaniel mainly because “prove” is acting weird with what we have now
21:48 * AlexDaniel AFK
21:59 Skarsnik_ joined #perl6-dev
22:27 MasterDuke joined #perl6-dev
22:59 AlexDaniel c: 2014.01 say (-0x7FFFFFFF - 1).base(16)
22:59 committable6 AlexDaniel, ¦2014.01: «-80000000»
23:02 AlexDaniel OK, now we're left with RT #132030
23:02 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=132030
23:03 AlexDaniel samcv: so is everything alright with zef problem?
23:05 samcv not sure. i don't think it's a current release problem
23:05 samcv so ignore that for now
23:06 MasterDuke samcv: btw, MVM_string_equal shows up pretty high in perf during stage parse. any ideas up your sleeve to speed it up?
23:08 samcv well i already sped it up :)
23:08 samcv by 1.5-2x for nonstrands
23:09 samcv err for strands i mean
23:09 samcv and flat as well if the types don't match
23:09 samcv so 1.5-2.2x it got sped up
23:09 samcv except when we use memcmp when both are flat and both are the same storage type which is much of the time not true
23:10 MasterDuke hm, maybe i need to add some fprintfs to see which branches are being taken
23:12 Geth ¦ rakudo/nom: 1ca81432af | (Timo Paulssen)++ | src/core/Rakudo/Iterator.pm
23:12 Geth ¦ rakudo/nom: refer to "want list?" var in permutations iterator properly
23:12 Geth ¦ rakudo/nom:
23:12 Geth ¦ rakudo/nom: since classes aren't closures, you could get the wrong type from
23:12 Geth ¦ rakudo/nom: interleaved pull-one calls on iterators with $!b set to different
23:12 Geth ¦ rakudo/nom: values.
23:12 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1ca81432af
23:12 samcv that would be helpful MasterDuke
23:13 Geth ¦ rakudo/nom: 488ca6f067 | (Timo Paulssen)++ | src/core/Rakudo/Iterator.pm
23:13 Geth ¦ rakudo/nom: same fix for Combinations as Permutations
23:13 Geth ¦ rakudo/nom:
23:13 Geth ¦ rakudo/nom: so we'll always get the correct type that was set on object
23:13 Geth ¦ rakudo/nom: creation time, not whatever was last passed to the
23:13 Geth ¦ rakudo/nom: Combinations method.
23:13 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/488ca6f067
23:14 timotimo MasterDuke: you should be able to hit "a" for annotate to see which parts of the code are hot in perf
23:15 MasterDuke oh interesting
23:15 samcv you'll be looking in MVM_string_substrings_equal_nocheck
23:15 samcv which MVM_string_equal calls
23:16 timotimo perf doesn't call how often it gets called exactly, so maybe we want to callgrind the whole thing, too
23:17 samcv you could add an fprintf to each of the three branches of MVM_string_substrings_equal_nocheck as well
23:17 samcv and then grep it and count the number of each that appear
23:18 samcv MasterDuke, we're talking about compiling the core setting right MasterDuke ?
23:18 timotimo (of course running the core setting compilation under callgrind will take a while ...)
23:18 MasterDuke samcv: yeah
23:18 samcv ok let me check
23:18 samcv i'll add some fprintf's and count
23:20 MasterDuke 45.29 │      testb  $0x1,0xc(%rdx)
23:21 samcv what % is that function when compiling the core setting MasterDuke
23:21 samcv like how much time does it use
23:21 samcv cpu
23:26 samcv 42.2% branch_1, 25.2% branch_2, 32.5% branch_3
23:31 MasterDuke hm, a perf record only showed it at 1.65%,
23:31 samcv it probably was 2x as high a month ago
23:31 samcv or more
23:34 MasterDuke a more accuate recording puts it at 2.56%
23:35 samcv i can speed it up though
23:35 benchable6 joined #perl6-dev
23:35 samcv the 1st branch is 42% and let's see how much i can speed it up
23:40 samcv MasterDuke, how much do you se MVM_string_substrings_equal_nocheck at?
23:41 MasterDuke 0.00%
23:42 samcv it must be inlining then?
23:42 samcv hm
23:42 samcv though weirdly
23:43 samcv 2.85% for MVM_string_equal and 0.89 for MVM_string_substrings_equal_nocheck
23:43 timotimo i'd be interested to see a distribution of string lengths we're comparing
23:53 gfldex jnthn: are the last 2 paragraphs still correct? https://docs.perl6.org/language/variables
23:55 [Coke] AlexDaniel: I can do a spectest run with MSVC if you need it.
23:56 AlexDaniel [Coke]: you think it can give us something more than https://github.com/perl6/roast/issues/320 ?

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