00:41 guifa2_ left 00:58 lichtkind left 01:42 Xliff joined
Xliff .tell nine Was close, but recent changes in PrecompilationStore necessitated another solution. 01:43
tellable6 Xliff, I'll pass your message to nine
04:48 guifa2 joined 05:31 guifa2 left 05:43 Xliff left
nine Xliff: but none of those changes changed the architecture? So what is preventing the original plan from succeeding? 06:26
tellable6 nine, I'll pass your message to Xliff
06:31 guifa2 joined 06:35 guifa2 left 08:01 hankache joined 08:03 sena_kun joined 08:23 domidumont joined 08:25 Altai-man_ joined 08:28 sena_kun left 08:49 jjmerelo joined
lizmat Files=1306, Tests=111292, 212 wallclock secs (28.60 usr 8.26 sys + 2992.37 cusr 272.84 csys = 3302.07 CPU) 09:41
10:26 sena_kun joined 10:27 Altai-man_ left
[Tux] Rakudo version 2020.05.1-128-g7571f65a4 - MoarVM version 2020.05-12-g3605efdbf
csv-ip5xs0.820 - 0.835
csv-ip5xs-208.151 - 8.277
csv-parser24.721 - 25.080
csv-test-xs-200.394 - 0.399
test7.314 - 7.524
test-t1.848 - 1.851
test-t --race0.801 - 0.822
test-t-2030.705 - 31.026
test-t-20 --race8.790 - 8.824
10:48
11:02 hankache_ joined 11:05 hankache left 11:21 hankache_ left
Geth rakudo: da5825e698 | (Elizabeth Mattijsen)++ | src/core.c/io_operators.pm6
Make spurt() a few % faster

Mostly because of fewer object allocations by adding specific candidates. This should also help introspection and catch typos in the named parameters at compile time.
11:22
12:20 jjmerelo left 12:26 Altai-man_ joined 12:28 sena_kun left
Geth rakudo: andreoss++ created pull request #3699:
[jvm] Rename s/perl6/raku/g
12:31
12:31 andreoss joined
MasterDuke why can't i select pmurias as a reviewer for an nqp pr? 12:42
but i can for rakudo. is he not part of the raku team/project/group/whatever? 12:43
lizmat I guess ? 12:46
FWIW, I would be fine with merging, bartolin_ will know then anyway :-) 12:49
Geth rakudo: fc88b9c2d2 | (Elizabeth Mattijsen)++ | src/core.c/IO/Path.pm6
Made IO::Path's "is-absolute" handling a bit faster

And add some internal documentation, and some extra return constraints.
12:50
rakudo: d8c265001a | (Elizabeth Mattijsen)++ | src/core.c/Mu.pm6
Make so() and not() faster

  - so(Bool:D) almost 5x as fast
  - so(foo) almost 10% faster
  - not(foo) about 3.5% faster
