00:10 Geth left 00:11 Geth joined 00:15 lucasb left 00:32 pmurias left 00:54 cognominal joined
japhb lizmat++ 01:03
01:12 dogbert17 left 01:20 cognomin_ joined 01:24 cognominal left 01:51 cognominal joined 01:54 cognomin_ left
tbrowder tyil: sounds good, i'll make sure jmerelo knows 02:44
.tell jmerelo tyil suggests ecosystem improvements as possible GSoC project 02:46
tellable6 tbrowder, I'll pass your message to jmerelo
02:54 Xliff joined 03:00 squashable6 left 03:02 squashable6 joined 03:04 squashable6 left 03:07 squashable6 joined 03:42 Xliff left 03:44 Xliff joined 03:50 Xliff left 05:33 [Coke] left 05:35 [Coke] joined, [Coke] left, [Coke] joined 06:20 squashable6 left 06:21 squashable6 joined 06:44 squashable6 left, squashable6 joined 08:58 ExtraCrispy joined, ExtraCrispy left
|Tux| lizmat, I'm back here 09:27
Rakudo version 2019.11-180-gab99c2dd3 - MoarVM version 2019.07.1-403-g9442b1a7c
csv-parser22.661 - 23.066
csv-test-xs-200.426 - 0.430
test7.337 - 7.426
test-t1.756 - 1.765
test-t --race0.792 - 0.814
test-t-2029.266 - 29.751
test-t-20 --race9.228 - 9.265
09:41
09:41 sena_kun joined
|Tux| lizmat, FWIW trailing/leading whitespace will have no impact on the timings, as that option is off by default 09:42
All xs/inline-perl5 examples now fail 09:43
===SORRY!=== Error while compiling /pro/3gl/CPAN/Text-CSV6/site#sources/3ECC0B3D017463A31ED44AC02473634C96813BB1 (Inline::Perl5::ClassHOW) 10:01
Cannot find method 'original' on object of type NQPAttribute
at /pro/3gl/CPAN/Text-CSV6/site#sources/3ECC0B3D017463A31ED44AC02473634C96813BB1 (Inline::Perl5::ClassHOW):13
anything I need to update/upgrade? 10:02
10:08 ExtraCrispy joined 10:09 AlexDani` joined 10:13 AlexDaniel left
lizmat Files=1292, Tests=109640, 209 wallclock secs (28.20 usr 8.14 sys + 2956.24 cusr 261.84 csys = 3254.42 CPU) 10:38
10:53 sena_kun left 11:08 sena_kun joined 11:15 ZzZombo left
Geth rakudo: 8c3f29278e | (Elizabeth Mattijsen)++ | src/core.c/Range.pm6
Tighten up implementation of Range.int-bounds(from,to)

The return value could be false even if it was possible to extract integer bounds from the Range. Now, it will always return a Bool indicating success or failure.
11:40
11:55 robertle joined 12:33 klapperl left, lucasb joined
Geth rakudo: b9c0196f82 | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Make Str.chomp between 10x and 100x faster

  - 10x if nothing needed to be done
  - 100x if a newline needed to be removed
Based again on the observation that nqp::substr will return self for whole strings, so the whole logic of .chomp could be caught in a single ... (7 more lines)
12:49
tyil nice
12:52 sena_kun left 13:08 sena_kun joined, ExtraCrispy left 13:37 pmurias joined
pmurias vrurg: it seems that copying over 3rdparty jars (and nqp-runtime.jar) to gen/jvm/share/runtime is a thing introduced by the new build system 13:38
vrurg: why do we do it?
vrurg pmurias: because it's staged and stage dirs are in gen. 14:22
gen is also where intermediate things are kept. 14:23
14:47 epony left 14:54 sena_kun left 15:08 sena_kun joined 15:34 epony joined
pmurias vrurg: different stages have the same jars 15:59
anyway all the gen/jvm/share/runtime stuff is broken 16:00
it's copied over when generating the runner rather when the deps change
16:01 robertle left
[Coke] . 16:04
pmurias [Coke]: any thing I need to do with the grant atm? 16:11
16:18 pmurias left 16:19 pmurias joined 16:54 sena_kun left 16:55 ZzZombo joined
vrurg pmurias: As I was saying it before, I don't understand the details of jvm build because I never worked with Java. Maybe you can get the things done the right way? 17:01
17:09 ZzZombo left, dogbert17 joined, ZzZombo joined, sena_kun joined
Geth rakudo: f1963623d1 | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Make Str.chop between 1.8x and 30x faster

  - 1.8x for the empty string
  - 30x for a non-empty string
Based again on the observation that nqp::substr will return self for whole strings, so the whole logic of .chop could be caught in a single nqp::substr.
17:12
17:13 ZzZombo left
[Coke] pmurias: no - makoto should be reaching out 17:20
17:47 entonian joined 17:52 entonian left
Geth rakudo: b569e1120b | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Make Str.chop(N) between 3x and 17x faster

  - 3x if result is empty string
  - 17x if there's something left after chopping
  - also move non Int:D handling to separate candidate
Based again on the observation that nqp::substr will return self for whole strings, so the whole logic of .chop could be caught in a single nqp::substr.
17:58
rakudo: f9e30a029c | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Cosmetic changes to Str.ends-with

To use same variable names and same style as e.g. starts-with. No functinal changes, nor any performance difference.
18:11
rakudo: 276d0967bc | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Make Str.substr-eq between 1.4x and 2.4x faster

  - 2.4x if position in range
  - 1.8x if position beyond end of string
  - 1.4x if negative position
Position beyond end of string is handled by nqp::eqat, and we also don't need an nqp::if because we get a Bool in the end anyway.
18:27
pmurias [Coke]: ok, thanks 18:37
[Tux] nine: Cannot find method 'original' on object of type NQPAttribute 18:48
Geth rakudo: 030ed10d1b | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Make Str.contains a few percent faster

By losing an nqp::if and rely instead on short-circuiting &&
18:51
18:53 sena_kun left
nine [Tux]: looks like a rakudo regression. Can reproduce it here 19:06
19:07 sena_kun joined
nine Of course I cannot just bisect it because Method NQP::Config::configure_misc must be implemented by the language class at /home/nine/rakudo/3rdparty/nqp-configure/lib/NQP/Config.pm line 563. 19:13
How I yearn for the days when the build system just....built
lizmat vrurg ^^^ 19:14
I assume ?
nine I'd bet that it's his changes on roles that cause this 19:17
So I'm not gonna try to narrow it down further 19:18
AlexDani` or you can just avoid building altogether and use Blin 19:19
19:19 AlexDani` is now known as AlexDaniel, AlexDaniel left, AlexDaniel joined
AlexDaniel ./blin.p6 --old=2018.11 --new=HEAD --custom-script=yourscripthere.p6 Inline::Perl5 19:20
it won't bisect into nqp and moar though, so that still needs some doing… :(
Geth rakudo: d5719bbefb | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Make Str.index a few percent faster

  - bind the result of nqp::index
  - make INDEX-OOR a private method
  - rewrite using ternaries for readability
19:21
nine Where do I get blin.p6?
AlexDaniel I believe currently only by cloning github.com/perl6/Blin.git 19:23
github.com/perl6/Blin#installation 19:24
19:24 pmurias left
vrurg nine: I was recently bisecting between 2019.03 (pre-build changes) and the HEAD. No idea what you do to get the error. 19:33
Geth rakudo: 7ecc3e84b0 | (Elizabeth Mattijsen)++ | src/core.c/Str.pm6
Make Str.rindex a few percent faster

  - bind the result of nqp::rindex
  - make RINDEX-OOR a private method
  - rewrite using ternaries for readability
19:34
vrurg With regard to the 'original' – if my changes are the primary suspect then may I see more details and perhaps take an action? 19:38
nine No build for end point in sub MAIN at bin/blin.p6 line 163 19:39
vrurg: nine@sphinx:~/rakudo ((80dfcd057...))> git bisect start 030ed10d1 HEAD
vrurg nine: If `git config submodule.recurse` says `true` then the error in NQP::Config could only happen occasionally for a bad commit. Bisect should just skip it then. 19:41
In my bisection script I skip failing builds with 125 exit code. 19:42
nine why do they fail?
And yes, that's apparently set to true 19:43
19:45 Kaiepi left
vrurg Then it's must just work because for each checkout you get the right submodule version. A failure of that kind might happen if it was just bad commit. 19:45
Say, NQP::Configure::Rakudo requires a change from nqp-configure but corresponding submodule update took place one commit later. It's no good but, unfortunately, happened a couple of times, I think. 19:46
nine vrurg the commit that doesn't build is github.com/rakudo/rakudo/commit/52f1a2f56
How can that break the build so hard that it doesn't even get to +++ Generating gen/moar/perl6.nqp 19:47
19:48 Kaiepi joined
vrurg nine: I think the problem was caused by one of the previous commits, not exactly this one. 19:48
nine Now I had to skip 7 commits to get to one that builds
and another one 19:50
vrurg nine: looks like a strange outcome of a large work of unification of different backends.
nine Why do commits that do not even build land on master? 19:52
vrurg I'm trying to figure this out. The previous statement is seemingly incorrect. 19:53
It's more likely to be about rebasing somehow mangled with things. 19:54
Because I almost never commit in unbuildable state. Only by mistake.
nine Well there are commits on master that do not build. They must have landed there at some point 19:55
lizmat m: use nqp; dd nqp::uc("foo"); dd nqp::tc("foo") # what's the difference between nqp::tc and nqp::uc ?
evalable6 "FOO"
"FOO"
nine The first bad commit could be any of: 19:59
followed by a list of 65 commits
gist.github.com/niner/bcae52b68698...5d6a4688b7
Of course the next question is: why do commits land on master that break spec tests?
vrurg nine: They were buildable. Then they were rebased on top of master and that somehow broke their builds. 20:00
nine vrurg: and then pushed to origin without further testing
The commits have never been tested before pushing and the changes in the commits have never been fully spec tested at all. We really should do better. 20:02
vrurg nine: could you, pls, focus on one thing at a time?
With regards to spectests: when you develop in a branch are all of your commits spectestable? 20:03
nine That's the goal, yes. All tests should pass before and after every commit. 20:04
But at the very very least, the spec tests should pass after a merge, which they do not in this case. 20:05
lizmat FWIW, I 99.99% of the time have spectested any commit that I do
vrurg nine: the merge itself was spectestable. 20:06
nine vrurg: how could it when it breaks Inline::Perl5 completely?
vrurg lizmat: but for the roles work I was doing that's nearly impossible. Or it'd be about transactional megacommits which is no better. 20:07
lizmat vrurg: I hear you
vrurg nine: maybe because it was always failing to install for me. 20:08
nine So you just don't test and hope for the best?
vrurg It's like utf8 test always failing on macos.
nine: I test what's testable on macos.
When possible, I test on a linux VM too. Though must admit – never tried Inline::Perl5 on linux. 20:09
nine So you have never run a full spec test?
vrurg Admittedly not. 20:10
nine Please do 20:12
vrurg No doubt. I didn't try installing Inline::Perl5 for a while, since it was broken for me. Seemingly, things changed and it finally works on previous releases. 20:14
It's something to work with. As to unbuildable commits – I have no idea what the hell is going on there. Every single commit was builded prior to submission. 20:15
How rebase managed to break them – beats me! 20:16
nine That's the thing: the commits you tested are not the commits that are now on master. Rebase does create new commits by applying changes to a different base. 20:18
Btw I'm absolutely for using rebase all the time as it usually does create a development history that's easier to follow and usually easier to bisect as well. It just brings some danger as well. 20:19
vrurg I can do nothing about those now. Looks like I have to change my workflow for the future. Because I work in a fork, I would have to pull from origin in master only and then just merge from there.
*pull from upstream
Anyway, I'm on Inline::Perl5 then. 20:20
AlexDaniel nine: either your --new= is set to something weird, or you're using some other architecture 20:22
I guess both whateverable and blin need some love to make it easily usable to others, on-demand builds is one of the things that needs to be implemented… 20:23
20:25 pmurias joined 20:54 sena_kun left 21:08 sena_kun joined 21:09 patrickb joined
Geth roast: dumarchie++ created pull request #601:
Add regression test for rakudo/issues/3346
21:18
21:35 MasterDuke joined
patrickb .tell El_Che I noticed in our new convention of filenames, that we did not include the rakudo backend. Currently we have "rakudo-2019.11-01-linux-x86_64.tar.gz". That would become "rakudo-moar-2019.11-01-linux-x86_64.tar.gz". Do you have an opinion / tendency on this? 21:50
tellable6 patrickb, I'll pass your message to El_Che
patrickb .tell rba Thank you for your help!
tellable6 patrickb, I'll pass your message to rba
rba patrickb: jw 21:53
patrickb rba: Are the raku servers only meant to be used for core raku projects or is there a possibility to host related projects too? 21:54
tellable6 2019-12-10T22:35:37Z #raku-dev <rba> patrickb I'm very sorry it took soo long. Your branch is now available as stage-rakudo.rakulang.site/
2019-12-10T22:38:26Z #raku-dev <rba> patrickb It's NOT auto-updating from github. I have to do a new pull and a hypnotoad. (And need to make sure port is changed 4242->5242.) You might leave me a msg here and I will ASAP doit. Promise.
2019-12-10T22:45:51Z #raku-dev <rba> patrickb Maybe we need to make some additions as there are more pre-packaged version. E.g. for the BSD world: pkgsrc.se/lang/rakudo
2019-12-10T22:50:55Z #raku-dev <rba> patrickb I like to new layout :-)
hey patrickb, you have a message: gist.github.com/c34081df94bb83d103...ab8539b8ed
rba patrickb: For example? 21:56
patrickb I'm currently building a rakudobrew website.
rba This is raku stuff. So why not. 21:57
patrickb I think it's wise to keep rakudobrew as a separate project, as making it "official" would be unfair towards potential alternatives (e.g. there once was a pl6env project, that seems to have died by now). 21:58
But sharing the hosting is simply a matter of saving on maintainance time and hosting costs.
So I personally would welcome a lax policy of "is it related to raku and makes sense - then we're fine to host it!" 21:59
rba: Is there an nginx configuration that forwards stage-rakudo.rakulang.site/files to github? If yes, that should be removed. (Only for the staging site though) 22:02
rba: 127.0.0.1:4242/latest/star/win is failing, because there are no release files (with a correctly adapted name) present. 22:26
Anyone knows who's the owner of the @rakudoperl twitter account? It's pretty dead. twitter.com/rakudoperl 22:43
[Coke] (run tests on every commit) - we could enforce that by doing commits to master as PRs all the time. 22:44
er, not simply by doing that, but having that be a component.
vrurg nine: unbuildable commits are solved by cherry-picking. That's of some relief, at least. 22:47
22:54 sena_kun left
Geth rakudo/revert-3199-problem-solving-103: 0e97bfe59f | (Vadim Belman)++ (committed using GitHub Web editor) | 37 files
Revert "Re-consider roles application, submethods and phasers semnatics."
22:55
rba patrickb: There is: 22:56
location ~ /files/rakudo$ {
return 302 github.com/rakudo/rakudo/releases;
}
patrickb rba: That it. Can you remove that for staging? 22:57
rba patrickb: removed and reloaded. Try again. 22:58
patrickb Looking better. Thanks!
rba patrickb: Any idea where we should put the bsd packages linked? 22:59
patrickb Not sure yet. It's a difficult decision where to draw the line. We obviously can't include every OS there is. We could add an "Other" category and just dump everything else there. I've also already thought of having raspberry pi packages, but also not sure we should add them... 23:01
rba I think everyone has a platform preference and should be able to find a rakudo release somehow. pkgsrc is the root for many packaging systems for the BSD world so this should be mentioned. 23:05
patrickb AlexDaniel: I'm thinking about improving our rakudo release texts. Several people have wished for a short "only the highlights" text or list. Maybe adding a respective placeholder to github.com/rakudo/rakudo/wiki/ChangeLog-Draft might motivate people to write a few words when they implemented something noteworthy. What's your thoughts on this? 23:06
rba Btw. rakudo.org/files/star vs. stage-rakudo.rakulang.site/files/star - not sure why the rakudo-star-2019.03.dmg could not get found. To you process the route e.g. /dl/star/rakudo-star-2019.03.dmg ? 23:09
vrurg patrickb: looks like the zef install command line for installing Inline::Perl5 is not correct. 23:10
rba And if there are pkgages for raspberry pi, I would love to find them too. We only have to have a look that we not going to server outdated version for platforms packages not get update often. But this a matter of asking the people or just ask them to "at least" create a package when rakudo star gets released, maybe? 23:11
patrickb rba: The reason the files routes don't work for star yet is because the new website expects different file names. Given we decide actually adopt a different naming scheme for star, then we'll have to rename all the past star release files. But the final decision has not happened yet. 23:13
vrurg: Can you give more context? 23:14
rba patrickb: Got it. What I did is just to symlink public_html dir from rakudo.org. That's why we see the difference... 23:15
vrurg It installs the module but it's still unavailable for spectest.
patrickb Ah, you're talking about the spectest notes I added recently.
vrurg patrickb: right. :) 23:16
patrickb rba: Makes sense. 23:17
vrurg patrickb: do I need RAKUDO_HOME pointing at @base_dir@/gen/build_rakudo_home? 23:19
patrickb vrurg: I don't think so. `make test` uses the build dir stuff on it's own already 23:20
vrurg: When you run harness6 or harness5 directly that's not true anymore though
vrurg patrickb: `make spectest` –– no Inline::Perl5. Copy/paste the proposed zef command line, `make spectest` again – no Inline::Perl5 23:21
patrickb vrurg: I'm currently building a rakudo to see for myself.
vrurg: can you test if `make test` works as expected? 23:22
vrurg make test doesn't use Inline::Perl5
So, it runs smoothly.
rba patrickb: Will go to sleep, let me know when you need something from my side.
patrickb it does!
rba: Sleep well. Thanks for your help and input!
vrurg rba: o/ 23:23
rba afk
patrickb I might not have been right. Maybe only spec test has inline:perl5 stuff in it 23:25
vrurg patrickb: It's only spectest.
Anybody with really good git/github knowledge around? 23:30
[Coke] Easier to ask the question than ask if it's a good time to ask 23:43
I know some git(hub)
23:44 MasterDuke left
vrurg Merge of 3199 brought in a bunch of unbuildable commits (a side effect of rebase I wasn't aware of). 23:44
I would like to have them removed completely from the history and be remerged (I have created a new branch via cherry-picking). 23:45
[Coke] what repo?
vrurg rakudo
[Coke] on master?
if it's been pushed to master, there is no good way to remove the commits because you're going to break everyone with a checkout 23:46
vrurg Exactly. What I'm thinking about is branching master, deleting the commits, force-push, test. If everything is ok then rename it to master.
It also feels dangerous, but that's the least problematic path coming into my mind. 23:47
[Coke] Master is not historically "every commit builds" - I wouldn't rewrite history to make this particular example work. 23:48
(it's more like "best effort, thanks")
s/make this particular example work/avoid this particular set of problem commits/
my 2c.
vrurg I'm caring about bisecting. But probably the best would be to just revert the PR and leave those commits alone. 23:49
Then would re-merge with fixed PR. 23:50
[Coke]: Thanks! I knew it's the only way, but hoped I miss something. :)
patrickb .tell nine I'm looking at why `make spectest` doesn't catch Inline::Perl5 anymore - again. I think I narrowed it down to a compile failure in Inline::Perl5 itself: gist.github.com/patrickbkr/cebfc7f...7d261197f6 Does that ring any bell? 23:51
tellable6 patrickb, I'll pass your message to nine
vrurg patrickb: it's the problem I working on right now.
patrickb: though you're probably right and I'm just to tired to link one problem to another. :( 23:52
*too tired
patrickb Oh! So that's the reason then why the Inline::Perl5 tests aren't run. The check in t/harness(5|6) whether Inline::Perl5 is available fails, presumably because of that failure.
vrurg really needs some rest, perhaps... :( 23:53
patrickb .tell nine Never mind.
tellable6 patrickb, I'll pass your message to nine 23:54
Geth rakudo: vrurg++ created pull request #3347:
Revert "Re-consider roles application, submethods and phasers semnatics."
23:56
rakudo: 0e97bfe59f | (Vadim Belman)++ (committed using GitHub Web editor) | 37 files
Revert "Re-consider roles application, submethods and phasers semnatics."
rakudo: 215cd49845 | (Vadim Belman)++ (committed using GitHub Web editor) | 37 files
Merge pull request #3347 from rakudo/revert-3199-problem-solving-103

Revert "Re-consider roles application, submethods and phasers semnatics."