🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). Log available at irclogs.raku.org/raku/live.html . If you're a beginner, you can also check out the #raku-beginner channel! Set by lizmat on 6 September 2022. |
|||
00:00
jpn left
|
|||
tbrowder | hi, is there a way to check github workflows files on one's on PC (at least for the appropriate OS)? | 00:18 | |
00:18
lichtkind left
|
|||
tbrowder | s/on/own/ | 00:18 | |
timo | you're looking for something like "are there obvious errors in the file"? | ||
tbrowder | not exactly. i'm getting failures on github for regular raku tests on my local linux box where they work fine. issues with missing deps are easy to see and fix, but others leave me pretty clueless. i've looked at detailed debug logs and sometimes that really helps, but not always. | 00:23 | |
and the debug loggs a | |||
*logs are really long | |||
timo | grondilu, first thought from looking at a profile, using "fail" may be costing surprisingly much. it creates a Backtrace for every failure object and Backtrace.new takes 350ms out of the 7,598ms total | 00:25 | |
ah yes, debugging CI stuff is a difficult and arduous process in general i'm afraid | 00:26 | ||
i don't know if there is a runner that can run a github actions thing on your own PC | |||
tbrowder | thnx | 00:34 | |
00:51
jpn joined
00:56
jpn left
01:11
hulk joined
01:12
kylese left
01:13
oodani left
01:17
oodani joined
02:15
hulk left,
kylese joined
02:40
jpn joined
02:45
jpn left
|
|||
Geth | docker: 9687c88020 | AntonOks++ | 4 files Bump to 2025.04 [skip workflow] |
03:13 | |
03:20
stanrifkin_ joined
03:23
stanrifkin left
03:32
vrurg left
03:44
oodani left,
vrurg joined
03:53
oodani joined
04:18
jpn joined
04:23
jpn left,
discord-raku-bot left,
discord-raku-bot joined
04:30
kylese left
04:32
kylese joined
04:37
thowe left
04:48
thowe joined
05:09
thowe left
05:30
kylese left,
kylese joined
05:44
thowe joined
05:46
eseyman left
05:50
manu_ joined,
manu_ is now known as eseyman
05:55
jpn joined
06:00
jpn left
|
|||
grondilu | timo: but it's not normally running though. I don't think I have that many "try" statements. | 06:29 | |
grondilu checks | 06:32 | ||
actually I use quite a few to check that a square index is still on the board | 06:33 | ||
06:38
wayland joined
06:42
wayland76 joined,
wayland left
06:51
jpn joined
06:56
jpn left
|
|||
grondilu | timo: you were right I could gain some perf by removing those try statements. | 06:57 | |
07:02
jpn joined
|
|||
wayland76 | Does anyone know of a way of testing what the resources are for a module? I have a module where I thought I'd specified everything in the config, but it's suddenly not working. | 07:05 | |
grondilu | isn't META6.json the sole authority to specify resources? | 07:07 | |
07:07
jpn left
|
|||
wayland76 | Yep, but it doesn't seem to be picking it up. | 07:08 | |
The fact that it's in docker may not be helping. | |||
07:12
jpn joined
07:16
stanrifkin_ left
07:17
Aedil joined
07:23
Sgeo_ left
07:26
jpn left
|
|||
coranila | m: mutli infix:<+>(Int $a, $b) { } # LTA | 07:35 | |
evalable6 | (exit code 1) ===SORRY!=== Error while compilin… | ||
Raku eval | Exit code: 1 ===SORRY!=== Error while compiling /home/glot/main.raku Unable to parse expression in argument list; couldn't find final ')' (corresponding starter was at line 1) at /home/glot/main.raku:1 ------> mutli infix:<+>(Int⏏ $a, $b) { } # LTA expecting any of: infix infix stopper | ||
evalable6 | coranila, Full output: gist.github.com/d68b6edfd54a5d87b9...4d5c63e753 | ||
coranila | that's a rakudo issue I think? for clarity: mutli apparently doesn't get caught as a typo | 07:36 | |
wayland76 | It's at the least a less-than-awesome error message. | 07:41 | |
coranila | right; but getting the parse failure in the signature seems to imply the parser is also failing in the wrong way? | 07:44 | |
as in, we shouldn't be expecting a signature if we don't have a proper routine decl, no? | |||
wayland76 | Is it expecting a Signature though? Or is it expecting an argument list for another reason? It could be thinking that, rather than a function declaration, this is instead a function call. | 07:46 | |
coranila | m: mutli ($x, $y) { ... } # expecting TTIA.. | 07:47 | |
evalable6 | (exit code 1) ===SORRY!=== Error while compilin… | ||
Raku eval | Exit code: 1 ===SORRY!=== Error while compiling /home/glot/main.raku Variable '$x' is not declared. Perhaps you forgot a 'sub' if this was intended to be part of a signature? at /home/glot/main.raku:1 ------> mutli (⏏$x, $y) { ... } # expecting TTIA.. | ||
evalable6 | coranila, Full output: gist.github.com/6467eae15928943082...1c3c81d8e4 | ||
coranila | m: mutli ($, $) { .. } # actual TTIA...? | 07:48 | |
Raku eval | Exit code: 1 ===SORRY!=== Error while compiling /home/glot/main.raku Unexpected block in infix position (missing statement control word before the expression?) at /home/glot/main.raku:1 ------> mutli ($, $)⏏ { .. } # actual TTIA...? expecting any of: infix infix stopper postfix | ||
evalable6 | (exit code 1) ===SORRY!=== Error while compilin… | ||
coranila, Full output: gist.github.com/24966a258cb07b8417...0b2b921ea8 | |||
wayland76 | m: my ($a); my $b; protocho infix:<+>($a, $b) { } | 07:49 | |
camelia | ===SORRY!=== Error while compiling <tmp> Unexpected block in infix position (missing statement control word before the expression?) at <tmp>:1 ------> ($a); my $b; protocho infix:<+>($a, $b)<HERE> { } expecting any of: infix … |
||
coranila | well, it seems we agree that it's not particularly transparent what exactly is going on :) | ||
wayland76 | Yes. I found that if I removed the "Int" from your original example, it started complaining about $a and $b being not declared. | 07:50 | |
So I still think it's trying to call infix:<+> as a function | |||
coranila | oh, it gets funnier: | ||
m: mutli ($, $) | 07:51 | ||
evalable6 | (exit code 1) ===SORRY!=== Error while compiling /tmp/8cj03c3Hof Undeclared routine: mutli used at line 1 |
||
Raku eval | Exit code: 1 ===SORRY!=== Error while compiling /home/glot/main.raku Undeclared routine: mutli used at line 1 | ||
coranila | m: q[mutli ($, $)].AST.say | ||
Raku eval | Exit code: 1 ===SORRY!=== Error while compiling Undeclared routine: mutli used at line -1. Did you mean ''? | ||
evalable6 | (exit code 1) ===SORRY!=== Error while compiling EVAL_0 Undeclared routine: mutli used at line 1 |
||
grondilu | what if someone actually wants to make a mutli sub, though? | 07:52 | |
coranila | m: sub mutli {}; mutli foo ($, $) {...} # hmm | ||
Raku eval | Exit code: 1 ===SORRY!=== Error while compiling /home/glot/main.raku Unexpected block in infix position (missing statement control word before the expression?) at /home/glot/main.raku:1 ------> sub mutli {}; mutli foo ($, $)⏏ {...} # hmm expecting any of: infix infix stopper postfix | ||
evalable6 | (exit code 1) ===SORRY!=== Error while compilin… | ||
coranila, Full output: gist.github.com/edd5a8548d45b39396...ccbfa8065b | |||
wayland76 | Not sure if grondilu is joking, but that'd be sub mutli(...) {...} | ||
coranila | well, I don't know! thanks for the feedback :) | ||
wayland76 | You're welcome :) | 07:53 | |
coranila | locally i get Routine 'mutli' is not declared. Did you mean 'mutli '? btw which is definitely funny | ||
wayland76 | Does anyone know how %?RESOURCES gets populated? Because I'm trying to use it in my tests, and I'm wondering if it's somehow not getting populated at all. Or if there's a way to test it? | 07:54 | |
Oh, interesting! Maybe a version difference then. | |||
coranila | most likely; I'm on 2025.03 via rakubrew! | 07:56 | |
08:13
dakkar joined
08:37
melezhik joined
08:38
lichtkind joined
|
|||
melezhik | o/ | 08:41 | |
i wonder if someone besides @sergot could look at io::socket::ssl licensing issue? github.com/sergot/io-socket-ssl/issues/26 I would really appreciate that, as me and Alpine linux guys are trying to create apk packages for my Sparky module | 08:43 | ||
and this license issue blocks the proccess ) | 08:46 | ||
08:49
donaldh joined
|
|||
lizmat | melezhik: maybe it's time we moved that module to raku-community-modules, and give it an MIT license there ? | 08:52 | |
melezhik | yeah, maybe I need to clarify if MIT license will work for alpine maintainers ... but that's good idea imho | 08:55 | |
08:56
melezhik left
|
|||
lizmat | well, check with the alpine maintainers if MIT would be ok ( I think it would, as it's the most permissive ) | 08:56 | |
melezhik. | lizmat: yep, just did | 09:03 | |
lizmat | and it's acceptable to them? | 09:06 | |
09:25
jpn joined
09:38
MoC joined
|
|||
melezhik. | Looks like that , asked them to follow up to the gh issue | 10:07 | |
They require a license to be in file in the repo so that an alpine Linux matter would pick it up and make it a part of apk archive , that’s an official alpine Linux requirement for packages | 10:09 | ||
And by the way as a part of Spraky support they are packaging the latest version of Rakudo to be available in the bleed edge of Alpine | 10:10 | ||
And eventually to be released for Alpine 3.22 | 10:11 | ||
And also this is quite interesting - “think Alpine 3.22 will also be the first version with a MoarVM that uses mimalloc.” | 10:12 | ||
Any possible implications of this ? Just wonder … | |||
dakkar | my gentoo has moarvm 2025.01 compiled with `--has-mimalloc` | 10:24 | |
since 2024.10, actually | |||
10:30
melezhik joined,
melezhik left
10:46
derpydoo left
11:44
jpn left
11:45
jpn joined
11:50
jpn left
12:21
jpn joined
12:31
jpn left
12:37
jpn joined
12:42
jpn left
12:45
jpn joined
12:50
melezhik joined
|
|||
melezhik | lizmat: can we move io socket ssl to the communtity repo and add licence file ? | 12:50 | |
github.com/sergot/io-socket-ssl/issues/26 | |||
lizmat | we can fork it, and add a license file | 12:51 | |
melezhik | good | 12:52 | |
anything I need to do from this point or you could reply to the gh issue? | 12:53 | ||
lizmat | well, in a little while, you would need to adapt the dependency spec to IO::Socket::SSL perhaps | ||
Geth | ecosystem: 2b81172aae | (Elizabeth Mattijsen)++ | META.list Remove sergots distributions that have been archived |
12:55 | |
12:55
jpn left
|
|||
lizmat | I guess we will need to move OpenSSL as well | 12:55 | |
12:55
melezhik left
12:56
melezhik joined,
jpn joined
|
|||
lizmat | hmmm... maybe ugexe has rights on the IO::Socket::SSL repo | 12:56 | |
I'll make a PR | |||
melezhik | thanks a lot | 12:57 | |
where should I adjust dependency - here? github.com/melezhik/sparky-job-api...6.json#L11 | |||
lizmat | if the dependency is like that, you don't have to | 12:58 | |
melezhik | ah, ok | ||
good then | |||
lizmat | github.com/sergot/io-socket-ssl/pull/27 | 13:06 | |
now, if ugexe could merge that, we'd be in business | |||
13:18
melezhik left
13:58
apac joined
|
|||
lizmat | .tell melezhik: IO::Socket::SSL has a LICENSE file | 14:33 | |
tellable6 | lizmat, I'll pass your message to melezhik | ||
15:09
nine left
15:10
nine joined
15:14
Sgeo joined
15:20
lichtkind left
|
|||
sergot | hi all, just noticed someone is talking about IO::Socket::SSL and others, I can move them under the community modules, would that help? | 15:22 | |
hi lizmat <waves> I'd love to get back to maintaining the useragent/ssl modules actively in the future, but in the meantime I believe I can move them under the community repos? how do I do that? | 15:24 | ||
15:25
jpn left
|
|||
should I simply 'transfer' the repos to raku-community-modules? 😉 | 15:29 | ||
15:31
sergot joined
15:32
jpn joined
15:33
sergot left,
sergot joined
|
|||
antononcube | @sergot I think it is a matter of authorization. The transfer can be done by the people who are maintainers of this repository: github.com/raku-community-modules . | 15:44 | |
15:57
sergot left
15:58
jpn left
16:06
apac left
16:15
sorenson left
16:17
sorenson joined
16:34
dakkar left
|
|||
melezhik. | lizmat: after you’ve added the license file , should a new version be released to fez or alpine guys can just package from the main branch in git ? | 16:41 | |
tellable6 | 2025-04-24T14:33:50Z #raku <lizmat> melezhik: IO::Socket::SSL has a LICENSE file | ||
lizmat | melezhik: I also bumped the version, it's now raku.land/github:sergot/IO::Socket::SSL 0.0.4 | 17:27 | |
will check with sergot if they want to move to zef ecosystem (which I can now do for them) | 17:28 | ||
timo | grondilu: do you have a rough estimation of how the perf improves from that? | 18:24 | |
18:29
abraxxa-home joined
|
|||
lizmat | sergot you should be able to transfer your modules to raku-community-modules now | 18:40 | |
18:56
wayland joined,
wayland76 left
|
|||
melezhik. | .tell lizmat: thanks 🙏 for all your help | 19:21 | |
tellable6 | melezhik., I'll pass your message to lizmat | ||
19:56
MoC left
19:57
MoC joined
19:59
MoC left
21:09
abraxxa-home left
22:18
tejr left
22:42
tejr joined
|
|||
wayland | .tell tbrowder: This is why I've wrapped my github tests in a docker container, so that I can run the container on local when debugging these problems. | 23:02 | |
tellable6 | wayland, I'll pass your message to tbrowder | ||
wayland | Should I expect $?DISTRIBUTION and %?RESOURCES to be available in my tests? Does the module need to be installed, or will it run on my local? Do I need to declare something first (such as "unit module"), or should it just work? | 23:07 | |
ugexe | the documentation says | 23:10 | |
The %?RESOURCES variable is only accessible inside of modules. If you want to access %?RESOURCES outside of a module, you'll need to expose that API yourself. One way to do that is to create a routine in the lib directory to return its value: | |||
your tests are not modules | 23:11 | ||
wayland | Oh! So I make a method on my class that returns a filehandle to the resource? | ||
ugexe | or you can make a method that just return $?DISTRIBUTION or %?RESOURCES | 23:12 | |
wayland | OK, thanks, that helps with that then. | ||
And then, what's used to determine whether I'm "Inside a module"? Does it absolutely require a "unit module" statement, or is it enough to be in a class? | 23:13 | ||
ugexe | if its in a .rakumod file | 23:14 | |
anything that would be listed in `provides` of META6.json | |||
wayland | OK, that works for me :) | 23:15 | |
Thanks! |