🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). This channel is logged for the purpose of keeping a history about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | Log inspection is getting closer to beta. If you're a beginner, you can also check out the #raku-beginner channel!
Set by lizmat on 25 August 2021.
p6steve 1 12:40
2
lizmat 3 12:45
patrickb Altai-man: Is it possible to somehow explicitly exclude a heading from inclusion into the index? Maybe `=head1 X<The Task example|>`? 12:50
p6steve lizmat: wrong! course.raku.org/essentials/conditi...fizz-buzz/ 12:51
lizmat :-) 12:53
Geth ecosystem: 0eff270ba1 | (Elizabeth Mattijsen)++ | META.list
Remove IO::Path::ChildSecure from git ecosystem

It lives in the zef ecosystem now
13:39
patrickb lizmat: Should WebService::GitHub also be removed from p6c? It now also lives in the zef eco, but the API has changed considerably. 13:42
lizmat well, I assume you have bumped the version? 13:43
patrickb I did.
lizmat how long ago did you upload to zef ?
patrickb Yesterday. But did another release (only added a readme, no code changes) a few minutes ago. 13:44
lizmat with a version bump again, right?
patrickb yesterdays upload is 17 h ago according to raku.land.
lizmat yeah... that should be long enough 13:45
patrickb Yes, with a version bump. ;-) Is it even possible to reupload a version that already lives in zef?
lizmat nope, it isn't :=_
:-)
Geth ecosystem: 1191f3d81d | (Elizabeth Mattijsen)++ | META.list
Remove WebService::Github

