00:16
lichtkind left
00:27
MasterDuke left
01:02
vrurg_ joined
01:04
vrurg left
05:55
vrurg_ left,
vrurg joined
06:40
JJMerelo joined
07:06
leont joined
07:10
leont left
07:13
JJMerelo left
07:34
leont joined
07:35
MasterDuke joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp-configure: sumanstats++ created pull request #22: Perl6 to Raku |
08:19 | |||||||||||||||||||||||||||||||||||||
nine | AlexDaniel: I'd prefer such long answers to be a private messages | 08:21 | |||||||||||||||||||||||||||||||||||||
AlexDaniel` | but then others won't see it | 08:22 | |||||||||||||||||||||||||||||||||||||
[Tux] |
|
08:31 | |||||||||||||||||||||||||||||||||||||
08:44
Altai-man_ joined
08:46
MasterDuke left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | Files=1306, Tests=111376, 214 wallclock secs (28.74 usr 8.53 sys + 3003.28 cusr 281.64 csys = 3322.19 CPU) | 08:53 | |||||||||||||||||||||||||||||||||||||
09:15
MasterDuke joined
|
|||||||||||||||||||||||||||||||||||||||
nine | AlexDaniel: well, yes :) | 09:18 | |||||||||||||||||||||||||||||||||||||
Though I have to admit, that the output above is at least compact enough to skip it easily. More so than many lines of someone trying something on camelia and taking 10 iterations to get it right | 09:19 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | generally the answer in whateverable has always been “just gist it!” but this time I'm not sure because it gets back with useful info earlier | ||||||||||||||||||||||||||||||||||||||
09:34
Prince213 joined,
Prince213 left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: c8570e87ee | (Elizabeth Mattijsen)++ | src/core.c/Any.pm6 Make dd handle named parameters by themselves Nudged by Coke++. I had been living under the misapprehension that a `|c` in the signature would prevent nqp::p6argvmarray from working. It doesn't, so there is no reason to not catch the named parameters. |
09:58 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | anyway, jnthn++ is right that only the most recent change should be reported, and everything else can be gisted | ||||||||||||||||||||||||||||||||||||||
lizmat | [Coke] ^^ | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | I'll do it later, I guess, but the spammy version will be live first :) | 09:59 | |||||||||||||||||||||||||||||||||||||
10:06
squashable6 left
10:08
squashable6 joined
10:11
sena_kun joined
10:12
Altai-man_ left
10:48
lichtkind joined
10:52
MasterDuke left
|
|||||||||||||||||||||||||||||||||||||||
tbrowder | hi, folks, thoughts, please: what about adding a another rakudo option for debugging? | 10:52 | |||||||||||||||||||||||||||||||||||||
sena_kun | tbrowder, can you elaborate? | 10:55 | |||||||||||||||||||||||||||||||||||||
tbrowder | i would like to be able to run with and with and without $*debug turned while investigating corner cases in pod decl blocks without having to set and unset env vars | ||||||||||||||||||||||||||||||||||||||
sena_kun | tbrowder, how does it differ from envs if the difference is only in rakudo invocation? I mean, `DEBUG=1 raku foo.p6` or `raku --debug=1 foo.p6`? Or I did not understand what do you want, did I? | 10:57 | |||||||||||||||||||||||||||||||||||||
Also, we already have --debug-suspect and --debug-port in rakudo options. | 10:58 | ||||||||||||||||||||||||||||||||||||||
Which work with different thing, though. | |||||||||||||||||||||||||||||||||||||||
Geth | rakudo/rakuast: 8bd0f31585 | (Jonathan Worthington)++ | 2 files Add RakuAST compilation for flattening args |
10:59 | |||||||||||||||||||||||||||||||||||||
tbrowder | is DEBUG already recognized in rakudo? | ||||||||||||||||||||||||||||||||||||||
jnthn | tbrowder: Not exactly that, but there are various environment variables for debugging already | ||||||||||||||||||||||||||||||||||||||
RAKUDO_SCHEDULER_DEBUG, RAKUDO_MODULE_DEBUG, etc. | |||||||||||||||||||||||||||||||||||||||
tbrowder | yes but don't they result in lots of output? | 11:00 | |||||||||||||||||||||||||||||||||||||
jnthn | Not by my standards, but then I'm used to dealing with spesh bugs where I might have hundreds of thousands of lines spesh log :) | 11:01 | |||||||||||||||||||||||||||||||||||||
Volume isn't a problem if it's searchable etc. | 11:02 | ||||||||||||||||||||||||||||||||||||||
But if I understand, you want to turn it on/off during runtime? | |||||||||||||||||||||||||||||||||||||||
I don't think there's anything for that yet. | |||||||||||||||||||||||||||||||||||||||
tbrowder | i use a lot of note statements that i would like to turn on and off easily and using env vars seems like too much work for one or two print statements | ||||||||||||||||||||||||||||||||||||||
timotimo | "debug-suspect", i kind of like it | 11:03 | |||||||||||||||||||||||||||||||||||||
tbrowder:if you use "note", it'll land in stderr, which you can "just" redirect | |||||||||||||||||||||||||||||||||||||||
tbrowder | yeah, for runtime, and i know how to add the option now | ||||||||||||||||||||||||||||||||||||||
11:04
cognominal left
11:06
cognominal joined
|
|||||||||||||||||||||||||||||||||||||||
tbrowder | thats an idea for the redirect. still a bit of a pain but i'll try it | 11:06 | |||||||||||||||||||||||||||||||||||||
what does debug-suspect do? | 11:07 | ||||||||||||||||||||||||||||||||||||||
timotimo | it's a typo of debug-suspend | 11:10 | |||||||||||||||||||||||||||||||||||||
11:10
cognominal left
|
|||||||||||||||||||||||||||||||||||||||
sena_kun | Ugh, sorry for the confusion. :S | 11:11 | |||||||||||||||||||||||||||||||||||||
tbrowder | here's my use case: trying to track down the exact handling of each line from WHY on decl blocks. add note statements for each decl line in Pod.pm6. | ||||||||||||||||||||||||||||||||||||||
raku --doc --doc-format=preserve some-prog | 11:12 | ||||||||||||||||||||||||||||||||||||||
rerun with notes on .... | 11:13 | ||||||||||||||||||||||||||||||||||||||
rerun with notes off... | |||||||||||||||||||||||||||||||||||||||
sena_kun | This sounds very specific and developer-purpose to add a new option for all rakudo users. | 11:14 | |||||||||||||||||||||||||||||||||||||
tbrowder | investigating diff between stdout and stderr... | ||||||||||||||||||||||||||||||||||||||
keep it secret! | 11:15 | ||||||||||||||||||||||||||||||||||||||
but good idea for using stderr. that should work for now, thnx | 11:16 | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: e9f803572d | (Elizabeth Mattijsen)++ | src/core.c/Backtrace.pm6 Give Backtrace candidates for HLL Exception Preventing a .^name lookup for each backtrace creation from an Exception. |
||||||||||||||||||||||||||||||||||||||
tbrowder | timitimo: good idea, thnx | 11:17 | |||||||||||||||||||||||||||||||||||||
11:23
cognominal joined
11:43
MasterDuke joined
|
|||||||||||||||||||||||||||||||||||||||
lizmat | so, I'm looking at Exception and Failure, and realize both of them have an exception and a backtrace attribute | 11:50 | |||||||||||||||||||||||||||||||||||||
so why isn't Failure just a subclass of Exception ? | 11:51 | ||||||||||||||||||||||||||||||||||||||
sena_kun | lizmat, don't they serve different purposes/have different meaning? Not like I can explain it very nicely, but that's the impression I have. Other than that suddenly making Failure ~~ Exception true calls for fallout and different subtle issues. | 11:55 | |||||||||||||||||||||||||||||||||||||
lizmat | sena_kun: that's a good point | ||||||||||||||||||||||||||||||||||||||
although any tests on Failure would not be affected, and that would be most, if not all | 11:56 | ||||||||||||||||||||||||||||||||||||||
sena_kun | From what I saw, error handling is where people tend to create delicate code pieces with all the complexity some very specific error handling can demand. I also have not as much Raku experience as you, though. :) | 11:57 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: a431968e6b | (Elizabeth Mattijsen)++ | src/core.c/Exception.pm6 Make some Exception internals more readable - also return Nil to indicate absence of a value pretty sure this code predated the concept of Nil - use ternary for better readability |
11:58 | |||||||||||||||||||||||||||||||||||||
12:10
Altai-man_ joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 519a5726b5 | (Elizabeth Mattijsen)++ | src/core.c/Failure.pm6 Save 2 Scalar allocation for each Failure By binding the attributes rather than assigning to them. |
12:10 | |||||||||||||||||||||||||||||||||||||
12:12
sena_kun left
12:15
cognominal left
12:16
cognominal joined
|
|||||||||||||||||||||||||||||||||||||||
jnthn | lizmat: it's Failure has-a exception, because there are hundreds of types of exception | 12:23 | |||||||||||||||||||||||||||||||||||||
12:23
cognominal left
|
|||||||||||||||||||||||||||||||||||||||
jnthn | e.g. they're often filled with a typed exception | 12:23 | |||||||||||||||||||||||||||||||||||||
tbrowder | debug advice again please: what dyn var can i test to indicate when in or out of optimizer pass? | ||||||||||||||||||||||||||||||||||||||
lizmat | jnthn: ah, good point | ||||||||||||||||||||||||||||||||||||||
jnthn | Well, they always are, it's just that sometimes the type is X::AdHoc | 12:24 | |||||||||||||||||||||||||||||||||||||
12:24
cognominal joined
|
|||||||||||||||||||||||||||||||||||||||
jnthn | As I remember it, we've always promoted it beyond the string before it ends up in Failure | 12:24 | |||||||||||||||||||||||||||||||||||||
lizmat | but why are there 2 backtrace attributes, one in Exception and on Failure ? | ||||||||||||||||||||||||||||||||||||||
jnthn | They map to the two locations that are reported | ||||||||||||||||||||||||||||||||||||||
Where it was thrown, and where the failiure exploded | |||||||||||||||||||||||||||||||||||||||
lizmat | ah... ok | 12:25 | |||||||||||||||||||||||||||||||||||||
I think we could use some better attribute naming :-) | |||||||||||||||||||||||||||||||||||||||
[Coke] | m: dd :hi | ||||||||||||||||||||||||||||||||||||||
camelia | :hi | ||||||||||||||||||||||||||||||||||||||
lizmat | and method naming | ||||||||||||||||||||||||||||||||||||||
e.g.: Exception.reset-backtrace resets its $!ex attribute :-) | 12:26 | ||||||||||||||||||||||||||||||||||||||
brb& | |||||||||||||||||||||||||||||||||||||||
[Coke] | lizmat++ | ||||||||||||||||||||||||||||||||||||||
jnthn | OK, an afternoon of RakuAST... :) | 12:31 | |||||||||||||||||||||||||||||||||||||
moritz | \o/ | 12:34 | |||||||||||||||||||||||||||||||||||||
moritz spends an afternoon debugging instabilities in a distributed micoservice arch. No fun :/ | 12:35 | ||||||||||||||||||||||||||||||||||||||
jnthn | .oO( Monoliths never felt so good! ) |
||||||||||||||||||||||||||||||||||||||
moritz | it doesn't help that the whole world and their tooling has adopted http(s), and we're using rabbitmq (which by itself is pretty cool) | 12:57 | |||||||||||||||||||||||||||||||||||||
12:58
squashable6 left
13:01
squashable6 joined
|
|||||||||||||||||||||||||||||||||||||||
[Coke] | moritz++ # hard work | 13:12 | |||||||||||||||||||||||||||||||||||||
we are doing microservice stuff at $dayjob, and it can definitely add some complexity. | 13:15 | ||||||||||||||||||||||||||||||||||||||
Geth | nqp-configure: d634fb18a3 | sumanstats++ | 4 files Perl6 to Raku + fix link of nqp in github + Perl means Perl 5, no ambiguity now, so change perl5 to perl only |
13:21 | |||||||||||||||||||||||||||||||||||||
nqp-configure: 277151c0df | (Vadim Belman)++ (committed using GitHub Web editor) | 4 files Merge pull request #22 from sumanstats/master Perl6 to Raku |
|||||||||||||||||||||||||||||||||||||||
rakudo/rakuast: 836e84d572 | (Jonathan Worthington)++ | 3 files Add RakuAST::FatArrow for `foo => 'bar'` |
13:23 | ||||||||||||||||||||||||||||||||||||||
rakudo/rakuast: 70728d719e | (Jonathan Worthington)++ | src/Perl6/ast/literals.rakumod Toss QAST methods leftover from early experiments |
|||||||||||||||||||||||||||||||||||||||
rakudo/rakuast: 9a992a04ad | (Jonathan Worthington)++ | 3 files RakuAST handling of named arguments |
|||||||||||||||||||||||||||||||||||||||
rakudo/rakuast: a0e51aca1c | (Jonathan Worthington)++ | src/Perl6/ast/signature.rakumod Fix regressed parameter test Was broken during changes to make declarations responsible for how their lookup code is generated. |
13:30 | ||||||||||||||||||||||||||||||||||||||
lizmat | sourceable6: 1/0 | 13:31 | |||||||||||||||||||||||||||||||||||||
sourceable6 | lizmat, No idea, boss. Can you give me a Code object? | ||||||||||||||||||||||||||||||||||||||
lizmat | sourceable6 infix:</>(1,0) | 13:32 | |||||||||||||||||||||||||||||||||||||
sourceable6: infix:</>(1,0) | |||||||||||||||||||||||||||||||||||||||
sourceable6 | lizmat, github.com/rakudo/rakudo/blob/519a...t.pm6#L228 | ||||||||||||||||||||||||||||||||||||||
lizmat | sourceable6: infix:</>(1e0,0) | ||||||||||||||||||||||||||||||||||||||
sourceable6 | lizmat, github.com/rakudo/rakudo/blob/519a...l.pm6#L143 | ||||||||||||||||||||||||||||||||||||||
lizmat | sourceable6: infix:<<>>>(1/0,10) | 13:36 | |||||||||||||||||||||||||||||||||||||
sourceable6 | lizmat, No idea, boss. Can you give me a Code object? Output: 04===SORRY!04=== Error while compiling /tmp/0HTI2gLV3iUndeclared routine: infix:<> used at line 1. Did you mean 'infix:<⊍>', 'infix:<⊎>', 'infix:<X>', 'infix:<≥>', 'infix:<+>'? | ||||||||||||||||||||||||||||||||||||||
lizmat | sourceable6: infix:<<≥>>(1/0,10) | 13:37 | |||||||||||||||||||||||||||||||||||||
sourceable6 | lizmat, github.com/rakudo/rakudo/blob/519a...t.pm6#L465 | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo/rakuast: 9a168afa86 | (Jonathan Worthington)++ | 2 files Lookup code-related meta-objects directly We are already stubbing them in the bootstrap, which is where RakuAST lives too. So just refer to them directly, rather than making them go through the whole lookup process. (While in principle one could define an alternate setting that defines all of these differently, in reality the compiler couples very tightly to them at all levels, so there's no point accounting for an impractical possibility.) |
14:03 | |||||||||||||||||||||||||||||||||||||
rakudo/rakuast: 6c00ca9445 | (Jonathan Worthington)++ | 7 files Make RakuAST::Type::Simple use RakuAST::Name So it will be able to scale to multi-prat name lookups. |
|||||||||||||||||||||||||||||||||||||||
[Coke] | You're a multi-prat. | 14:05 | |||||||||||||||||||||||||||||||||||||
(as a non British person, I hope that was merely silly and not rude) | |||||||||||||||||||||||||||||||||||||||
lizmat | sourceable6: infix:<==>(42,1/0) | 14:08 | |||||||||||||||||||||||||||||||||||||
sourceable6 | lizmat, github.com/rakudo/rakudo/blob/519a...t.pm6#L292 | ||||||||||||||||||||||||||||||||||||||
jnthn | oops :) | 14:10 | |||||||||||||||||||||||||||||||||||||
I didn't mean to describe the current UK government... :P | |||||||||||||||||||||||||||||||||||||||
14:11
sena_kun joined
|
|||||||||||||||||||||||||||||||||||||||
[Coke] | :) | 14:11 | |||||||||||||||||||||||||||||||||||||
dogbert17 | releasable: next | ||||||||||||||||||||||||||||||||||||||
releasable6 | dogbert17, Next release in ≈17 days and ≈4 hours. There are no known blockers. Changelog for this release was not started yet | ||||||||||||||||||||||||||||||||||||||
dogbert17, Details: gist.github.com/ee828babd19665c486...97020c0426 | |||||||||||||||||||||||||||||||||||||||
dogbert17 contemplates upgrading libuv | |||||||||||||||||||||||||||||||||||||||
MasterDuke | didn't sena_kun do a Blin run recently? nothing new came out of it? | ||||||||||||||||||||||||||||||||||||||
14:12
Altai-man_ left
|
|||||||||||||||||||||||||||||||||||||||
sena_kun | MasterDuke, I did, in fact twice, gist.github.com/Altai-man/d4f15b37...056fe03d94 | 14:12 | |||||||||||||||||||||||||||||||||||||
Could not obtain blocking, exclusive lock: Failed to lock filehandle: 35 are very common for some reason, which makes me wonder what even can be wrong. | |||||||||||||||||||||||||||||||||||||||
jnthn | I've been thinking a bit about how to evolve grammar/actions to go along with producing RakuAST. I suspect I'm going to end up with a huge tangle of conditional code if I try and keep it as one file. | ||||||||||||||||||||||||||||||||||||||
sena_kun | I saw similar results with 24 threads and 8 threads. | 14:13 | |||||||||||||||||||||||||||||||||||||
jnthn | My current idea is to grow them "from scratch" (of course liberally stealing stuff, as I am into the RakuAST nodes anyway) under src/Raku/ | ||||||||||||||||||||||||||||||||||||||
MasterDuke | sena_kun: btw, have you done any dev on Blin? it would be nice if the hashes it mentions were links | 14:15 | |||||||||||||||||||||||||||||||||||||
sena_kun | MasterDuke, not really. They would be links if posted in rakudo issue. But to do this one needs to investigate the locking issue, which I have no idea where to start and also a bit short on time. | 14:16 | |||||||||||||||||||||||||||||||||||||
MasterDuke | i believe that message is coming from here github.com/rakudo/rakudo/blame/519...e.pm6#L656 but that code hasn't been touched in 3 years | 14:22 | |||||||||||||||||||||||||||||||||||||
jnthn | Precomp uses file locking, so that may be a place to look | ||||||||||||||||||||||||||||||||||||||
MasterDuke | and the moarvm exception is thrown here github.com/MoarVM/MoarVM/blame/mas...ile.c#L320 but that also hasn't been touched in the same amount of time | 14:24 | |||||||||||||||||||||||||||||||||||||
ah. didn't nine have a recent change about file locking and precomp? | |||||||||||||||||||||||||||||||||||||||
Geth | rakudo/rakuast: 5965ac15e5 | (Jonathan Worthington)++ | 37 files Move src/Perl6/ast -> src/Raku/ast |
14:26 | |||||||||||||||||||||||||||||||||||||
jnthn stares at all the macros in the build system with curious names | 14:54 | ||||||||||||||||||||||||||||||||||||||
Is @bsm something naughty? :) | |||||||||||||||||||||||||||||||||||||||
That said, it's sufficiently cargo-cultable that I think it's built what I wanted | 14:57 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | is github.com/rakudo/rakudo/blob/mast...e.pm6#L176 safe? should it be an atomicint? | 15:05 | |||||||||||||||||||||||||||||||||||||
15:06
lucasb joined
|
|||||||||||||||||||||||||||||||||||||||
vrurg | jnthn: bsm stands for 'backend-suffixed macro' | 15:06 | |||||||||||||||||||||||||||||||||||||
jnthn: bpm – 'backend-prefixed macro' | 15:07 | ||||||||||||||||||||||||||||||||||||||
jnthn | aha :) | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | One easy, top-level split for the src/Perl6/ grammar & actions would be to split them up based on items in the language braid. e.g. src/Raku/MAIN/Grammar.nqp, src/Raku/Q/Actions.nqp, etc. | 15:08 | |||||||||||||||||||||||||||||||||||||
vrurg | jnthn: bpv/bsv are for variables, i.e. for lhs in assignments. | 15:09 | |||||||||||||||||||||||||||||||||||||
jnthn | ShimmerFairy: We could do that also, though Raku::Actions probably comes out a lot shorter than Perl6::Actions ('cus the AST it is constructing is higher level) | 15:10 | |||||||||||||||||||||||||||||||||||||
ShimmerFairy: And having them spread out over mutliple files is quite inconvenient (at least, for me) | 15:11 | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | yeah, I totally see Grammar being more of a possible tangle. | 15:13 | |||||||||||||||||||||||||||||||||||||
It's funny though, I happen to prefer many small files over big huge ones :P (I still kinda wish you could split a module over multiple files if you wanted to.) | 15:16 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | nine: github.com/rakudo/rakudo/commit/ac...887f7496ed removes the protect in CompUnit::PrecompilationStore::File.lock. but should $!lock-count be an atomicint then? | 15:18 | |||||||||||||||||||||||||||||||||||||
jnthn | I guess it comes down to...well, maybe personal preference, but maybe also what one's environment makes ergonomic | ||||||||||||||||||||||||||||||||||||||
ShimmerFairy | Of course. I use emacs (which makes looking at multiple files at once trivial), and also I do a fair bit of C++ where everything is (traditionally) across 2 files already. | 15:20 | |||||||||||||||||||||||||||||||||||||
timotimo | i mean there shouldn't be a significant problem making a CompUnitRepo or whatever that reads multiple files into a single compilation unit | 15:47 | |||||||||||||||||||||||||||||||||||||
that'd be a pretty interesting thing to try | 15:48 | ||||||||||||||||||||||||||||||||||||||
it'd probably have to be declared in the meta json file with all the files, and i guess the rest of tooling would get a little confused | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | sourceable6: 1/0 ≥ 10 | 15:56 | |||||||||||||||||||||||||||||||||||||
sourceable6 | AlexDaniel, github.com/rakudo/rakudo/blob/519a...t.pm6#L465 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | lizmat: ↑ this also works :) | ||||||||||||||||||||||||||||||||||||||
sourceable6: 1/0 > 10 | |||||||||||||||||||||||||||||||||||||||
sourceable6 | AlexDaniel, github.com/rakudo/rakudo/blob/519a...t.pm6#L421 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | sourceable6: 1 / 0 | 15:57 | |||||||||||||||||||||||||||||||||||||
sourceable6 | AlexDaniel, github.com/rakudo/rakudo/blob/519a...t.pm6#L228 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | it likes spaces around ops :) | ||||||||||||||||||||||||||||||||||||||
sena_kun | AlexDaniel, o/ In case you did not backlog, have you even seen "Failed to lock filehandle: 35" on Blin? | 16:03 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | sena_kun: sounds like a bug in rakudo | ||||||||||||||||||||||||||||||||||||||
something is not closing files when it should | |||||||||||||||||||||||||||||||||||||||
or… something else? | 16:04 | ||||||||||||||||||||||||||||||||||||||
similar bug: github.com/rakudo/rakudo/issues/1373 | |||||||||||||||||||||||||||||||||||||||
sena_kun | AlexDaniel, interesting... Any idea is that can be host rakudo which runs blin itself or some particular revision? Also, host rakudo is not blead, right? | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | sena_kun: I don't know? Depends on the setup | 16:05 | |||||||||||||||||||||||||||||||||||||
sena_kun | Indeed. | ||||||||||||||||||||||||||||||||||||||
Will try to play with it some time, I guess, thanks for some insight. | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | sena_kun: but it does use the latest version of zef, I think | ||||||||||||||||||||||||||||||||||||||
so if zef introduces an issue then it can break blin itself | 16:06 | ||||||||||||||||||||||||||||||||||||||
sena_kun | Latest commit to zef was in April. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | sena_kun: well, something is definitely broken somewhere | 16:07 | |||||||||||||||||||||||||||||||||||||
sena_kun: oh, hey, can you upload the svg file with the dependency graph? | 16:08 | ||||||||||||||||||||||||||||||||||||||
I'm wondering if these modules are in any way related | 16:09 | ||||||||||||||||||||||||||||||||||||||
53 failed modules vs 1058 OK, the situation is actually not as bad | |||||||||||||||||||||||||||||||||||||||
16:10
Altai-man_ joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | Altai-man_: ↑ | 16:10 | |||||||||||||||||||||||||||||||||||||
Geth: ver github.com/rakudo/rakudo/commit/c6...24b7eaba1c | |||||||||||||||||||||||||||||||||||||||
Geth | AlexDaniel, version bump brought in these changes: github.com/perl6/nqp/compare/2020....0-g5d46adf | ||||||||||||||||||||||||||||||||||||||
16:12
sena_kun left
|
|||||||||||||||||||||||||||||||||||||||
Altai-man_ | AlexDaniel, no svg, but modules are not related. | 16:14 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | a ok | ||||||||||||||||||||||||||||||||||||||
Altai-man_ | I'll try to reproduce it with lower number of modules and then bisect between different endpoints, I guess. | 16:15 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | Altai-man_: wait but, it all bisects to the same commit? | 16:16 | |||||||||||||||||||||||||||||||||||||
62adc88c69ab2532db11c573b3ccb0452811a14c | |||||||||||||||||||||||||||||||||||||||
linkable6 | (2020-05-31) github.com/rakudo/rakudo/commit/62adc88c69 Merge branch 'coke-master' | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | ah. | ||||||||||||||||||||||||||||||||||||||
Altai-man_ | That's because it's endpoint. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | right, that was HEAD… | ||||||||||||||||||||||||||||||||||||||
Altai-man_ | And not all of them. | 16:17 | |||||||||||||||||||||||||||||||||||||
E.g. App::Football – Fail, Bisected: 1c94538e61ea59d64b9f4f269272a2ac1f6ebb9b | |||||||||||||||||||||||||||||||||||||||
So :S | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | buuut that means it was good on every other commit, right? | ||||||||||||||||||||||||||||||||||||||
Altai-man_ | Yeah. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | soooo that means it happens when too many modules are using the same rakudo version? | 16:18 | |||||||||||||||||||||||||||||||||||||
I mean, too many instances of the same rakudo binary running and trying to install modules | |||||||||||||||||||||||||||||||||||||||
Altai-man_ | Isn't it locked? | ||||||||||||||||||||||||||||||||||||||
Or, ahem | 16:19 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | not for the endpoint! | ||||||||||||||||||||||||||||||||||||||
otherwise we would have to use only one core | |||||||||||||||||||||||||||||||||||||||
Altai-man_ | I assume that only a single instance of rakudo (for a commit) can run a module a time. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | when bisecting, yes | ||||||||||||||||||||||||||||||||||||||
Altai-man_: see this: github.com/Raku/Blin/blob/7d81839a...#L180-L182 | 16:20 | ||||||||||||||||||||||||||||||||||||||
it leaves both starting points unpacked so that it can use them concurrently without locking | |||||||||||||||||||||||||||||||||||||||
this was my workaround for non-relocatable rakudo | 16:21 | ||||||||||||||||||||||||||||||||||||||
so that we can saturate the CPU | |||||||||||||||||||||||||||||||||||||||
Altai-man_: you can run blin with --nproc= something lower than the default | |||||||||||||||||||||||||||||||||||||||
and it's possible that it will eliminate these results that you're seeing | 16:22 | ||||||||||||||||||||||||||||||||||||||
Altai-man_ | AlexDaniel, I did two runs, first with 24 and second with 8 nproc and still the same. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | but it still means that there's a bug in rakudo | ||||||||||||||||||||||||||||||||||||||
oh. | |||||||||||||||||||||||||||||||||||||||
I don't know how to debug this then :( | |||||||||||||||||||||||||||||||||||||||
Altai-man_ | Sorry, it was actually nproc 10 for the second time, but not really so. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel, no problem, I'll look at it later again. Thanks for your time spent on this. :) | 16:23 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | you're welcome! | ||||||||||||||||||||||||||||||||||||||
Altai-man_ | Just was wondering if it can be something which occurred before. | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | Altai-man_: we used to have some issues with running out of filehandles, but this looks different | 16:25 | |||||||||||||||||||||||||||||||||||||
can we have a backtrace of that somehow? | 16:26 | ||||||||||||||||||||||||||||||||||||||
timotimo: ? | |||||||||||||||||||||||||||||||||||||||
timotimo | mhh? | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | timotimo: see gist.github.com/Altai-man/d4f15b37...056fe03d94 the error is Could not obtain blocking, exclusive lock: Failed to lock filehandle: 35 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | did you guys see my comments above? though maybe i'm barking up the wrong tree... | 16:27 | |||||||||||||||||||||||||||||||||||||
timotimo | you need that to give a backtrace? | 16:28 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | that would help? | ||||||||||||||||||||||||||||||||||||||
MasterDuke | particularly the one addressed to nine | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | MasterDuke: I'm very sorry, I did not backlog | ||||||||||||||||||||||||||||||||||||||
MasterDuke | colabti.org/irclogger/irclogger_lo...06-03#l240 | 16:29 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | Feb 10, 2018 ? | 16:30 | |||||||||||||||||||||||||||||||||||||
Altai-man_ | MasterDuke, this commit is from 2018. | ||||||||||||||||||||||||||||||||||||||
MasterDuke | yeah, but some other commit may have just triggered an underlying problem | ||||||||||||||||||||||||||||||||||||||
or change in environment | 16:31 | ||||||||||||||||||||||||||||||||||||||
but afk for a bit | |||||||||||||||||||||||||||||||||||||||
timotimo | sorry, dunno how this problem is occuring exactly | ||||||||||||||||||||||||||||||||||||||
the machine my irc client runs on will be rebooting a few times today, so i won't be on irc too much | 16:46 | ||||||||||||||||||||||||||||||||||||||
16:53
timotimo left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo/rakuast: 360db692e7 | (Jonathan Worthington)++ | 6 files Start to stub in a RakuAST-based grammar/actions These are enabled by an environment variable. Currently, doesn't do enough in order to actually compile/run anything, but stubs in various of the pieces needed. |
17:21 | |||||||||||||||||||||||||||||||||||||
nine | MasterDuke: yes, looks like we want atomic decrement there | 17:33 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: MasterDuke17++ created pull request #3741: Fix possible race in multi-threaded precompilation |
17:55 | |||||||||||||||||||||||||||||||||||||
MasterDuke | Altai-man_: can you test Blin with ^^^? | 17:56 | |||||||||||||||||||||||||||||||||||||
Altai-man_ | MasterDuke, sure, will start a run a bit later tonight. This server also hosts RakuDist, so don't want to press it too much. | 17:57 | |||||||||||||||||||||||||||||||||||||
18:10
sena_kun joined
18:12
Altai-man_ left
18:33
mst joined
|
|||||||||||||||||||||||||||||||||||||||
sena_kun | MasterDuke, around? | 18:40 | |||||||||||||||||||||||||||||||||||||
.tell MasterDuke sorry to mislead earlier, have not checked the PR carefully enough. AFAIK, Blin can work only with rakudo branches, so a fork won't do. Can you re-submit it as a rakudo branch? | 18:42 | ||||||||||||||||||||||||||||||||||||||
tellable6 | sena_kun, I'll pass your message to MasterDuke | ||||||||||||||||||||||||||||||||||||||
sena_kun | PR itself is not mandatory, just a branch will do to see if the issue with locks becomes better or not. | ||||||||||||||||||||||||||||||||||||||
[Coke] | the only issue with that is you need a CLA to make a rakudo branch; do we want to support Blin testing on non-core committer code? | 18:47 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo/fix_possible_race_in_multi_threaded_precompilation: ed3be77af6 | (Daniel Green)++ | src/core.c/CompUnit/PrecompilationStore/File.pm6 Fix possible race in multi-threaded precompilation by changing $!lock-count to an atomicint and using atomic operations to interact with it. This code used to be inside a `.protect` call (and so didn't need to be atomic), but that was removed in ac87ea2ac84883bf701808485ac2da887f7496ed for other reasons. |
||||||||||||||||||||||||||||||||||||||
[Coke] | (Just asking in general, I realize there'd likely need to be code changes to support) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | [Coke]: you need to ask it explicitly to use that branch, so that's ok | ||||||||||||||||||||||||||||||||||||||
for blin that is | |||||||||||||||||||||||||||||||||||||||
MasterDuke | sena_kun: done, pushed to rakudo/fix_possible_race_in_multi_threaded_precompilation | 18:48 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | it will need a few minutes to produce a build :) | 18:49 | |||||||||||||||||||||||||||||||||||||
although yeah, whateverable will happily run any code you push to a branch in order to build rakudo, so that's potentially scary :) | 18:51 | ||||||||||||||||||||||||||||||||||||||
.oO( my server, my lack of rules! ) |
|||||||||||||||||||||||||||||||||||||||
c: fix_possible_race_in_multi_threaded_precompilation say 42 | 18:54 | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦fix_possible_race_in_multi_threaded_precompilation: «42» | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | sena_kun: ↑ it should work | ||||||||||||||||||||||||||||||||||||||
sena_kun already ran it | |||||||||||||||||||||||||||||||||||||||
aaand it works | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: rakuast say 42 | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦rakuast: «Cannot test this commit (Commit exists, but an executable could not be built for it)» | ||||||||||||||||||||||||||||||||||||||
sena_kun | ===> Updated cpan mirror: raw.githubusercontent.com/ugexe/Pe...cpan1.json takes some really long time for some reason, which is good for race things like this one, but hmm. | 18:55 | |||||||||||||||||||||||||||||||||||||
anyway, blin is preparing, now dinner. o7 | |||||||||||||||||||||||||||||||||||||||
19:37
timo joined
19:38
timo is now known as Guest50966
19:39
Guest50966 is now known as timotimo
19:51
squashable6 left
19:53
squashable6 joined
20:10
Altai-man_ joined
20:12
sena_kun left
20:27
lichtkind left
20:32
MasterDuke left
20:57
Kaiepi left
21:00
Kaiepi joined
21:19
MasterDuke joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | ¦ rakudo: lizmat self-assigned New IO::Handle auto-closing logic is broken github.com/rakudo/rakudo/issues/3742 | 21:51 | |||||||||||||||||||||||||||||||||||||
lizmat | bisectable6: my $c; for 1..2000 { my $p = "/tmp/foo.txt{$c++}".IO.open(:w); $p.lock; $p.unlock; $p.close; }; say "DONE" | 22:10 | |||||||||||||||||||||||||||||||||||||
bisectable6 | lizmat, Bisecting by exit code (old=2015.12 new=519a572). Old exit code: 1 | ||||||||||||||||||||||||||||||||||||||
22:11
sena_kun joined
|
|||||||||||||||||||||||||||||||||||||||
bisectable6 | lizmat, bisect log: gist.github.com/650fec73057f4f0e6e...6bc99f91bd | 22:11 | |||||||||||||||||||||||||||||||||||||
lizmat, (2017-04-16) github.com/rakudo/rakudo/commit/21...6b963da79d | |||||||||||||||||||||||||||||||||||||||
22:12
Altai-man_ left
|
|||||||||||||||||||||||||||||||||||||||
Geth | problem-solving: 7fbe6dcb1f | (Patrick Böker)++ | solutions/language/Windows-process-argument-quoting.md Solution for #20: Windows process argument quoting |
23:07 | |||||||||||||||||||||||||||||||||||||
problem-solving: cc185d8187 | (Patrick Böker)++ | solutions/language/Windows-process-argument-quoting.md Correct a typo |
|||||||||||||||||||||||||||||||||||||||
problem-solving: dd5529c625 | (Jonathan Worthington)++ (committed using GitHub Web editor) | solutions/language/Windows-process-argument-quoting.md Merge pull request #178 from patrickbkr/problem-solving20 Solution for #20: Windows process argument quoting |
|||||||||||||||||||||||||||||||||||||||
23:42
sena_kun left
23:58
leont left
|