MasterDuke | yeah | 00:13 | |
ah, there's an MVMContainerSpec in moarvm | 00:14 | ||
dalek | ast: 9008f33 | (Aleks-Daniel Jakimenko-Aleksejev)++ | S02-literals/numeric.t: Tests for attempts to create a Complex using <> with --Inf |
01:24 | |
AlexDaniel | viki: that's it, I guess | 01:26 | |
dalek | ast: c61f7f1 | MasterDuke17++ | S06-traits/misc.t: Test error when assigning to ro var has the name |
01:30 | |
viki | wtf... | ||
viki looks at other tests in that file | |||
m: dd <-3.1e-23-2.9e-23i> | |||
camelia | ( no output ) | ||
viki | m: dd <-3.1e-23-2.9e-23i> | ||
camelia | ( no output ) | ||
viki | eval: dd <-3.1e-23-2.9e-23i> | ||
evalable6 | viki, rakudo-moar 3800e99: OUTPUTĀ«<-3.1e-23-2.9e-23i>Ā» | ||
viki | eval: dd <-3.1e-23-2.9e-23i>.^name | ||
evalable6 | viki, rakudo-moar 3800e99: OUTPUTĀ«"Complex"Ā» | ||
viki | 0_0 | ||
eval: dd <-3.1e-23-2.9e-23i+5+10-42+22i>.^name | 01:31 | ||
evalable6 | viki, rakudo-moar 3800e99: OUTPUTĀ«"Str"Ā» | ||
viki doesn't follow where the line gets drawn | |||
Oh | |||
doh | |||
I thought it was a weird combined number :} | |||
AlexDaniel: that's it? That's lacking in most of the weird stuff that was found buggy in the past two days. Like <2/Ł”> vs <Ł”/2>, U+2212 minus, the thing you had me try to guess what will come out. | 01:33 | ||
viki drops to bed | |||
AlexDaniel | viki: but I have no idea what is the right behavior in all of these cases | ||
the unicode stuff arguably does not work at all, so vOv | 01:35 | ||
MasterDuke | eval: use MONKEY; EVAL q|sub a($bbb) { $bbb = 1 }; a(2); CATCH {}| | 01:47 | |
evalable6 | MasterDuke, rakudo-moar 3800e99: OUTPUTĀ«(exit code 1) Cannot assign to a readonly variable ($bbb) or a valueā¤ in sub a at EVAL_0 line 1ā¤ in block <unit> at EVAL_0 line 1ā¤ in block <unit> at /tmp/c0RPPDivKw line 1ā¤Ā» | ||
MasterDuke | eval: use MONKEY; EVAL q|sub a($bbb) { $bbb = 1 }; a(2)| | ||
evalable6 | MasterDuke, rakudo-moar 3800e99: OUTPUTĀ«(exit code 1) Cannot assign to an immutable valueā¤ in block <unit> at EVAL_0 line 1ā¤ in block <unit> at /tmp/CHL2KIW9A2 line 1ā¤Ā» | ||
MasterDuke | the first error comes from here: github.com/rakudo/rakudo/blob/nom/...iner.c#L85 | 01:48 | |
the second error comes from here: github.com/MoarVM/MoarVM/blob/mast...ers.c#L500 | 01:49 | ||
anybody have an idea why the difference? | 01:50 | ||
oops, second one is actually github.com/MoarVM/MoarVM/blob/mast...p.c#L2829, i guess being interpreted or not is the difference | 03:19 | ||
bartolin | eval: my @a[2;2] = <a b c d> | 07:04 | |
evalable6 | bartolin, rakudo-moar 3800e99: OUTPUTĀ«(exit code 1) X::Assignment::ToShaped exception produced no messageā¤ in block <unit> at /tmp/4sulD5US8b line 1ā¤Ā» | ||
bartolin | j: my @a[2;2] = <a b c d> | ||
camelia | rakudo-jvm 76b061: OUTPUTĀ«Assignment to array with shape 2 2 must provide structured dataā¤ in block <unit> at <tmp> line 1ā¤ā¤Ā» | ||
bartolin | lizmat: looks like that 87dcc0873b broke the message generation for X::Assignment::ToShaped | 07:05 | |
lizmat: maybe you have a short fix for that? (I took a look but didn't have a good idea.) AFAIU the problem happens because $!dims is passed as shape to the exception, but can't be stringified later: github.com/rakudo/rakudo/blob/3800...ay.pm#L364 | 07:07 | ||
current rakudo-j dies with a StackOverflowError for the above code | 07:10 | ||
[TuxCM] | This is Rakudo version 2016.11-95-g3800e99 built on MoarVM version 2016.11-20-g0f7277a | 07:13 | |
csv-ip5xs 3.133 | |||
test 13.924 | |||
test-t 6.480 | |||
csv-parser 13.904 | |||
lizmat | Files=1155, Tests=53799, 189 wallclock secs (10.67 usr 4.44 sys + 1102.93 cusr 121.44 csys = 1239.48 CPU) # new MBP | 07:16 | |
dalek | kudo/nom: d2ce52c | lizmat++ | src/core/ (2 files): Make sure we can display dimensions as list_i As bartolin++ pointed out, 87dcc0873b broke error generation for the given shape, because $!dims is now a list_i, and not a list. Fixed by adding a .dims method, similar to .indices, that basically HLLizes the internal list_i with dimensions. |
07:33 | |
lizmat | bartolin: not sure this is the best fix, but I'm about to be offline for the better part of the day | 07:34 | |
commute& | 07:44 | ||
jnthn | morning, #perl6-dev | 09:59 | |
timotimo | morning jnthn-dev | ||
jnthn | Ah yay, you fixed that leek | 10:02 | |
Uh, leak | |||
tadzik | sleek! | 10:03 | |
timotimo leekspins | 10:07 | ||
jnthn gets latest builds of everything, then goes hutning for that zeroed owner thingy | 10:09 | ||
dalek | p: 2a4e696 | (Pawel Murias)++ | src/vm/js/Compiler.nqp: [js] Remove useless variable. |
11:12 | |
p: d18c065 | (Pawel Murias)++ | src/vm/js/nqp-runtime/reprs.js: [js] Fix serialization of VMArrays where all the elements haven't been assigned to. |
|||
p: a679960 | (Pawel Murias)++ | t/serialization/01-basic.t: Test serialization of a "sparse" VMArray. |
|||
p: b1d3fca | (Pawel Murias)++ | src/vm/js/Compiler.nqp: [js] Add native types to variable declarations. |
|||
jnthn | dogbert17: Did rt.perl.org/Ticket/Display.html?id=130191 already get solved? | 13:34 | |
dogbert17 | jnthn: yes, if we deploy the MoarVM PR lizmat merged a few days ago | 13:43 | |
the one where changes were made to twiddle_trie_node (if I remember the name correctly) | |||
jnthn | OK, did the crash occur in one of the spectests? | 13:44 | |
I'll dump MOAR_REVISION later on today for another fix I've done | |||
dogbert17 | it occured with everything if I set this check memory size thingy in fixedallocsize.c | 13:45 | |
github.com/MoarVM/MoarVM/commit/bf...061c5fb8e8 | 13:46 | ||
jnthn: you went to bed yesterday before I had a chance to trick into taking a quick glance at gist.github.com/dogbert17ā/b381b64...761f45f1ba :-) | 13:50 | ||
s/trick/trick you/ | 13:51 | ||
jnthn | That link gives me 404 | 13:52 | |
dogbert17 | gist.github.com/dogbert17/b381b649...761f45f1ba | 13:53 | |
now it seem to work, odd | 13:54 | ||
jnthn | same here...huh | 13:55 | |
dogbert17 | I was just wondering if something immediately jumps out, it's probably not the most important bug ever :-) | ||
jnthn | Just a plain old clean, I think | 13:56 | |
We malloc but don't free | |||
figuring out when to free will be the trick | |||
dogbert17 | yes indeed | ||
jnthn | Worth fixing anyway | 13:58 | |
Or a long-running server thingy that does process spawning will slowly leak over time | |||
dalek | kudo/nom: 47ffdea | jnthn++ | src/core/Supply.pm: Fix a data race in Supply.interval. Once we have atomic increment, then a native integer being atomically incremented instead of using the lock here would be cheaper. For now, this fixes an occasional crash on low intervals or under heavy load. |
14:06 | |
rakudo/nom: 33f7456 | jnthn++ | src/core/Supply.pm: | |||
rakudo/nom: Refactor and fix some races in supply/whenever. | |||
rakudo/nom: | |||
rakudo/nom: This moves various mutations into the SupplyState object, where we can | |||
rakudo/nom: reliably enforce mutual exclusion upon them. This of note eliminates | |||
rakudo/nom: some races relating to the active-taps hash, which led to a number of | |||
rakudo/nom: different occasional crashes. (It turns out that some of the mutations | |||
p: 547d61f | jnthn++ | tools/build/MOAR_REVISION: Bump MOAR_REVISION for various SEGV fixes. |
14:07 | ||
tbrowder | i'm using a late-model rakudo/nom and getting what looks like a bug | 14:09 | |
dalek | kudo/nom: 74eb6b9 | jnthn++ | tools/build/NQP_REVISION: Bump NQP_REVISION to get a MoarVM with some fixes. * Fixes a GC invariant violation in the code supporting Proc::Async that led to a variety of possible memory corruptions, mostly often showing up as "zeroed owner in work pass" or similar. * Fixes memory corruption on 32-bit platforms due to releasing memory with the wrong size in the NFG trie. |
14:10 | |
tbrowder | www.irccloud.com/pastebin/Y2LWk35W/ | ||
www.irccloud.com/pastebin/K5j9EqLH/ | 14:13 | ||
i expect to get "False" | |||
dogbert17 is having a coffee break and eating cake wile building the latest Rakudo | 14:14 | ||
jnthn | dogbert17: I closed up that RT; hopefully correctly :) | 14:15 | |
dogbert17 | jnthn++ | 14:16 | |
jnthn | tbrowder: use `so` or `?` to force booleanization of the return value | ||
tbrowder: It returns a Failure rather than throwing an exception, so if you use it in boolean context it behaves as you'd want. | |||
tbrowder | m: say so 'no-dir'.IO.d | 14:17 | |
camelia | rakudo-moar 843a6b: OUTPUTĀ«Falseā¤Ā» | ||
tbrowder | m: say !'no-dir'.IO.d | ||
camelia | rakudo-moar 843a6b: OUTPUTĀ«Trueā¤Ā» | ||
dalek | ast: b8f17e1 | jnthn++ | S17-supply/syntax.t: Test to cover a couple of Supply/interval bugs. |
14:18 | |
tbrowder | m: if !'no-dir'.IO.d { say "False" } | ||
camelia | rakudo-moar 843a6b: OUTPUTĀ«Falseā¤Ā» | ||
tbrowder | hm, i'm using that in a script and get the Fatal error. I'll check some more--thanks | 14:19 | |
jnthn | babydrop: Can you still reproduce rt.perl.org/Ticket/Display.html?id=129120 ? | 14:29 | |
I suspect it was a case of a method cache deserialization race that got fixed a while back | |||
(And is test-covered) | |||
babydrop | lemme fire up my VM and test again | 14:30 | |
jnthn | Cool, thanks | ||
Not managing to reproduce it in mine | |||
But yours has moar coars :) | |||
dogbert17 | babydrop, nice nick | 14:34 | |
jnthn | Time for a break; bbiab | 14:38 | |
babydrop | dogbert17: dunno about it... I was forced to change from `viki` | ||
dogbert17 | what was wrong with viki | 14:39 | |
babydrop | dogbert17: it was a registered nick and its rightful owner ghosted me | 14:40 | |
dogbert17 | ah, that explains it | 14:44 | |
babydrop: are you managing to break jnthn's latest commits? | 14:53 | ||
babydrop | it looks good. | ||
Hasn't crashed in this many iterations: gist.github.com/zoffixznet/a05bd08...82a2f35ab3 | 14:54 | ||
dogbert17 | looks promising | 15:07 | |
babydrop | .tell jnthn not a single crash in 83 runs, so it looks fixed. I closed the ticket | 15:20 | |
yoleaux2 | babydrop: I'll pass your message to jnthn. | ||
babydrop | jnthn++ | ||
jnthn | babydrop: Yay :) | 15:40 | |
yoleaux2 | 15:20Z <babydrop> jnthn: not a single crash in 83 runs, so it looks fixed. I closed the ticket | ||
jnthn | Another RT down | ||
babydrop | \o/ | 15:41 | |
jnthn | They weren't RT'd but the other things I fixed earlier on today caused occasional but bad results also | ||
The "zeroed work item" one is probably the one that commitable and friends were tripping over | 15:42 | ||
dalek | p: 218e583 | (Pawel Murias)++ | src/HLL/Compiler.nqp: Add a --profile-stage option to profile only one compilation stage. |
15:44 | |
p: cc6fc68 | (Pawel Murias)++ | src/vm/js/nqp-runtime/ (2 files): [js] Implement calling uncached methods. Uses an ES6 Proxy. |
|||
p: d44f446 | (Pawel Murias)++ | t/nqp/104-method-cache.t: Test method caches and calling methods without a method cache. |
|||
jnthn is trying to figure where exactly in our stack causes RT #130168 | 15:48 | ||
Well, interesting...we only get one callback from libuv... | 15:50 | ||
Oh. We ask it for timeout 0, repeat 0... | 15:53 | ||
hah | 15:55 | ||
($delay * 1000).Int, ($every * 1000).Int, | |||
babydrop | :o | ||
jnthn | We convert seconds to milliseconds | ||
So when the number gets small enough it becomes 0 miliseconds | 15:56 | ||
jnthn fixes it with a ceiling cat | 15:59 | ||
uh, just a ceiling | 16:00 | ||
japhb | jnthn: There's no microsecond or nanosecond interface, I take it? | ||
Too bad we can't just apply the power of ceiling cat to all our bugs .... | |||
TimToady | or better, a floating-point or rational interface? :) | ||
people always design these integer fractionl timing things, and they always break in the long run... | 16:01 | ||
japhb | TimToady: You're asking too much of C coders. ;-) | ||
TimToady: We could always define it in terms of slash h ... | |||
Time quanta. The only way to be sure. | 16:02 | ||
TimToady | by then we'll have 1024-bit FP and that'll probably work fine :) | 16:03 | |
jnthn | japhb: Checked the docs; sadly, no, millisecond is the best on offer from libuv | 16:07 | |
m: use Test; my @a; react { whenever Supply.interval(.0001) { push @a, $_; done if $_ == 5 } }; is @a, [0..5] | |||
That now passes locally | 16:08 | ||
camelia | rakudo-moar 843a6b: OUTPUTĀ«(timeout)Ā» | ||
jnthn | That said, it only fires once per millisecond | 16:11 | |
I'm not sure if we should warn in such cases | 16:12 | ||
dogbert17 | does that mean that given intervals below 1ms will be 1ms? | ||
jnthn | Yeah, thus why I'm pondering the warning | 16:13 | |
babydrop | warning sounds reasonable | ||
dogbert17 | I was pondering the docs | ||
I can write something up when I get home from $work | 16:14 | ||
jnthn | Sounds good :) | 16:15 | |
babydrop | #perl6-dev where half the inhabitants are slacking off work :) | ||
jnthn is in the category of "people for whom Perl 6 is work today" | |||
babydrop is jealous | |||
jnthn | Actually, prototyping in Perl 6 for $dayjob task, so using Perl 6 is work for quite a few days at the moment. | 16:16 | |
dogbert17 will leave in a few minutes | |||
have you stumbled upon any bugs while prototyping? | |||
jnthn | Yes. | 16:20 | |
More in my own code than in Perl 6, though. ;) | |||
The Rakudo/MoarVM ones I've golfed to the point I wasn't sure they were $dayjob code, then put them aside to work on later. | 16:21 | ||
uh, where I was sure they weren't in $dayjob code | |||
Though by this point I've fixed all of those too | 16:22 | ||
dogbert17 | cool | 16:30 | |
dogbert17 commute from $work :) | |||
dalek | kudo/nom: c38f1ad | jnthn++ | src/core/ThreadPoolScheduler.pm: Better handle time resolutions below 1ms. We used to round these down to 0, meaning `Supply.interval(.0001)` would just emit one value, and never repeat, since 0 signals no repetition). Now we round it up to 1ms and warn. |
16:35 | |
ast: 4a2b7b7 | jnthn++ | S17-supply/interval.t: Test for RT #130168. |
16:36 | ||
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130168 | ||
jnthn | Back down to one page of [CONC] tickets on RT now | 16:37 | |
afk for a bit | 16:40 | ||
lizmat waves from London and rejoices at jnthn's fixes for the day | 16:42 | ||
babydrop | \o | 16:43 | |
lizmat | babydrop o/ | 16:56 | |
jnthn: HARNESS_TYPE=6 seems to work now: Files=1144, Tests=53746, 275 wallclock secs | 16:57 | ||
afk& | |||
dalek | ast: a1ae8fe | usev6++ | S09-multidim/assign.t: Revert "Fudge test for X::Assignment::ToShaped for JVM" This reverts commit fe0404cc2dc96f02536c34f9f6eb600ad33ed295. Test passes again, lizmat++ for the fix. |
18:00 | |
bartolin | it would be nice to get a second opinion about github.com/perl6/roast/pull/183 | 18:11 | |
the test was in 6.c so I'm reluctant to change it. | 18:12 | ||
if the test should be kept unchanged, I'm going to fudge it for rakudo-j | |||
babydrop | I'm OK with changing it, since the intent of the test is to test for dual backtrace, not for any filenames | 18:14 | |
bartolin | thanks | 18:16 | |
[Coke] | I agree that you're not changing the intent of the test there. | 18:39 | |
babydrop | .tell samcv if you're willing to improve rakudo.org (it's Wordpress), I'm sure we can find you an account :) RE: twitter.com/samcv6/status/804044061355044864 | 20:41 | |
yoleaux2 | babydrop: I'll pass your message to samcv. | ||
dalek | ar: ccb2994 | (Zoffix Znet)++ | tools/star/release-guide.pod: Delete the step about updating .htaccess The -latest- urls are not figured out automagically and by the download page script[^1], so this step is no longer needed. [1] github.com/perl6/web-rakudo/ |
20:46 | |
star: bdfd5e6 | lizmat++ | tools/star/release-guide.pod: | |||
star: Merge pull request #81 from zoffixznet/patch-1 | |||
star: | |||
star: Delete the step about updating .htaccess | |||
babydrop | s/are not/are NOW/; | 20:48 | |
babydrop recalls promising to proofread commits... :) | |||
timotimo | absolutely futile :P | ||
[Coke] | just fix em and force-repush | 20:49 | |
(DO NOT DO THAT) | |||
babydrop | :) | ||
stmuk_ | babydrop++ # making life easier | 21:02 | |
timotimo | and prettier | 21:33 |