Thanks to the power of ternaries and an additional Bool:D candidate
13:22
lizmat afk for a few hours&
13:30 domidumont left 14:15 Kaiepi left 14:17 Kaiepi joined 14:27 sena_kun joined 14:28 Altai-man_ left 14:30 Kaiepi left 14:31 Kaiepi joined 14:55 finsternis joined 15:01 kawaii joined 15:44 patrickb joined
patrickb .tell rba Still waiting for the 2020.05.1 upload. Also ping about automating this somehow. :-) 15:47
tellable6 patrickb, I'll pass your message to rba
patrickb .tell rba Maybe We can even automate this with AzureCI. They have a load of scripts to help with deployment of artifacts.
tellable6 patrickb, I'll pass your message to rba
patrickb .tell rba This might be of use: docs.microsoft.com/en-us/azure/dev...ure-devops 16:00
tellable6 patrickb, I'll pass your message to rba
patrickb .tell rba Ping me if I can help with this. 16:01
tellable6 patrickb, I'll pass your message to rba
rba patrickb: We might discuss this. 16:02
tellable6 2020-05-17T15:47:12Z #raku-dev <patrickb> rba Still waiting for the 2020.05.1 upload. Also ping about automating this somehow. :-)
2020-05-17T15:47:45Z #raku-dev <patrickb> rba Maybe We can even automate this with AzureCI. They have a load of scripts to help with deployment of artifacts.
rba patrickb: When we like to go this route, we need to make sure the builds are automatically tested and gpg signed as well... 16:09
patrickb Good point. Didn't think about that. They are tested already. But signing is a different beast. 16:10
It seems to be possible to automatically sign stuff: docs.microsoft.com/en-us/azure/dev...ure-devops 16:12
The key will have to reside on azure servers though.
rba I would rather prefer you upload the files yourself directly. 16:13
patrickb I think a group of possible uploaders is a good thing to have. The last few releases it always took me 2-4 days to find the time to do the build. So having a bit of redundancy might be good. 16:15
(Up until now building on Windows still needed to be done manually. That's now also automated, so the effort ofdoing a build has sunk considerably.) 16:16
rba patrickb: Please pm me your prefered username and your ssh public keys.
Geth rakudo: 8e5b610aa2 | (Christian Bartolomäus)++ | 2 files
Avoid StringIndexOutOfBoundsException on Windows

On the JVM backend, nqp::backendconfig doesn't tell us the OS name.
Unfortunately, 'nmake install' still doesn't work. Another error surfaces:
   Invalid JSON: VMArray representation does not implement push_native
16:23
16:26 Altai-man_ joined 16:29 sena_kun left
timotimo oh, that looks like fallout from the "allow decode to push into already existing array" change? 16:30
bartolin_: could that help? 16:31
bartolin_ timotimo: didn't see that one, yet. Thanks for the pointe. will take a look later & 16:33
tellable6 2020-05-15T07:20:15Z #raku-dev <patrickb> bartolin I'm hunting a JVM / Windows build error. Here is the failure: github.com/Raku/nqp/issues/629 Any ideas?
2020-05-15T21:53:45Z #moarvm <patrickz> bartolin The previous failure is solved. Now I have a new JVM error: github.com/rakudo/rakudo/issues/3695 Help appreciated!
patrickb bartolin_: Thanks for tackling this! 16:34
rba patrickb: github.com/rakudo/rakudo/blob/mast...elines.yml Wow. Good work... 16:38
patrickb It's kind of a monster I have created there. More than one facepalm happened during the process. 16:39
rba patrickb: When I played around with azure build pipelines it took me plenty of time to get things to work properly. 16:41
patrickb I hope it'll be a long time before we do the next switch of CI pipeline. :-) 16:42
rba patrickb: We may adopt this for the star release as well... 16:43
bartolin_ patrickb: do you know if it is possible to tolerate the failures during 'make install' for the JVM backend on Windows for now? For the record: For travis we allow failures for the JVM backend. (Though it might make sense to change that.) 16:59
patrickb bartolin_: I have discussed this a bit with sena_kun. It's not easy to tolerate only some failures. AzureCI is missing a feature there. 17:01
Altai-man_ bartolin_, it is kind of "all or nothing" situation.
patrickb We could just not test that combination. That would be easy.
Altai-man_ bartolin_, is it an absolutely mad wish to have JVM backend build-able? It might be hard to un-bitrot it, but once it's done, it will be much easier to fix it again if something regresses because you have the exact commit and know a single fix is necessary. 17:03
17:03 Altai-man_ is now known as sena_kun
bartolin_ no, no, nothing mad about that ;) It even builds, so I hope it's not too hard to make it installable, too. 17:04
it only makes me a bit uncomfortable to see the failing builds all the time ;) 17:06
sena_kun bartolin_, you mean the builds will faill all the time until JVM backend will be un-bitrotted or there is something more?
bartolin_ timotimo: do you have a commit or issue for "allow decode to push into already existing array"? It looks like the problem only happens on Windows ... 17:07
sena_kun: I was just referring to all those red marks at github.com/rakudo/rakudo/commits/ 17:08
sena_kun: it makes it harder to see other (new) problems 17:09
sena_kun bartolin_, I would not mind them as long as we are moving to the right direction. I mean, we had the same thing for a month or something until niner++ has fixed SEVG on Windows and not a lot of people complained about it.
patrickb sena_kun: How would you approach retiring the other CI backends? My proposal is to give it a week or so time to see whether any other problem come up and then just remove the other CI integrations. 17:10
bartolin_ bartolin_: well, ok :)
sena_kun bartolin_, how much can it take to get it green? In rough terms, of course.
MasterDuke bartolin_: github.com/MoarVM/MoarVM/commit/05...6c82b527de
bartolin_ MasterDuke: thanks 17:11
timotimo | * | | | | 05c290522 - Allow nqp::encode() to take a preallocated buffer (6 weeks ago) <Daniel Green>
linkable6 (2020-03-30) github.com/MoarVM/MoarVM/commit/05c290522d Allow nqp::encode() to take a preallocated buffer
timotimo ah too slow 17:12
MasterDuke if we only have limited resources on any one provider, maybe we can split up the higher level work. e.g., test the build/install on each commit with azure, do coverage reports on a not-quite-as-frequent bases with appveyor, ...
sena_kun patrickb, I suspect enabling them back is just a click or ten, so sounds reasonable. But I would put it into Weekly or something so that more people wouldn't be too surprised. So "posting in a weekly" + a week of time.
MasterDuke *basis 17:13
patrickb MasterDuke: Azure is free without any limits.
17:13 andreoss left
MasterDuke ah 17:13
interesting
patrickb sena_kun: I'd remove the config files from the repo. But it would still just be a revert + some clicks. 17:14
sena_kun patrickb, yeah, not a big deal. Anyway, announce in weekly + a week to wait and can remove them. 17:15
bartolin_ sena_kun: I really don't know. It might be a matter of a few hours. But I can't promise anything, since my time resources for hacking are limited 17:16
sena_kun bartolin_, don't sweat even if it takes a week or something.
Or more. :) 17:17
patrickb .weekly AzureCI was added as a new CI pipeline for Rakudo meant to replace the different CI pipelines we have now. AzureCI tests all build combinations the other CI pipelines tested (plus some more). This will get rid of a good bit of redundant, wasteful testing. We plan to remove support for Travis, AppVeyor and CircleCI soon. 17:25
Is weekly-bot dead? 17:26
sena_kun .note AzureCI was added as a new CI pipeline for Rakudo meant to replace the different CI pipelines we have now. AzureCI tests all build combinations the other CI pipelines tested (plus some more). This will get rid of a good bit of redundant, wasteful testing. We plan to remove support for Travis, AppVeyor and CircleCI soon.
hm
weekly: AzureCI was added as a new CI pipeline for Rakudo meant to replace the different CI pipelines we have now. AzureCI tests all build combinations the other CI pipelines tested (plus some more). This will get rid of a good bit of redundant, wasteful testing. We plan to remove support for Travis, AppVeyor and CircleCI soon. 17:27
notable6 sena_kun, Noted! (weekly)
sena_kun patrickb++ ^
patrickb Thanks :-)
rba patrickb++
17:50 patrickz joined 17:53 patrickb left 18:26 Altai-man_ joined 18:27 lichtkind joined 18:28 sena_kun left
Geth rakudo: 4bdc9d68db | (Elizabeth Mattijsen)++ | src/core.c/Mu.pm6
Further refine so() / not()

