🦋 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 reportable6 left 00:03 reportable6 joined 00:48 Manifest0 left
rf ugexe: I'm kind of having a nightmare installing dependencies with Zef on a slightly slow internet connection, I constantly get Fetching [FAIL]'s is there anyway to retry fetches? 00:50
If I --force-fetch I get an error
01:18 jgaz left, sena_kun left
Anton Antonov @guifa I usually do ($m - $m % $d, $m % $d) . (Not very elegant, but quick enough.) 01:19
guifa Anton: yeah, I guess I should have stated when I mean efficient I meant performant haha.
Anton Antonov @cf Works with camels too say 21.base("camel") : 🐫🐪🐫🐪🐫 . 01:20
guifa btw Anton, I released the Intl::Format::Number, currently handles percentages, permillages, and most all numbers 01:21
I'm working to add in support for significant figures and exponential numbers (the latter requires the former)
Anton Antonov @guifa I noticed! (Liz mentioned it in the rakudoweekly.) I have hard installing those packages without errors on my computer. But once installed, they seem to work fine. 01:22
guifa Anton: if you get any errors, definitely let me know. Probably the issue was the requirement for Intl::CLDR:ver<0.4.2>, I had issues uploading that. I submitted a PR for fez to fix the issue though so now it should be available 01:23
Anton Antonov @guifa Ok, will do. 01:24
@guifa Mathematica has the functions QuotientReminder ( reference.wolfram.com/language/ref...inder.html ) , so I thought (for some reason) that Raku would have a similar function.
cfa i just tried installing Intl::Format::Number and got an error too 01:25
guifa cfa: what's the error?
cfa it's from the User::Language test; i think there's a missing dependency declaration
guifa sometimes has stray extra old modules laying around and it silently borks installs
cfa Could not find Intl::LanguageTag:ver<0.12+>:auth<zef:guifa> in ... 01:26
hmm, but above that: ===> Testing [OK] for Intl::LanguageTag:ver<0.12.2>:auth<zef:guifa>
guifa that's.....weird
cfa anyway, the error is from UserLanguage/lib/User/Language.rakumod
01:27 sena_kun joined
cfa guifa: gist.github.com/cfa/b69d8d7a52beec...43a24a2f57 01:27
guifa huh, I wonder if the issue is that I need to have it be :ver<0.12.2+> 01:28
cfa oh, do you need a test-depends?
Anton Antonov Yes, same here -- errors while installing because " Intl::LanguageTag" cannot be found. (Just tried it.)
I see the same messages as @cfa . 01:29
cfa hmm 01:30
this is odd 01:31
guifa I wonder if during the install/testing it's somehow treating the dependency (left as 0.12.1+) is somehow being treated different from 0.12+, so when it's running things it doesn't realize that they're one and the same 01:32
let me try uploading to fez again 01:33
okay, I just sent a new copy to fez 01:35
set all the dependencies to 0.12.2+ for User::Language
cfa github.com/alabamenhu/UserLanguage...6.json#L11 01:37
this reads auth:<zef:guifa>
rather than auth<zef:guifa> 01:38
guifa wooooow
I knew it'd be a stupid typo somewhere
cfa not sure whether that's the cause but seems a good candidate
guifa I just uploaded a new new version with that typo fixed :-)
ugexe rf: force fetch just continues to the next step if fetching fails, which almost always won’t work 01:48
I dunno why a slow connection would matter though
maybe try —fetch-timeout=6000 if it’s a timeout issue 01:49
rf I have satellite internet, for some reason on packages with a large number of deps (Cro stuff typically), it blows up with fetch errors and I have to try 50+ times until its installed
ugexe Yeah but it’s just calling curl, which I imagine works fine manually 01:51
oh actually 01:52
rf Yeah, not sure why its breaking.
ugexe try --fetch-degree=1
i forgot that defaults to 5
if that works you can set an env var to change the default -- github.com/ugexe/zef/blob/5345b918...kumod#L124 01:53
rf I'll test it out thanks!
Seems to have worked thanks a lot! 02:01
What does fetch-degree do?
Voldenet if you use satellite internet, consider vpn over tcp
it's laggy as hell, but reliable
rf I use a VPN for work, but not personally. My internet isn't too bad just cuts out every 3-4 hours for a few seconds 02:02
02:02 rf left 02:04 rf joined
ugexe :degree is how many downlads at once 02:16
like: @things-to-download.hyper(:degree($this), :batch(1))
rf Cool 02:17
cfa guifa: well this is odd, 02:28
$ zef info User::Language
===> Searching for: User::Language
- Info for: User::Language
- Identity: User::Language:ver<0.5.1>:auth<zef:guifa>:api<1>
- Recommended By: Zef::Repository::Ecosystems<fez>
- Installed: No 02:29
Description: A simple module for obtaining the user’s preferred language(s)
License: Artistic-2.0
Source-url: git://github.com/alabamenhu/UserLanguage.git
Provides: 5 modules
Depends: 0 items
zef thinks there are zero dependencies
guifa I wonder if me reuploading didn't actually change anything and I actually need to version bump 02:35
cfa yeah maybe
looks like i'm still getting the auth:<zef:guifa> dep
even after an update 02:36
guifa Let me try that
one sec
cfa sure
guifa alright just uploaded it through fez, shows one dependency now 02:37
cfa ack, i'm seeing deps now 02:38
huzzah, installed User::Language 02:39
now for Intl::Format::Number
all tests passed, installed without error \o/ 02:42
Geth doc/main: ef6037ec82 | thundergnat++ (committed using GitHub Web editor) | doc/Language/unicode.pod6
Change supported Unicode version (#4210)

It's kind-of dependent on the VM it's running on though.
02:44
doc/main: 6c4b51a78d | (Tom Browder)++ (committed using GitHub Web editor) | 3 files
Replace the 'Opener graphemes' table with 'Brackets' (#4207)

  * Replace the 'Opener graphemes' table with 'Brackets'
The original table was incomplete in that it didn't show the closing bracket for each opener.
... (9 more lines)
Anton Antonov @guifa I can install "Intl::CLDR" without errors. I get errors trying to install "Intl::Format::Number". I get "Error while importing from 'experimental': no such tag 'rakuast'" 02:50
guifa aaaah you need to update Rakudo then, as your version doesn't have rakuast support (I think that begins with 2022.12)
guifa will add more information to the readme
Anton Antonov @guifa Well, my version is "moar-2022.12"... 02:51
guifa If you're getting the message `no such tag rakuast` on experimental, then it's just an older version. You maybe have one that's like a few days before the big merge happened 02:53
Anton Antonov Ok, I will experiment with that some other time.
03:04 evalable6 left 03:06 evalable6 joined 03:31 PipStuart left 03:34 Sgeo left 03:38 Sgeo joined 03:44 razetime joined 03:47 pingu joined 03:56 razetime left 03:57 cfa left
rf Goodnight folks 03:59
03:59 rf left 04:13 bigdata joined 04:40 razetime joined 04:42 bigdata left 04:57 jpn joined 04:59 pingu left 05:02 jpn left 05:10 razetime1 joined 05:11 razetime left, razetime1 is now known as razetime 05:49 razetime1 joined 05:50 razetime left, razetime1 is now known as razetime 06:00 reportable6 left 06:03 reportable6 joined 06:33 freeside left 07:09 freeside joined 07:50 freeside left 08:01 Sgeo left 08:07 razetime left 08:17 eseyman joined 08:30 razetime joined 09:02 Manifest0 joined 09:20 razetime1 joined 09:21 razetime left, razetime1 is now known as razetime 09:24 razetime1 joined 09:25 razetime left, razetime1 is now known as razetime 09:29 razetime1 joined 09:30 razetime left, razetime1 is now known as razetime 09:34 razetime1 joined, razetime left, razetime1 is now known as razetime 09:38 razetime1 joined 09:39 razetime left 09:40 jpn joined 09:41 razetime joined 09:42 razetime1 left 10:25 freeside joined 10:30 freeside left 10:39 sena_kun left 11:03 jpn left 11:05 freeside joined 11:06 ab5tract joined 11:07 jpn joined 11:09 freeside left 11:15 jpn left
El_Che weekly: rakudo-pkg for 2023.02 11:19
notable6 El_Che, Noted! (weekly)
11:20 jpn joined
lizmat $ raku --version 11:29
Welcome to Rakudo™ v2023.02.
whee! 11:30
El_Che lizmat: had to ping cloudsmith to had new repo for new released distros :) 11:32
every. single. time. :)
lizmat El_Che++ 11:33
12:00 reportable6 left 12:01 reportable6 joined 12:05 perlbot left 12:06 simcop2387 left 12:12 simcop2387 joined 12:14 perlbot joined
Anton Antonov If I have a proto regex with multiple syms can I define an action method that is invoked (used, corresponds) to all syms of that regex? 12:21
12:41 grondilu joined
Nemokosch have you checked the docs? if anything must be written down, it's this 12:43
Anton Antonov I did -- that particular question is not answered there. 12:44
At this point I simply assume the answer is "no."
12:51 freeside joined 12:56 freeside left 13:01 freeside joined 13:04 PipStuart joined 13:06 freeside left 13:08 freeside joined
Nemokosch yep, looks like that 13:08
13:11 jpn left 13:12 freeside left
[Coke] Anton - as someone who works on the docs, having a list of missing things will definitely help us fix things eventually - we have a small number of authors and basically zero editors; so we can probably get someone to write up a known missing thing but not review a document for what's missing 13:19
bot people, maybe an "ENODOC" chat function that threw a note somewhere for the docs people to track. 13:20
I would have expected, btw, that you can only have one proto with a given name. 13:21
Since I thought protos were also defining minimum required signatures, as well as function bodies.
Nemokosch gist.github.com/2colours/0b6f46113...62ff79787e 13:25
a simple extension of the doc example - the supposed proto method does nothing 13:26
[Coke] ah. protos at the method level, do those work with the name:thing syntax? 13:27
(as opposed to the proto in the rule, which does)
13:28 freeside joined
Nemokosch aaaand that's exactly the question 13:29
the (modified) example didn't work, that much I can tell
13:33 freeside left 13:39 jpn joined 13:48 jpn left
grondilu Hello. Can someone help me deciphering the following arabic sentence : 'u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F' ? How would I decode that in raku? 13:55
tellable6 2023-02-21T14:16:02Z #raku <melezhik> grondilu you can use Spa to upload modules via fez , here is an example code - raku.land/zef:melezhik/SparrowCI-SandBox
lizmat s:g/+u/\\x/ ? 13:58
sourceable6 lizmat, No idea, boss. Can you give me a Code object? Output: gist.github.com/59d64d5dd820393697...5e67e15d2f
lizmat s:g/+u/\\x/ ?
13:58 jpn joined
grondilu m: say "u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F".words.join.subst: 'u+', '\\x' 14:00
camelia \x0644u+064Au+0647u+0645u+0627u+0628u+062Au+0643u+0644u+0645u+0648u+0634u+0639u+0631u+0628u+064Au+061F
grondilu m: say "u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F".words.join.subst: 'u+', '\\x', :g
camelia \x0644\x064A\x0647\x0645\x0627\x0628\x062A\x0643\x0644\x0645\x0648\x0634\x0639\x0631\x0628\x064A\x061F
grondilu m: say "u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F".words.join.subst: 'u+', '\x', :g
camelia \x0644\x064A\x0647\x0645\x0627\x0628\x062A\x0643\x0644\x0645\x0648\x0634\x0639\x0631\x0628\x064A\x061F
lizmat m: say "\x0644\x064A\x0647\x0645\x0627\x0628\x062A\x0643\x0644\x0645\x0648\x0634\x0639\x0631\x0628\x064A\x061F: 14:01
camelia ===SORRY!=== Error while compiling <tmp>
Unable to parse expression in double quotes; couldn't find final '"' (corresponding starter was at line 1)
at <tmp>:1
------> 3648\x0634\x0639\x0631\x0628\x064A\x061F:⏏<EOL>
expecting…
lizmat m: say "\x0644\x064A\x0647\x0645\x0627\x0628\x062A\x0643\x0644\x0645\x0648\x0634\x0639\x0631\x0628\x064A\x061F"
camelia ليهمابتكلموشعربي؟
grondilu Nice. But how to do that without copy-pasting?
if you see what I mean
14:01 rf joined
lizmat m: say "u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F".words.map(*.substr(2).chr).join 14:02
camelia Cannot convert string to number: trailing characters after number in '3064⏏A' (indicated by ⏏)
in block <unit> at <tmp> line 1
lizmat m: say "u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F".words.map(*.substr(2).Int.chr).join
camelia Cannot convert string to number: trailing characters after number in '3064⏏A' (indicated by ⏏)
in block <unit> at <tmp> line 1
grondilu m: say "u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F".words.join.subst('u+', '\x', :g).comb(..).map(*.parse-base(16))
camelia ===SORRY!=== Error while compiling <tmp>
Please use ..* for indefinite range
at <tmp>:1
------> words.join.subst('u+', '\x', :g).comb(..⏏).map(*.parse-base(16))
grondilu m: say "u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F".words.join.subst('u+', '\x', :g).comb(/../).map(*.parse-base(16)) 14:03
camelia Cannot convert string to number: malformed base-16 number in '⏏\\x' (indicated by ⏏)
in block <unit> at <tmp> line 1
lizmat m: say "u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F".words.map(*.substr(2).base(16).chr).join
camelia No such method 'base' for invocant of type 'Str'. Did you mean any of
these: 'AST', 'Bag', 'Date', 'Hash', 'are', 'asec', 'hash', 'take'?
in block <unit> at <tmp> line 1
rf Morning folks
lizmat m: say "u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F".words.map(*.substr(2).parse-base(16).chr).join
camelia ليهمابتكلموشعربي؟
lizmat whee
grondilu thanks 14:04
14:05 jpn left
Nemokosch m: 'u+0644 u+064A u+0647 u+0645 u+0627 u+0628 u+062A u+0643 u+0644 u+0645 u+0648 u+0634 u+0639 u+0631 u+0628 u+064A u+061F'.comb(/ 'u+' <( . ** 4 )> /)>>.parse-base(16)>>.chr.join.say 14:05
Raku eval ليهمابتكلموشعربي؟
Nemokosch hmmm
oh okay, the font is different 14:06
grondilu I see them identical
rf Font is client side
Nemokosch yes and no but anyway, it is the same 14:07
grondilu I didn't know chr could be used beyond ASCII. 14:08
lizmat yes... it basically should be called .grapheme I guess 14:09
and .ord should be called .codepoint :)
14:12 sarna left, razetime left 14:17 sarna joined 14:19 jpn joined
Anton Antonov @Coke Thank you for your explanations! 14:22
14:24 cfa joined
cfa 👋 14:24
Anton Antonov Thanks for making the example! 14:25
14:25 derpydoo joined 14:28 freeside joined
Nemokosch 🤠 14:29
14:29 jgaz joined
[Coke] ... bitten by HOME vs. HOMEDIR - git bash gives me HOME, but of course he doesn't have that. :) 14:30
rf Ooof 14:32
Windows moment?
Anton Antonov @rf Seems like "roof" moment to me.
rf Lol. 14:33
14:34 freeside left 14:42 m6502 joined, m6502 left 14:44 jgaz left 14:47 jgaz joined 15:18 TieUpYourCamel joined 15:56 Sgeo joined 16:00 freeside joined 16:04 freeside left 16:40 freeside joined 16:45 freeside left 17:01 freeside joined 17:02 ab5tract left 17:06 freeside left 18:00 reportable6 left 18:03 reportable6 joined 18:07 sena_kun joined 18:09 jpn left 18:21 jpn joined 18:34 Altai-man joined 18:38 sena_kun left
Geth doc/main: 6e7b449a59 | (Richard Hainsworth)++ (committed using GitHub Web editor) | doc/Language/101-basics.pod6
remove TM char for consistency (#4205)

This addresses issue #119 in doc-website
18:50
18:52 freeside joined 18:53 derpydoo left 18:56 freeside left
shmup cfa: the only change i made in that script was removing some unnecessary flow control, but you have little reason to update :) you can if you want 19:17
github.com/shmup/irssi-scripts/blo...renamer.pl 19:20
Geth ¦ doc: coke assigned to finanalyst Issue Can't install raku/doc deps github.com/Raku/doc/issues/4211 19:28
doc/main: 7 commits pushed by (Will Coleda)++ 19:36
19:42 grondilu left 19:44 codesections joined
cfa shmup: okay, can try that -- thanks 19:47
do i unload then reload? (i still haven't set up the auto stuff)
19:50 derpydoo joined
cfa shmup: github.com/shmup/irssi-scripts/blo...mer.pl#L36 19:50
20:07 codesections left
shmup what's up cfa, unsure what you're asking with that line hehe 20:13
cfa when you replace the script, you could /unload script-name and /load script-name. i forget. i'd do that
cfa shmup: the line ends with `$targe` 20:15
shmup ahhhHHhhHHHH
okay pushed, bumped version. /script shows you what's loaded which can be nice to verify after you unload. i wish it showed the version though :) 20:16
thanks cfa i have no excuse for that besides nvr let me be in charge of code reviews ;)
cfa ha ha
oh, github.com/shmup/irssi-scripts/blo...mer.pl#L30 20:19
i didn't spot that before
20:19 freeside joined
shmup what the hell happened 20:24
yeah i mean i see that i did that but i do not understand how. this is embarrassing haha 20:25
i force pushed.. not gonna keep making 1 commit per 1 dumb moment haha
20:26 codesections joined, codesections left, freeside left
shmup all of that happened in the last commit or so i guess. guess i'm gonna write a pre-commit hook ;) 20:27
20:29 vrurg left, codesections joined
shmup cfa: lmk if you notice anything else!! :) 20:30
20:30 vrurg joined
Geth ¦ doc: coke self-assigned Update links-not-links.t to not use pod-to-html github.com/Raku/doc/issues/4213 20:30
20:41 jpn left
cfa shmup: (re)loaded 20:46
hmm 20:51
zef is installing an older version (0.2.2) of GTK::Simple -- i believe because this is the most recent in the zef ecosystem, even though a newer version (0.2.4) was published by lizmat to the REA 20:54
will zef always prefer the most recent in its own ecosystem before considering REA?
zef is installing GTK::Simple:ver<0.2.2>:auth<zef:finanalyst> 20:55
20:59 jpn joined
[Coke] what's your command line to the installer? 21:02
if it's some other thing, you have to check if this is pinned at a specific version as a prereq to some other module
21:03 freeside joined 21:04 jpn left 21:05 codesections left 21:10 freeside left 21:13 freeside joined 21:16 bigdata joined, jpn joined 21:19 freeside left 21:26 jpn left 21:32 jpn joined 21:52 derpydoo left 21:56 jpn left
cfa [Coke]: zef install GTK::Simple, zef look GTK::Simple, zef info GTK::Simple 22:00
(after zef update)
so, not a declared dependency -- a direct install 22:01
i'll try uninstalling then reinstalling shortly (i'm between meetings right now)
lizmat fwiw, uploads to the REA are automated
22:05 squashable6 left
cfa can anyone here try: $ zef --update info GTK::Simple | grep Identity 22:07
and let me know what it reports?
22:08 squashable6 joined
guifa - Identity: GTK::Simple:ver<0.2.4>:auth<zef:finanalyst> 22:09
ugexe yes, with the default config zef will prefer distributions in fez 22:10
otherwise you could do `zef install GTK::Simple:ver<0.2.4>` and it'll have to look at REA to find it 22:11
22:11 jpn joined
cfa and if i uninstall GTK::Simple, would it install 0.2.2 again? 22:12
guifa's result suggests not
(uninstall, then reinstall that is)
ugexe I see Identity: GTK::Simple:ver<0.2.2>:auth<zef:finanalyst>
just do `zef install GTK::Simple:ver<0.2.4>` 22:13
or `zef info "zef install GTK::Simple:ver<0.2.4>"` to see its info
er, `zef info "GTK::Simple:ver<0.2.4>"` 22:14
22:15 jpn left 22:18 jpn joined 22:23 jpn left 22:24 Altai-man left 22:35 jpn joined 22:37 freeside joined
cfa sure 22:39
but the installation of 0.2.2 instead of 0.2.4 when the version number wasn't supplied is what surprised me 22:40
(i'm unclear on whether the issue was local state in my repository or something else)
22:41 freeside left
cfa i think it's my repo 22:42
hmm 22:43
22:44 jpn left
cfa GTK::Simple is uninstalled but after an update, info is still reporting 0.2.2 22:44
ugexe yes, that is correct 22:45
that is the version on fez, and "...with the default config zef will prefer distributions in fez"
cfa ah okay, i didn't realise that was confirmed -- thanks
and guifa is seeing 0.2.4 because that's been separately installed with a version number? 22:46
ugexe: sorry, i'd overlooked your reply
ugexe we won't know without the 'Recommended By:' line
i imagine they already had fetched or installed it at some point 22:47
cfa and an older version of zef might find and install 0.2.4 when invoked with `zef install GTK::Simple` because it wouldn't be checking fez (first), right? 22:49
ugexe yeah, although it would have to be like a year or so old
cfa yeah this is rakudo from debian with whatever version of zef that was 22:50
and ideally, GTK::Simple 0.2.4 should be deployed to fez 22:52
22:53 jmcgnh left
ugexe Oct 2021 is when it was changed 22:54
v0.13.0 22:55
cfa aha; on that debian box it's v0.9.4
and i've manually installed 0.2.4 on this box fwiw 22:56
22:56 jpn joined
ugexe a zef that old is still good for one thing: installing a newer version of zef 22:56
cfa :)
22:58 jgaz left 23:02 jpn left 23:12 jmcgnh joined
rf And just like that, another Humming-Bird version is released github.com/rawleyfowler/Humming-Bi.../tag/2.0.2 23:16
23:22 jpn joined
rf How would I run some code on module import time 23:22
23:22 codesections joined
guifa I forget exactly when the code gets run for modules declared with module Foo { class foo is export {…} }, but if you use sub EXPORT() I believe all the code in there runs for each import statement 23:26
rf Cool, thanks!
23:26 jpn left
rf Nice that worked like a charm. 23:28
guifa (that can definitely be a good thing or a gotcha, depending haha) 23:30
rf I want to export a dynamic variable at import time is my goal 23:32
Not sure if this is working as good as I thought it would... 23:33
23:40 jpn joined
guifa Ah I think I remember trying that, can't remember if I managed to pull it off 23:47
23:49 jpn left