it lives in the zef ecosystem now
13:46
patrickb Thanks!
lizmat you're welcome!
Altai-man patrickb, I believe headers are not indexed unless they start with number of keywords like `routine`, `method`, 'infix' etc, no? 13:51
patrickb Altai-man: I have been working on github.com/Raku/doc/pull/4047 13:52
Altai-man yup 13:53
patrickb Specifically introducion of a "The Task example" header was a problem. In the discussion the index was the problem. I always presumed we talked about the search index... 13:54
Altai-man patrickb, I believe you want to explain problem A to me rather than problem B. :)
patrickb github.com/Raku/doc/pull/3794#disc...r571381038 13:55
Thus I was searching for a way to still have that heading (which I think makes a lot of sense) but have it excluded from the index.
Altai-man patrickb, hmm, interesting. Well, there are a couple of points: 1)it has nothing to do with the _search_ index; 2)on the page there are HTML anchors (id=...) we navigate to/from TOC and also from external URLs. So I think the concerning thing there is that the anchor is renamed which in theory breaks external URLs pointing to it. 13:56
patrickb But maybe I misunderstood JJs comment entirely. 13:56
Altai-man I agree, I am not sure I interpreted his words right, but I can point out what's "wrong" with it from my perspective. 13:57
patrickb Altai-man: I removed and renamed loads of anchors. I thought that was a "nothing we can do about it, versions could fix the problem in the future" thing.
OK. I think I now know what I need to know to ask the right questions. Thanks! 13:58
Altai-man patrickb, well, not a lot of things can be done other than "nothing we can do about it, versions could fix the problem in the future", yes. 13:59
in fact we need to get versions support ASAP, as introducing it starts the process of normalizing the versioned URLs and gradual deprecation of the current layout. 14:00
patrickb To be honest, I don't think it's a big problem. People rarely link to specific anchors from outside the docs. If they do, at least the link to the page itself still works. 14:01
Altai-man patrickb, I think we need some sort of statistics to claim that "rarely link to specific anchors", I find it rather common when you need to point to a specific part of the page instead of pointing to a huge document. 14:03
And it's not only about page anchors, but also general changes to the docs.
Introducing new pages, large re-works of existing ones. 14:04
p6steve I deep link raku doc quite a lot in my docs and code comments and SO ;-( 14:05
patrickb Altai-man: I agree. Versions are very good to have when the docs are constantly changing (as ours still do).
patrickb o/ melezhik 14:39
melezhik patrickb I've run WebService-GitHub on SparkyCI and have similar error as you have on GH actions - sparrowhub.io:2222/report/214 16:29
[bash: install deps] :: Type check failed for return value; expected IO::Path but got Any (Any) -  means there is no META6.json file in the root of the project 16:30
is it intentionally ? I wonder how then this has ever worked?
and according the build history - github.com/raku-community-modules/...ub/actions it has never done ... 16:31
I guess META6.json for the project lies on here - github.com/raku-community-modules/...META6.json , right? 16:32
so the CI would be "zef install --deps-only . in dev-scripts/" right? 16:33
patrickb hi! 16:43
Ah
Stupid me.
The module needs to be generated first. 16:44
cat dev-scripts/README.md
OK now I'm unsure if this module is a good fit for automated testing at all.
The `generate-modules` script can take quite some time to run. 16:45
melezhik I can think about customization of SparkyCI build command, so that user can replace default one ( which is just zef install --deps-only . && zef test . ) by any custom command like in this case , however it's quite rare case, huh? 16:48
patrickb I guess so. 16:55
How are cases where binaries need to be compiled currently handled? 16:56
does `zef test .` trigger these build steps?
[Coke] given a list like <a b y e d g h>, how can I sort but pull item out to the front, e.g. with 'g': <g a b d e h y> 17:05
I am trying to construct a sort algorithm that isn't crazy 17:06
[Coke] (worst case I'll grep it out and construct the list with the single item plus the sorted remainder 17:08
patrickb I'm away for a bit...
melezhik .tell patrickb in WebService-GitHub  why do you download Rakudo binaries at all? do you test the module against specific Rakudo versions? 17:12
tellable6 melezhik, I'll pass your message to patrickb
[Coke] japhb: ended up re-writing my api crawler to try "download everything" and split it into smaller and smaller chunks until one chunk says "fine, you can have all *that* data". iterate until done 17:19
SmokeMachine m: sub sort-wanted-before(@arr, $wanted) { [|.<wanted>, |.<rest>.sort] given @arr.classify: { $_ eq $wanted ?? "wanted" !! "rest" } }; say sort-wanted-before <a b y e d g h>, "g" 17:29
camelia [g a b d e h y]
tellable6 2022-04-21T21:53:19Z #raku <melezhik> SmokeMachine - thanks
SmokeMachine [Coke]: something like that? ^^ 17:30
[Coke] SmokeMachine: yah, was hoping for something less verbose; can definitely throw something in a sub and hide it there, though. Thanks! 17:38
patrickb melezhik: That code wasn't written by me. I have just taken over the repo yesterday. 18:07
tellable6 2022-04-22T17:12:10Z #raku <melezhik> patrickb in WebService-GitHub  why do you download Rakudo binaries at all? do you test the module against specific Rakudo versions?
patrickb melezhik: I think the idea was to not recompile rakudo on every test, but use the rakudo downloads instead. 18:08
melezhik: I haven't dug deeper yet though.
patrickb melezhik: Another module (in progress, not yet in the ecosystem) which is interesting in how to test is Devel::ExecRunnerGenerator (git.sr.ht/~patrickb/Devel-ExecRunnerGenerator). 18:11
patrickb That module requires two binaries to be compiled. But those binaries are packaged into the module when released, so they are not compiled when installing the module, but when releasing the module. 18:15
El_Che building ubuntu 22.04 packages atm 19:13
jdv for what now? the april release didnt happen yet. 19:21
drakonis patrickb: ooooh nice. 19:22
El_Che jdv: 2022.03 with zef update 19:23
melezhik_ . 19:24
El_Che but the idea is to add ubuntu 22.04 packages as people will start upgrading
melezhik_: ..
jdv you pkg zef? i thought that was star only.
drakonis zef is also available on debian 19:25
and thus propagated to ubuntu
El_Che jdv: rakudo-pkg == rakudo + root zef + script to install zef as a user
jdv huh
melezhik_ @patrickb: I mean why to download rakudo binaries at all? Why not to use preinstalled rakudo which is already in docker image? Unless of course one needs to test against a specific version of rakudo ... 19:26
El_Che drakonis: yes, when the version on the OS suffices, that is certainly the better choice. rakudo-pkg is handy if you always want/need the latest release or if the version on your OS is ancient
melezhik_ El_Che: )))....
El_Che melezhik_: that looks like lisp
drakonis its not presently propagated to 22.04 because it made into debian late march 19:27
so after the freeze
melezhik_ El_Che: what do you mean ?
El_Che melezhik_: the overdose parentheses 19:28
jdv nail clippings
drakonis ubuntu's got 2022.02 19:29
El_Che that's excellend 19:30
drakonis we're at 2022.03 and soon at 2022.04
not ideal
El_Che 2020.04 has 2020.12
many people will stick sometime with that LTS 19:31
drakonis 22.04 is the current LTS
jdv a lotvof distros had ?have? years old pkgs
drakonis so the issue will simply repeat itself
El_Che I know
El_Che I am upgrading my machines ATM 19:31
jdv a few months is insignificant and amazing
El_Che but not everyone is as crazy as me (or us) :)
drakonis some distros carry old packages because of no maintainers, others are simply due to the large lifecycle
melezhik_ patrickb: the link you gave me leads to 404 error 19:32
El_Che ubuntu 20.04 is supported until 2025 for support (2030 maerked as EOL) 19:33
drakonis jeeze that's a long cycle
patrickb melezhik_: which one
?
melezhik_ Dev generator
On source hut
El_Che I am upgrading my private stuff, work containers need to be tested before jumping :)
patrickb git.sr.ht/~patrickb/Devel-ExecRunnerGenerator 19:34
melezhik_ Works now, thanks
SparkyCI bows only supports GH authentication, maybe need to add source hut as well to allow people add their repos from source as well ... or maybe I need to add a text input allowing just add any valid git url , without trying to fetch repositories from accounts 19:36
I don't what is better ... flexibility or control in that case ...
bows -> now 19:37
patrickb the quick solution is allowing any git url. I'd value having that option.
melezhik_ Yeah , I am leaning to that as well
patrickb In the long run it'd be nice to have support for the big platforms to also report the progress back. 19:38
drakonis what's the status on the work to allow rakudo to output binaries?
static binaries and such?
patrickb drakonis: What were you stoked about earlier?
melezhik_ Btw I guess in case of the source hut people don't have GH action available, so SparkyCI with it's pull approach could a reasonable solution for source hut users )))
drakonis a thing for doing something similar to that? 19:39
devel-execrunnergenerator that is
patrickb drakonis: I think the work on self contained rakudo is currently stalled.
ah
drakonis it seems like it might be helpful for that but not quite what i want
patrickb Yes. It doesn't package anything, though. It's quite literally a wrapper around C exec(). 19:40
patrickb So the idea is to distribute a folder with your project in it and include a binary generated by that tool which calls rakudo passing the script name, env vars and forwards cmd line args. 19:41
drakonis its not particularly optimal for sending a file over the wire to another machine to execute it there 19:42
since it still requires installing rakudo
but it is an option 19:44
its the approach used by tools like nix/guix/consfigurator/propellor for executing code on the other side
melezhik switched to my "melezhik" account, he-he ))) 19:45
have both laptop and phone connected to channel 19:46
El_Che what about parenthesis ?  😀 19:47
patrickb drakonis: I guess it's a good tool for typical "end user deployment" cases. Rakudo can be compiled in a relocatable manner. The binaries on rakudo.org are compiled as such. So it is possible to use such a rakudo as a base and then add your raku program to it.
drakonis melezhik: get a bouncer so you don't miss out on discussion :v
that'd be quite useful 19:48
i have to ask though, how do i ensure that the dependencies are included?
drakonis the appropriate libraries 19:49
drakonis basically, making sure that nothing needs to be installed on the other side to run the code 19:50
melezhik patrickb what is a typical CI senario `Devel-ExecRunnerGenerator` ? 19:53
so what else beside `zef install --deps-only . && zef test .` is required ?
what do you want to see else for the module CI?
I don't quite grasp this logic by just looking at the source, I see there akefile here that does some job, should it be triggered during CI as well? 19:54
[Coke] wonders if there's a way to install deps in a local folder so you can easily nuke the test bed when done.
melezhik Coke: github.com/melezhik/Sparrow6/blob/...in.pm6#L38 19:56
melezhik   `--to=path` is that what you're looking for? 19:58
[Coke] ^^
patrickb melezhik: `ake deploy-runner echo-args` should build the required executables needed for testing. 20:07
tellable6 patrickb, I'll pass your message to melezhik
patrickb It builds the runner executable under test and the testing helper.
when that successfully finishes a `prove6 -I. xt` should work 20:08
(It's rather WIP at the moment, but works on my local linux machine.)
El_Che weekly: new rakudo-pkg for freshly released Ubuntu 22.04 21:14
notable6 El_Che, Noted! (weekly)
melezhik . 21:49
tellable6 2022-04-22T20:07:08Z #raku <patrickb> melezhik: `ake deploy-runner echo-args` should build the required executables needed for testing.
patrickb melezhik: I have pushed some more progress to Devel::ExecRunnerGenerator. Now a `ake test-setup deploy-runner` is the incantation to use. 23:14
tellable6 patrickb, I'll pass your message to melezhik