Add a candidate for type objects, always returning True / False
18:50
18:57 lichtkind left
Geth rakudo: eab75110c1 | (Elizabeth Mattijsen)++ | src/core.c/Mu.pm6
Revert "Further refine so() / not()"

This reverts commit 4bdc9d68db8e99fa0bd4e1250339aca2c9408a82.
Turns out one can mixin the enum True into a type object, making it true. There was no spectest for this for so(), bit there is one for prefix:<so>. So reverting.
19:14
rakudo: 8a3c36f88e | (Elizabeth Mattijsen)++ | src/core.c/Mu.pm6
Add Bool:U candidates for so() / not()

Normally, I wouldn't add this, but since you can wind up with a Bool type object anytime you have a Bool constraint and you don't assign, it felt like a worthwhile addition.
19:42
rakudo: 5c93ddacb9 | (Elizabeth Mattijsen)++ | src/core.c/Mu.pm6
Prevent a Scalar allocation for each so() not()
20:04
20:26 sena_kun joined
Geth rakudo: cb69cfceeb | (Elizabeth Mattijsen)++ | src/core.c/Mu.pm6
Use hllbool(istrue) for so() and not() in the end

Turns out that *is* the fastest way to get a Bool for an expression. The ternary case appears to call "identity" according to the profile, whereas the hllbool case does not. Although this may be an artefact of the profile, it does show that it is doing more for the ternary case, then it is for the hllbool case.
20:28
20:28 Altai-man_ left
lizmat m: class A { method Bool(--> True) { say "foo" } }; use nqp; dd nqp::istrue(A) # /me is pleasantly surprised 20:34
camelia foo
1
lizmat goes off to think about that some more 20:36
timotimo lizmat: "identity" is what a return type check often turns into, and should in theory be completely tossed out by spesh, but i think a single "set" instruction remains an between prof_enter and prof_exit 20:57
sena_kun "NMAKE : fatal error U1077:" is not cool, but I'm looking at azure builds right now and this looks VERY helpful. 21:13
bartolin_ sena_kun: I've got an idea what might go wrong with the JVM builds for windows. It might be the same problem that caused this workaround: github.com/rakudo/rakudo/commit/e22aeafb50 21:25
r: my $string = q["C:\\\\Users"]; say Rakudo::Internals::JSON.from-json($string)
camelia C:\Users
Invalid JSON: "C:\\Users"
in block <unit> at <tmp> line 1
bartolin_ well, the JVM build that is used by camelia is from 2018-07 ... 21:26
there are more native string arrays in Rakudo::Internals::JSON. Maybe those are causing the trouble. 21:27
bartolin_ added his findings to github.com/rakudo/rakudo/issues/3695 21:48
21:52 ufobat_ joined 21:56 ufobat__ left 22:11 sena_kun left, maggotbrain left 22:18 patrickz left 22:37 maggotbrain joined 22:48 Kaiepi left 22:49 Kaiepi joined