buggable | 🎺🎺🎺 It's time for the monthly Accidental /win Lottery 😍😍😍 We have 2 ballots submitted by 2 users! DRUM ROLL PLEASE!... | 00:00 | |||||||||||||||||||||||||||||||||
And the winning number is 4! Congratulations to AlexDaniel-! You win a can of WD40! | |||||||||||||||||||||||||||||||||||
Geth | rakudo/curfs-candidates-refactor: 270b355edf | (Nick Logan)++ (committed using GitHub Web editor) | src/core/CompUnit/Repository/FileSystem.pm Improved META6 info-from-path logic This improves the Distribution that gets created for a CURFS repo prefix that does -not- contain a META6.json file. It will guess the dist name (as the shortest module name in provides) as well as resources (trying to do a reverse platform-library-name on files in resources/libraries). This essentially allows the following to work: `$ perl6 -e 'my $dist = CompUnit::Repository::FileSystem.new(prefix => $*CWD.absolute).candidates("Inline::Perl5")[0]; CompUnit::RepositoryRegistry.repository-for-name("site").install($dist)'` |
02:54 | |||||||||||||||||||||||||||||||||
BenGoldberg | .u 🕷 | 03:41 | |||||||||||||||||||||||||||||||||
yoleaux | No characters found | ||||||||||||||||||||||||||||||||||
Geth | roast/cur-candidates-tests: c1de5852d0 | (Nick Logan)++ (committed using GitHub Web editor) | S11-repository/candidates.t Tests for CUR candidates PRs Prerequisites: github.com/rakudo/rakudo/pull/1125 github.com/rakudo/rakudo/pull/1132 |
05:32 | |||||||||||||||||||||||||||||||||
roast: ugexe++ created pull request #351: Tests for CUR candidates PRs |
05:34 | ||||||||||||||||||||||||||||||||||
synopsebot | SPEC#351 [open]: github.com/perl6/roast/pull/351 Tests for CUR candidates PRs | ||||||||||||||||||||||||||||||||||
Geth | rakudo: 581edd58e9 | usev6++ | src/core/ThreadPoolScheduler.pm Add bandaid for JVM: no native array in supervisor For some reasons using a native num array when starting the supervisor thread does not work correctly on the JVM backend. It looks like a VMArrayInstance is created (instead of VMArrayInstance_n). See also irclog.perlgeek.de/perl6-dev/2017-...i_15383761 |
05:57 | |||||||||||||||||||||||||||||||||
bartolin | .tell pmurias: leaving a note somewhere about bugs in rakudo.js that have the same cause in rakudo.jvm would be great. I don't have a strong opinion about *where* to write it down, though. probably a short ticket/issue tagged with 'jvm' would make sense | 06:28 | |||||||||||||||||||||||||||||||||
yoleaux | bartolin: What kind of a name is "pmurias:"?! | ||||||||||||||||||||||||||||||||||
bartolin | .tell pmurias leaving a note somewhere about bugs in rakudo.js that have the same cause in rakudo.jvm would be great. I don't have a strong opinion about *where* to write it down, though. probably a short ticket/issue tagged with 'jvm' would make sense | ||||||||||||||||||||||||||||||||||
yoleaux | bartolin: I'll pass your message to pmurias. | ||||||||||||||||||||||||||||||||||
Geth | rakudo: de92e34013 | (Aleks-Daniel Jakimenko-Aleksejev)++ | docs/ChangeLog Start the changelog for 2017.11 So that others have some place to log their changes if they want to. |
07:11 | |||||||||||||||||||||||||||||||||
[Tux] |
|
07:30 | |||||||||||||||||||||||||||||||||
lizmat | Files=1229, Tests=75828, 318 wallclock secs (14.62 usr 5.28 sys + 2196.31 cusr 214.70 csys = 2430.91 CPU) | 09:42 | |||||||||||||||||||||||||||||||||
pmurias | bartolin: creating tickets is fine to me | 10:24 | |||||||||||||||||||||||||||||||||
yoleaux | 06:28Z <bartolin> pmurias: leaving a note somewhere about bugs in rakudo.js that have the same cause in rakudo.jvm would be great. I don't have a strong opinion about *where* to write it down, though. probably a short ticket/issue tagged with 'jvm' would make sense | ||||||||||||||||||||||||||||||||||
wander | I am looking for the implementation of hyper operator "»". Anyone knows its location? | 10:25 | |||||||||||||||||||||||||||||||||
pmurias | on github should I have a [JVM] in the ticket/issue title or is a JVM github label enough | 10:29 | |||||||||||||||||||||||||||||||||
? | 10:36 | ||||||||||||||||||||||||||||||||||
Geth | nqp: fcc0fedfd4 | pmurias++ | src/vm/js/Operations.nqp [js] Fix 3 argument while with redo |
11:38 | |||||||||||||||||||||||||||||||||
nqp: f924509c17 | pmurias++ | t/nqp/014-while.t Test that redo works with 3 argument while |
|||||||||||||||||||||||||||||||||||
rakudo: 6389cea9f2 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm Add Worker.worked attribute - number of wallclock seconds the Worker actually worked - would be nice to get amount of CPU as well, but that's currently not possible - OTOH, assuming CPU intensive jobs, this is probably 1:1 with CPU |
11:47 | ||||||||||||||||||||||||||||||||||
travis-ci | NQP build failed. pmurias 'Test that redo works with 3 argument while' | 11:55 | |||||||||||||||||||||||||||||||||
travis-ci.org/perl6/nqp/builds/295707257 github.com/perl6/nqp/compare/e4e2f...24509c17f9 | |||||||||||||||||||||||||||||||||||
Geth | rakudo: 2ec29f20b8 | (Zoffix Znet)++ (committed using GitHub Web editor) | CONTRIBUTING.md Add a blurb about filing Issues Since this document is linked to from "New Issue" page, it's helpful to include "rules" for bug reports first and place all the info about contributions later. |
12:54 | |||||||||||||||||||||||||||||||||
rakudo: c360d9a28d | (Zoffix Znet)++ (committed using GitHub Web editor) | CONTRIBUTING.md Add more separation between sections |
|||||||||||||||||||||||||||||||||||
jnthn | lizmat: I'm not so keen on 6389cea9f2; calls to time_n are not free | 13:05 | |||||||||||||||||||||||||||||||||
Also it's going to give very dubious results with non-blocking awaits | 13:06 | ||||||||||||||||||||||||||||||||||
Would have to be moved into the top level of the method to be accurate | 13:07 | ||||||||||||||||||||||||||||||||||
m: for ^1000000 { }; say now - BEGIN now | |||||||||||||||||||||||||||||||||||
camelia | 0.2239942 | ||||||||||||||||||||||||||||||||||
jnthn | m: for ^1000000 { nqp::time_n }; say now - BEGIN now | ||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> Could not find nqp::time_n, did you forget 'use nqp;' ? at <tmp>:1 ------> 3for ^1000000 { nqp::time_n 7⏏5}; say now - BEGIN now expecting any of: argument list |
||||||||||||||||||||||||||||||||||
jnthn | m: use nqp; for ^1000000 { nqp::time_n }; say now - BEGIN now | 13:08 | |||||||||||||||||||||||||||||||||
camelia | 0.2580639 | ||||||||||||||||||||||||||||||||||
Geth | rakudo: d48e446ddb | (Zoffix Znet)++ | .github/ISSUE_TEMPLATE.md Add ISSUE_TEMPLATE.md GitHub uses it as a template for new issues. |
||||||||||||||||||||||||||||||||||
jnthn | m: for ^10000000 { nqp::time_n }; say now - BEGIN now | ||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> Could not find nqp::time_n, did you forget 'use nqp;' ? at <tmp>:1 ------> 3for ^10000000 { nqp::time_n 7⏏5}; say now - BEGIN now expecting any of: argument list |
||||||||||||||||||||||||||||||||||
jnthn | m: use nqp; for ^10000000 { nqp::time_n }; say now - BEGIN now | ||||||||||||||||||||||||||||||||||
camelia | 2.3208378 | ||||||||||||||||||||||||||||||||||
jnthn | m: use nqp; for ^10000000 { }; say now - BEGIN now | ||||||||||||||||||||||||||||||||||
camelia | 1.8529501 | ||||||||||||||||||||||||||||||||||
jnthn | m: say 1.85 / 2.32 | ||||||||||||||||||||||||||||||||||
camelia | 0.797414 | ||||||||||||||||||||||||||||||||||
jnthn | I think we should perhaps do that in a module and by using .wrap | 13:09 | |||||||||||||||||||||||||||||||||
Like my StuckAwaits finder | |||||||||||||||||||||||||||||||||||
Geth | rakudo: 5e158d9c6b | (Zoffix Znet)++ (committed using GitHub Web editor) | .github/ISSUE_TEMPLATE.md Simplify wording |
13:10 | |||||||||||||||||||||||||||||||||
rakudo: b386963a37 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm One last place where we can use push-worker |
13:19 | ||||||||||||||||||||||||||||||||||
lizmat | sorry jnthn, missed your remarks here so far because I was watching #moarvm, but they're noted | 13:27 | |||||||||||||||||||||||||||||||||
jnthn: do we have something cheaper than nqp::time_n ? Guess not :-( | 13:42 | ||||||||||||||||||||||||||||||||||
jnthn | No, but I don't really think profiling should be in "normal" code, we should instrument stuff from the outside | 13:43 | |||||||||||||||||||||||||||||||||
lizmat | ok, removing $!worked atm | 13:45 | |||||||||||||||||||||||||||||||||
it was visible in performance for test-t --race | |||||||||||||||||||||||||||||||||||
jnthn | I guess that area's a hot path given every single scheduled task goes through it | ||||||||||||||||||||||||||||||||||
lizmat | yup | 13:46 | |||||||||||||||||||||||||||||||||
Geth | rakudo: 2377624729 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm Remove Worker.worked, it was too heavy to be run always Also move update of Worker.total to run-one - so we don't lose any completions not seen by supervisor yet at end |
13:48 | |||||||||||||||||||||||||||||||||
lizmat | jnthn: is it correct that if we start a ThreadPoolScheduler with initial threads > 0, that we don't get a supervisor ? | 14:08 | |||||||||||||||||||||||||||||||||
jnthn | Um, no | 14:10 | |||||||||||||||||||||||||||||||||
lizmat | ok, I guess then we have a buglet :-) | ||||||||||||||||||||||||||||||||||
by default, we start with 0 initial threads, right ? | |||||||||||||||||||||||||||||||||||
jnthn | Right :) | ||||||||||||||||||||||||||||||||||
lizmat | ok, so not something that would cause a problem with all of the things I tried so far :-) | ||||||||||||||||||||||||||||||||||
ah, scratch that, it *is* doing the right thing | 14:15 | ||||||||||||||||||||||||||||||||||
Zoffix | Just reading the code, looks like in this code we create an initial worker in self!general-queue, but then immediatelly throw it away in the following loop and create a new replacement. i.e. we create a new IterationBuffer instead of pushing more workers into the buffer from $!general-workers: github.com/rakudo/rakudo/blob/mast...#L668-L682 | 14:18 | |||||||||||||||||||||||||||||||||
jnthn | Zoffix: Yes | 14:20 | |||||||||||||||||||||||||||||||||
Which we MUST do | |||||||||||||||||||||||||||||||||||
Otherwise those lists are not immutable | |||||||||||||||||||||||||||||||||||
And we rely on being able to read them elsewhere without a lock acquisition | |||||||||||||||||||||||||||||||||||
bbi1h | 14:22 | ||||||||||||||||||||||||||||||||||
Zoffix | &push-worker doesn't re-create workers. | 14:23 | |||||||||||||||||||||||||||||||||
And just clones the buffer; so we could clone the buffer with one worker up in it and add more instead of paying for 1 worker we never use vOv | 14:24 | ||||||||||||||||||||||||||||||||||
Zoffix & | |||||||||||||||||||||||||||||||||||
lizmat | Zoffix: good point about push-worker | 14:29 | |||||||||||||||||||||||||||||||||
AlexDaniel | pmurias: I think just using the 「JVM」 label is enough, no need to duplicate in the title | 14:39 | |||||||||||||||||||||||||||||||||
[Coke] | yes, -1 on [] tags on github issues. | 14:40 | |||||||||||||||||||||||||||||||||
er, on [] *subject* tags. | |||||||||||||||||||||||||||||||||||
Zoffix | lizmat: my point was more about these two lines: github.com/rakudo/rakudo/blob/mast...#L670-L671 Instead of doing `nqp::create(IterationBuffer);` we could do `nqp::clone($!general-workers)` and change `my int $i = -1;` to `my int $i = 0;` and we save one `GeneralWorker.new` | 14:41 | |||||||||||||||||||||||||||||||||
And this in submethod BUILD and we already writing to $!general-workers there without a lock: github.com/rakudo/rakudo/blob/mast...er.pm#L682 so I don't think the restriction for immutability applies there, so perhaps we can do away with nqp::clone entirely and *just* push | 14:42 | ||||||||||||||||||||||||||||||||||
Like we're still building teh scheduler object, there won't be multiple threads accessing things yet, right? | 14:43 | ||||||||||||||||||||||||||||||||||
lizmat | Zoffix: that's for creating the ThreadPoolScheduler object | ||||||||||||||||||||||||||||||||||
indeed, so we could just start at 0 :-) | |||||||||||||||||||||||||||||||||||
lemme write up some code for that :-) | 14:44 | ||||||||||||||||||||||||||||||||||
Zoffix | yeah, probably can. Just need to also add `$!general-queue := nqp::create(Queue);` `self!maybe-start-supervisor();` calls that self!general-queue does and then we avoid paying for the lock it's doing too. | 14:45 | |||||||||||||||||||||||||||||||||
Zoffix re-&s | |||||||||||||||||||||||||||||||||||
Geth | rakudo: 5d0ccf73a4 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm Use a dedicated first-worker Instead of cloning an empty buffer and then pushing with push-worker. |
15:19 | |||||||||||||||||||||||||||||||||
rakudo: bfcc43ec9a | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm Easify ThreadPoolScheduler creation with initial_threads > 0 |
|||||||||||||||||||||||||||||||||||
rakudo: 87e8720202 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm Simplify ThreadPoolScheduler creation a bit further |
15:31 | ||||||||||||||||||||||||||||||||||
rakudo: 5eeb72a9f5 | (Elizabeth Mattijsen)++ | src/core/Range.pm Make Range.sum sensible for -Inf/Inf endpoints |
16:09 | ||||||||||||||||||||||||||||||||||
lizmat | not 100% sure that (-Inf .. Inf).sum should be 0 or NaN | 16:10 | |||||||||||||||||||||||||||||||||
perlpilot | shouldn't it be Inf? | 16:12 | |||||||||||||||||||||||||||||||||
lizmat | perlpilot: assuminng -Inf and Inf have the same distance from 0, I would think not | ||||||||||||||||||||||||||||||||||
Zoffix | Definite NaN for me there, 'cause you're summing up end points and those are NaN per IEEE | ||||||||||||||||||||||||||||||||||
Like endpoints are included in the summing | 16:13 | ||||||||||||||||||||||||||||||||||
m: say -Inf + Inf | |||||||||||||||||||||||||||||||||||
camelia | NaN | ||||||||||||||||||||||||||||||||||
lizmat adjusts accordingly | |||||||||||||||||||||||||||||||||||
Zoffix | lizmat: well, as I commented on the ticket, that also leaves out excluded Infs :) | 16:14 | |||||||||||||||||||||||||||||||||
And I don't know what those should be | |||||||||||||||||||||||||||||||||||
Zoffix adds another comment | |||||||||||||||||||||||||||||||||||
lizmat | m: Inf == Inf + 1 | 16:15 | |||||||||||||||||||||||||||||||||
camelia | WARNINGS for <tmp>: Useless use of "==" in expression "Inf == Inf +" in sink context (line 1) |
||||||||||||||||||||||||||||||||||
lizmat | m: say Inf == Inf + 1 | ||||||||||||||||||||||||||||||||||
camelia | True | ||||||||||||||||||||||||||||||||||
lizmat | by that logic, endpoints don't matter when Inf is concerned (at least in my book :-) | ||||||||||||||||||||||||||||||||||
*exclusion / inclusion of endpoints | 16:16 | ||||||||||||||||||||||||||||||||||
Zoffix | Yeah, agreed. | ||||||||||||||||||||||||||||||||||
So then (NaN..<anything>).sum => NaN; (<anything>..NaN).sum => NaN; (-Inf..Inf) => NaN; (-Inf..<anything else> .... ummm | 16:17 | ||||||||||||||||||||||||||||||||||
What about -Inf..-Inf? :) | 16:18 | ||||||||||||||||||||||||||||||||||
lizmat | Inf | ||||||||||||||||||||||||||||||||||
hmmm NaN probably | |||||||||||||||||||||||||||||||||||
Geth | rakudo: 21efe96ffb | (Elizabeth Mattijsen)++ | src/core/Range.pm -Inf .. Inf should be NaN, not 0 |
||||||||||||||||||||||||||||||||||
Zoffix | Or Inf..Inf; both are empty ranges. And that makes exclusion points come into play, since Inf^..Inf is non-empty | 16:19 | |||||||||||||||||||||||||||||||||
m: say -Inf + -Inf | |||||||||||||||||||||||||||||||||||
camelia | -Inf | ||||||||||||||||||||||||||||||||||
lizmat | I think the distance between Inf and Inf is Inf, really | ||||||||||||||||||||||||||||||||||
Zoffix shrugs; feels like throwing an exception in these cases as OP proposed would save some headache :) | |||||||||||||||||||||||||||||||||||
m: say eager Inf..Inf | 16:20 | ||||||||||||||||||||||||||||||||||
I would've thought that'd return an empty list | |||||||||||||||||||||||||||||||||||
ZofBot: the worms! They're escaping the can! | 16:21 | ||||||||||||||||||||||||||||||||||
ZofBot | Zoffix, {*} is a "magic" token that means "do the next bit of the multi-dispatch here" | ||||||||||||||||||||||||||||||||||
camelia | (timeout) | ||||||||||||||||||||||||||||||||||
lizmat | FWIW, these Range.sum changes don't cause any test breakage | 16:22 | |||||||||||||||||||||||||||||||||
so I assume there simply aren't any tests for it | |||||||||||||||||||||||||||||||||||
lizmat goes back to hacking on concurrency stuff | 16:24 | ||||||||||||||||||||||||||||||||||
Zoffix goes back on playing with the Intro P6 brochure :) | 16:25 | ||||||||||||||||||||||||||||||||||
timotimo | Zoffix: your own or the one wendy maintains? | 16:26 | |||||||||||||||||||||||||||||||||
lizmat | woolfy smiles | 16:28 | |||||||||||||||||||||||||||||||||
Zoffix | timotimo: both: Wendy's brochure but with my own take on it. It might end up the new Wendy's brochure or might not. So far I'm treating it just as a design project for fun. | 16:36 | |||||||||||||||||||||||||||||||||
timotimo | OK! | 16:39 | |||||||||||||||||||||||||||||||||
i just happen to have a introducing perl6 brochure now, too | |||||||||||||||||||||||||||||||||||
lizmat | .oO( they're spreading! :) |
||||||||||||||||||||||||||||||||||
buggable | New CPAN upload: JSON-Fast-0.9.6.tar.gz by TIMOTIMO cpan.metacpan.org/authors/id/T/TI/...9.6.tar.gz | 16:56 | |||||||||||||||||||||||||||||||||
lizmat | still think that URL should point to a modules.perl6.org page, rather than the tarball | 17:00 | |||||||||||||||||||||||||||||||||
Geth | rakudo: 9254396270 | (Elizabeth Mattijsen)++ | src/core/ThreadPoolScheduler.pm Improve readability of ThreadPoolScheduler |
17:02 | |||||||||||||||||||||||||||||||||
rakudo: a2ae00edef | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Remove some superfluous code - we don't need to stub Telemetry::Period anymore - now that we have snapper, we're probably going to be doing less with T |
17:05 | ||||||||||||||||||||||||||||||||||
lizmat | dinner& | 17:22 | |||||||||||||||||||||||||||||||||
Zoffix | buggable: toast | 17:40 | |||||||||||||||||||||||||||||||||
buggable | Zoffix, Between 2017.10-78-g21efe96 and 2017.10: 19 (2.14%) modules got burnt; 20 (2.26%) got unsucced; 265 (29.91%) out of 886 modules appear unusable. See toast.perl6.party/ for details. | ||||||||||||||||||||||||||||||||||
Zoffix | Will looks through the burns and PR the fixes for `readonly $/` issues. | 17:41 | |||||||||||||||||||||||||||||||||
*later today | |||||||||||||||||||||||||||||||||||
timotimo | aha, yamlish was hit with readonly $/ | 17:48 | |||||||||||||||||||||||||||||||||
this diff looks ugly | 17:55 | ||||||||||||||||||||||||||||||||||
i wonder what the right fix for that kind of problem is | |||||||||||||||||||||||||||||||||||
Zoffix: gist.github.com/timo/8c1c395114765...a8ed223e55 | 17:57 | ||||||||||||||||||||||||||||||||||
Zoffix | :o | 17:58 | |||||||||||||||||||||||||||||||||
timotimo: just rename the method's parameter | |||||||||||||||||||||||||||||||||||
Like: method single-quoted($_) { .make: $<value>.Str.subst(/<Grammar::foldable-whitespace>/, ' ', :g).subst("''", "'", :g); } | |||||||||||||||||||||||||||||||||||
timotimo | ah | 17:59 | |||||||||||||||||||||||||||||||||
Zoffix | Like: method single-quoted($_) { .make: .<value>.Str.subst(/<Grammar::foldable-whitespace>/, ' ', :g).subst("''", "'", :g); } | ||||||||||||||||||||||||||||||||||
timotimo | well, that's easy | ||||||||||||||||||||||||||||||||||
Zoffix & | |||||||||||||||||||||||||||||||||||
timotimo | fix pushed | 18:00 | |||||||||||||||||||||||||||||||||
Geth | rakudo: 5c96d554c0 | skids++ | 3 files Implement metamethod shorthand syntax (RT#131478) Silence Perl5 warning on $.<!alpha> Create a faux non-multipart-name desigilname token Teach dissect_longname to digest said token Teach variable action to generate a p6callmethodhow Adjust parsing to handle the meta thrigil |
18:53 | |||||||||||||||||||||||||||||||||
synopsebot | RT#131478 [open]: rt.perl.org/Ticket/Display.html?id=131478 Warning about $. when using metamethod | ||||||||||||||||||||||||||||||||||
rakudo: e4bb219d0c | (Zoffix Znet)++ (committed using GitHub Web editor) | 3 files Merge pull request #1178 from skids/rt131478 Implement metamethod shorthand syntax (RT#131478) |
|||||||||||||||||||||||||||||||||||
synopsebot | RAKUDO#1178 [closed]: github.com/rakudo/rakudo/pull/1178 Implement metamethod shorthand syntax (RT#131478) | ||||||||||||||||||||||||||||||||||
timotimo | why do i keep getting yamlish version 0.0.3 even though i pushed 0.0.4 to github? | 18:56 | |||||||||||||||||||||||||||||||||
github.com/Leont/yamlish/commit/3f...1112cd1abe | |||||||||||||||||||||||||||||||||||
Zoffix | zef update? | ||||||||||||||||||||||||||||||||||
===> Fetching [OK]: YAMLish:ver<0.0.4>:auth< | 18:57 | ||||||||||||||||||||||||||||||||||
timotimo | i thought i did that already | 18:58 | |||||||||||||||||||||||||||||||||
maybe before the last meta update | |||||||||||||||||||||||||||||||||||
Geth | rakudo: 86d541f44e | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Make Telemetry report configurable - both by the column name as well with the method name - add :$legend parameter to add legend of columns shown - show report generation time with whole second granularity |
||||||||||||||||||||||||||||||||||
timotimo | lizmat: might also want to repeat the header every n lines | 18:59 | |||||||||||||||||||||||||||||||||
with the yamlish fix you can now install cro without skipping tests | |||||||||||||||||||||||||||||||||||
Zoffix | If update don't fix it; try `zef --/cached ...` to avoid the cached version (no idea if `update` clears the cache) | ||||||||||||||||||||||||||||||||||
timotimo | on latest rakudo | ||||||||||||||||||||||||||||||||||
AlexDaniel | m: say (5..-5).sum | 19:10 | |||||||||||||||||||||||||||||||||
camelia | 0 | ||||||||||||||||||||||||||||||||||
AlexDaniel | m: say (5..-10).sum | ||||||||||||||||||||||||||||||||||
camelia | 0 | ||||||||||||||||||||||||||||||||||
Geth | rakudo: 474feb0933 | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Add :header-repeat = 32 parameter to Telemetry report |
19:12 | |||||||||||||||||||||||||||||||||
lizmat | timotimo: your wish... :-) ^^^ | ||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build passed. Elizabeth Mattijsen 'Easify ThreadPoolScheduler creation with initial_threads > 0' | 19:17 | |||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/295799738 github.com/rakudo/rakudo/compare/2...cc43ec9a9c | |||||||||||||||||||||||||||||||||||
gfldex | lizmat: any chance to get some RAM stats into Telemetry? | 19:18 | |||||||||||||||||||||||||||||||||
lizmat | point to a fast way of getting access to that info in code, and I'll put it in :-) | 19:20 | |||||||||||||||||||||||||||||||||
hmmm... perhaps we need to ff timotimo's vmhealth work in Moar ? | |||||||||||||||||||||||||||||||||||
Zoffix | AlexDaniel: whoops :} | 19:22 | |||||||||||||||||||||||||||||||||
AlexDaniel: oh wait that's right | |||||||||||||||||||||||||||||||||||
AlexDaniel | ? | ||||||||||||||||||||||||||||||||||
yeah, that's correct | |||||||||||||||||||||||||||||||||||
Zoffix is tired :) | |||||||||||||||||||||||||||||||||||
timotimo | doesn't getrusage give you memory usage? | 19:23 | |||||||||||||||||||||||||||||||||
jnthn | I think there's some memory stuff in there | 19:25 | |||||||||||||||||||||||||||||||||
Geth | rakudo: 5e7dfe52fd | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Further Telemetry tweaks: - format initialization only needs values - remove <s gtq ttq> from default columns - they're really only for deep debugging - change some double quotes strings to single quoted (for clarity) - make sure no header-repeat doesn't explode |
||||||||||||||||||||||||||||||||||
lizmat | jnthn: which "in there" ? | 19:26 | |||||||||||||||||||||||||||||||||
jnthn | getrusage | 19:29 | |||||||||||||||||||||||||||||||||
lizmat | m: use nqp; dd nqp::elems(nqp::getrusage) # indeed ! | 19:30 | |||||||||||||||||||||||||||||||||
camelia | 18 | ||||||||||||||||||||||||||||||||||
lizmat | okidoki wow | ||||||||||||||||||||||||||||||||||
where are these documented ? | 19:31 | ||||||||||||||||||||||||||||||||||
jnthn | man7.org/linux/man-pages/man2/getrusage.2.html | ||||||||||||||||||||||||||||||||||
And our mapping just returns an array of those | 19:32 | ||||||||||||||||||||||||||||||||||
And there's nqp::const iirc | |||||||||||||||||||||||||||||||||||
lizmat | and with struct timeval ru_utime flattened ? | 19:39 | |||||||||||||||||||||||||||||||||
lizmat starts to wonder whether timotimo has JITted getrusage correctly | 19:41 | ||||||||||||||||||||||||||||||||||
timotimo | oh? | 19:42 | |||||||||||||||||||||||||||||||||
there's not really a way to mis-jit it? | |||||||||||||||||||||||||||||||||||
what symptom are you seeing? | |||||||||||||||||||||||||||||||||||
it's probable that some fields are simply not supported in some OSes | 19:43 | ||||||||||||||||||||||||||||||||||
on my system just outputting getrusage's contents gives me (0 140815 0 16715 75916 0 0 0 14227 1 0 72 0 0 0 0 70 1) | 19:44 | ||||||||||||||||||||||||||||||||||
lizmat | timotimo: I seem to recall only expecting 4 return values ? | 19:47 | |||||||||||||||||||||||||||||||||
timotimo | not sure what that's about | ||||||||||||||||||||||||||||||||||
lizmat | ok, then nvm | ||||||||||||||||||||||||||||||||||
sorry for the noise | 19:48 | ||||||||||||||||||||||||||||||||||
jnthn | lizmat: yes, timeval flattened in | 19:50 | |||||||||||||||||||||||||||||||||
gfldex .oO( the sound of progress is quite noisy ) | |||||||||||||||||||||||||||||||||||
lizmat | hmmm... how to find out whether we have a $*SCHEDULER without actually creating one | 19:56 | |||||||||||||||||||||||||||||||||
I guess looking in PROCESS | |||||||||||||||||||||||||||||||||||
is there a specific reason why: | 20:00 | ||||||||||||||||||||||||||||||||||
github.com/rakudo/rakudo/blob/mast...oc.pm#L177 | |||||||||||||||||||||||||||||||||||
does not say scheduler => $*SCHEDULER ? | |||||||||||||||||||||||||||||||||||
feels wrong to me | 20:01 | ||||||||||||||||||||||||||||||||||
Zoffix | I vaguelly remember (or maybe it's a false memory) jnthn saying he made it that way because people wouldn't expect a Proc (which is meant to be blocking) to depend on what the user might've configured $*SCHEDULER be as. | 20:34 | |||||||||||||||||||||||||||||||||
jnthn | Correct. | 20:49 | |||||||||||||||||||||||||||||||||
We always have a scheduler, though? | |||||||||||||||||||||||||||||||||||
lizmat | yes | ||||||||||||||||||||||||||||||||||
nowadays we do | |||||||||||||||||||||||||||||||||||
jnthn | I think we found stuff got racey if not :) | 20:50 | |||||||||||||||||||||||||||||||||
lizmat | indeed | ||||||||||||||||||||||||||||||||||
Geth | rakudo: 3b4f0c6ceb | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 More Telemetry additions - support for max-rss and ix-rss, add max-rss to default report - .gist/.Str no longer special case an empty Telemetry / Period - only decont a/b once in infix:<-> - auto-calculate width of "-" footer for a column |
21:02 | |||||||||||||||||||||||||||||||||
travis-ci | Rakudo build passed. Elizabeth Mattijsen 'Simplify ThreadPoolScheduler creation a bit further' | 21:22 | |||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/295805502 github.com/rakudo/rakudo/compare/b...e8720202c0 | |||||||||||||||||||||||||||||||||||
gfldex | lizmat: tyvm :) | 21:23 | |||||||||||||||||||||||||||||||||
lizmat | gfldex: more goodies coming :-) | ||||||||||||||||||||||||||||||||||
El_Che | Native call is still causing non deterministic fails on the native call tests: gist.github.com/nxadm/cd7559b6611f...test-L2936 . I thought AlexDaniel told me it was supposed to be fixed (Rakudo 2017.10) | 21:33 | |||||||||||||||||||||||||||||||||
I don't post a bug because it's a known issue | |||||||||||||||||||||||||||||||||||
just info that it doesn't seem fixed after all | |||||||||||||||||||||||||||||||||||
AlexDaniel | that does not seem to be the same issue? | 21:34 | |||||||||||||||||||||||||||||||||
El_Che | I don't remember the exact test (I can look it up), but it was nativecall ánd very random (1 out of 10 maybe) | ||||||||||||||||||||||||||||||||||
I think I see it even less now | 21:35 | ||||||||||||||||||||||||||||||||||
but still there | |||||||||||||||||||||||||||||||||||
AlexDaniel | El_Che: I don't think that this particular problem is a known issue, please file a bug report | ||||||||||||||||||||||||||||||||||
gfldex | lizmat: gtc may be a bit narrow, see gist.github.com/gfldex/d83539e9451...adb68654cc | ||||||||||||||||||||||||||||||||||
El_Che | AlexDaniel: I will do | ||||||||||||||||||||||||||||||||||
Geth | roast: 6586549d82 | usev6++ | 6 files [jvm] Skip some tests that fail badly |
21:42 | |||||||||||||||||||||||||||||||||
rakudo: ac738b988e | usev6++ | t/spectest.data [jvm] Don't run test files that hang regularly |
21:43 | ||||||||||||||||||||||||||||||||||
El_Che | AlexDaniel: I will try to gather some dat first | 21:47 | |||||||||||||||||||||||||||||||||
Geth | roast: d0693d9c91 | usev6++ | S32-str/parse-names.t Fix typo in description |
21:49 | |||||||||||||||||||||||||||||||||
AlexDaniel | El_Che++ | 21:53 | |||||||||||||||||||||||||||||||||
El_Che | Every commit to the rakudo-pkg repo equals 12x compiling rakudo, so we'll end up with something :) | 21:55 | |||||||||||||||||||||||||||||||||
Geth | rakudo: 7144dc290c | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Still more Telemetry goodies - export all of the metrics as subs - so calling "max-rss" will give you the current max-rss value - added some internal documentation for clarity - removed protos for methods, as we don't need them outside the setting - multiple calls to snapper() now allow changing of period size on-the-fly |
21:57 | |||||||||||||||||||||||||||||||||
rakudo: 73e1faaa71 | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Increase the size of gtc/ttc, gfldex++ |
22:02 | ||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build canceled. Elizabeth Mattijsen 'Still more Telemetry goodies | ||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/295977089 github.com/rakudo/rakudo/compare/a...44dc290c48 | |||||||||||||||||||||||||||||||||||
buggable | [travis build above] ☠ Did not recognize some failures. Check results manually. | ||||||||||||||||||||||||||||||||||
gfldex | lizmat: if %format would have a ref to the sub that provides a field, one could output the whole lot easily | 22:03 | |||||||||||||||||||||||||||||||||
lizmat | gfldex: ?? | ||||||||||||||||||||||||||||||||||
gfldex | %format = max-rss => [" max-rss", { .max-rss.fmt('%10d') }, "Maximum ...", &max-rss ], ... | 22:05 | |||||||||||||||||||||||||||||||||
%format<max-rss wallclock>[*,2]».() | 22:06 | ||||||||||||||||||||||||||||||||||
lizmat | I don't understand what it would bring to add the ref to the associated sub | ||||||||||||||||||||||||||||||||||
gfldex | Telemetry.new.gist is very lean | 22:08 | |||||||||||||||||||||||||||||||||
by building a connection between fields, legend entries and the subs, one can make a fat .gist with ease | |||||||||||||||||||||||||||||||||||
lizmat | ok, I see where you're going | 22:09 | |||||||||||||||||||||||||||||||||
gfldex | I still got my golfed httpd around. And I want to blog about Telementry. It would be nice if easy things would be easy. :) | 22:10 | |||||||||||||||||||||||||||||||||
lizmat | yeah yeah... typing as fast as I can :-) | 22:11 | |||||||||||||||||||||||||||||||||
Geth | rakudo/curfs-candidates-refactor: 683df8bf6c | (Nick Logan)++ (committed using GitHub Web editor) | src/core/CompUnit/Repository/FileSystem.pm Improve distribution lookup cache For a single dist CUR like this it doesn't really matter, but following the same template as CURI allows run time generated CURFS lookup to work. |
22:14 | |||||||||||||||||||||||||||||||||
roast/cur-candidates-tests: 530b72e5a1 | (Nick Logan)++ (committed using GitHub Web editor) | S11-repository/candidates.t Ensure module lookup after installation works Check that we don't cache when .resolve'ing a missing module by immediately installing said module and seeing if .resolve returns non-Nil. |
22:15 | ||||||||||||||||||||||||||||||||||
Zoffix | m: .say for <a b>.any | 22:26 | |||||||||||||||||||||||||||||||||
camelia | (Mu) | ||||||||||||||||||||||||||||||||||
Zoffix | oh wait, there's already a bug for that.. | ||||||||||||||||||||||||||||||||||
RT#131639 | 22:27 | ||||||||||||||||||||||||||||||||||
synopsebot | RT#131639 [new]: rt.perl.org/Ticket/Display.html?id=131639 [BUG] Junction:D.iterator returns an iterator that .pulls-one a Mu type object | ||||||||||||||||||||||||||||||||||
Geth | rakudo: cf1742dca0 | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 More Telemetry goodness - add support for id-rss (which is usually 0 for me) - add legend by default when in END processing |
22:31 | |||||||||||||||||||||||||||||||||
rakudo: 91e00e6801 | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Telemetry exports T, allowing for T<cpu wallclock> |
22:42 | ||||||||||||||||||||||||||||||||||
lizmat | gfldex: ^^^ | ||||||||||||||||||||||||||||||||||
gfldex | :) | ||||||||||||||||||||||||||||||||||
lizmat: max-rss seams to be in kb not bytes | 23:16 | ||||||||||||||||||||||||||||||||||
lizmat | m: use Telemetry; say T<max-rss> | 23:20 | |||||||||||||||||||||||||||||||||
camelia | 92252 | ||||||||||||||||||||||||||||||||||
lizmat | mine says: 84086784 | ||||||||||||||||||||||||||||||||||
argh, I guess MacOS is returning bytes rather than K's | |||||||||||||||||||||||||||||||||||
Geth | rakudo: 96751ee87c | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Add Telemetry is-rss,min-flt,maj-flt,nswap,inblock,outblock Which all return 0 apparently on MacOS |
23:23 | |||||||||||||||||||||||||||||||||
rakudo: 7e00908cb2 | (Elizabeth Mattijsen)++ | lib/Telemetry.pm6 Normalize all Telemetry x-rss to Kbytes - on MacOS reported values are bytes - on Linux they are apparently Kbytes - Kbytes seems to be the more sensible scale |
23:34 | ||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build failed. Elizabeth Mattijsen 'Make Range.sum sensible for -Inf/Inf endpoints' | 23:52 | |||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/295824731 github.com/rakudo/rakudo/compare/8...eb72a9f514 | |||||||||||||||||||||||||||||||||||
buggable | [travis build above] ✓ All failures are due to: GitHub connectivity (1 failure). |