00:07 ecocode___ joined 00:17 itaipu left 00:28 topnep_ left 00:29 topnep joined 00:58 itaipu joined 01:04 kylese left, hulk joined 01:44 kjp left, itaipu left 01:47 itaipu joined 01:53 erry left, erry joined 01:57 kjp joined 02:02 kylese joined 02:03 hulk left
disbot8 <cultoftheglenda> @ugexe When I say $?DISTRIBUTION.meta It prints out my META6.json; however, the version field is missing and the ver field is "*". Is this expected? 02:11
02:15 kylese left, kylese joined 02:20 topnep left 02:27 ecocode___ left
ugexe read my last comment 02:59
04:29 GreaseMonkey left 04:30 greaser|q joined 04:52 PotatoGim left 04:53 PotatoGim joined 05:04 Aedil joined 05:11 greaser|q left 05:46 librasteve_ joined 06:09 greaser|q joined 06:30 apac joined 06:33 Sgeo left 06:34 greaser|q left 06:40 greaser|q joined 06:49 greaser|q left 06:51 greaser|q joined 07:28 lichtkind joined 07:37 greaser|q left 07:39 greaser|q joined 07:47 dano left, dano joined 07:51 greaser|q left 07:53 dakkar joined 07:56 greaser|q joined 08:03 greaser|q left 08:07 greaser|q joined 09:11 greaser|q left, greaser|q joined, greaser|q is now known as GreaseMonkey 09:49 kaskal left 09:50 kaskal joined 09:55 Aedil left 09:59 Aedil joined 10:29 xinming left, xinming joined
tbrowder librasteve_: good job, but i didn't understand the cartoon thhing about grammars. i tried sound but nada 10:36
[Coke] i understand and agree. my use case is very simple and controlled, i was conflating another error and misunderstanding it--all is fine now 10:39
11:00 broquaint joined
disbot8 <librasteve> tbrowder: thanks! you mean this cartoon ... imgur.com/EP3ZuYh ... as mentioned, Anton is the author of this "comment" about raku ... I can discern that there's a racoon sitting on a python reading incantations from the Grammars and Regexes magic book ... my guess is that this is some reference to some topical cartoon / games characters among the yoof 12:35
<cultoftheglenda> @ugexe I think I am not understanding something -I sounds like compiler flags. Where do I pass in. I think I pass it in as a flag when starting rakudo but I am still getting a star for version. 13:13
Voldenet -I defines include directory for lib, so you can run modules without installing them, e.g. `raku -I lib -M Thing -e 'code'` 13:21
tbrowder yoof as in yutes (youths)? 13:24
😁
disbot8 <jubilatious1_98524> @tbrowder Maybe this will help (hint: I usually use Text::CSV): unix.stackexchange.com/search?q=us...ank+fields 13:38
13:51 apac left
disbot8 <antononcube> @tbrowder "Raku programming is better than Python programming." That's the message of that movie. 🙂 14:09
<antononcube> I mentioned last week here that that movie summarizes my conversations with Python programmers. 14:10
<antononcube> See the overwhelmed expression of the python. The movie is just in anime style, no particular character reference. 14:12
<vendethiel> m: use experimental :macros; macro infix:«|>»($v, $f) { quasi { ({{{$f}}})({{{$v}}}); } }; say 1 |> (* + 1); 14:21
<Raku eval> 2 WARNINGS for /home/glot/main.raku: Useless use of "+" in expression "* + 1" in sink context (line 1) Useless use of constant integer 1 in sink context (line 1)
<vendethiel> Hm…
14:23 nicole left, nicole joined
disbot8 <vendethiel> I guess they’re not WANTED 14:23
tbrowder antononcube is there a reliable link to yr video—i would love to see it 14:26
disbot8 <cultoftheglenda> Still a little bit lost. Just checking again to see if anyone can answer my question. I appreciate the help I have received so far. I am interested in getting the version of the current package. I have a method in a .rakumod file that returns the following reference: $?DISTRIBUTION.meta<ver>. This evaluates to "" rather than what I would expect "2.5.0" which is defined in the META6.json file. What meaning does "" have 14:31
here? Following up on the rest of the conversations. In the meta object I see the rest of the fields such as includes and metaVersion but ver is just set to * while version is just missing. I can see most of the values being pulled in from my META6.json so its finding that but version is not set to what I am expecting.
tbrowder ugexe can explain 14:35
ugexe cultoftheglenda: in your .rakumod file before the call to $?DISTRIBUTION.meta<...> put `say $*REPO.repo-chain`, re-run your code, and copy the result of that new line into a gist to share here
disbot8 <cultoftheglenda> @ugexe (file#/home/glenda/git/shade/raku-lib inst#/home/glenda/.raku inst#/opt/rakudo/share/perl6/site inst#/opt/rakudo/share/perl6/vendor inst#/opt/rakudo/share/perl6/core ap# nqp# perl5#) 14:45
14:45 librasteve_ left
[Coke] distribution only works in a module 14:49
... and ugexe is already here, oops 14:50
disbot8 <cultoftheglenda> I am calling it in a .rakumod file that's part of a project that has a META6.json is that considered a module? No? I really don't know. So I have a bin directory with shell scripts; I am on unix and use magic numbers to call them bin/script-name that script includes the rakumod which has the call to the above version code. 14:55
[Coke] you can't use distribution in a bin script, from that script, include the rakumod, and use distribution there? 14:57
disbot8 <cultoftheglenda> That is what I am doing. I am including the .rakumod in the bin script. 14:58
tbrowder i know ugexe has a magic incantation to do that… 15:05
my 2 cents, i assume you have installed it as a normal user. root installations are a nightmare 15:08
to be erased and forgotten 15:09
15:24 leont joined 15:36 apac joined 15:37 SmokeMachine joined 16:05 melezhik joined
Voldenet I use root installation (prefixed with /opt/rakudo) and it works well for me 16:07
though a lot of binaries and modules I install as user
[Coke] to be clear, how are you including it?
simple 'use' with no 'use lib' ? 16:08
16:13 jgaz joined 16:14 apac left 16:15 jgaz left 16:17 jgaz joined
disbot8 <cultoftheglenda> @[Coke] Something like this. Shade-CLI is my module in question. use lib 'raku-lib'; use Shade-CLI; 16:24
[Coke] can you link to the repo? 16:29
doesn't look like it's on raku-land
github.com/realityforge/shade-cli ? 16:30
oops, wrong lang
have you tried running the script with 'raku -I. bin/foo' ? 16:32
the -I. will force it to use the META6.json declarations.
(at which point the 'use raku-lib' shouldn't be necessary)
dakkar gist.github.com/dakkar/f03af0442da...646582c6f6 this seems to work (replace the `_` in the file names with `/`) 16:33
[Coke] dakkar - please try without the use lib and using raku -I. 16:34
dakkar that also works
[Coke] (or RAKULIB=. bin/foo)
dakkar but since (I think) cultoftheglenda wanted an executable file that could be run without explicitly mentioning rakudo, I thought that `use lib` was the least-terrible way to do that 16:36
[Coke] is the goal to install this script with zef?
16:36 kjp left
[Coke] or run it as a one off? 16:36
dakkar I guessed the latter
if the former, I agree there's no need for the `use lib` 16:37
[Coke] I wouldn't expect distribution to work properly if you're not installing it.
dakkar I may have guessed wrong
16:38 kjp joined
[Coke] hopefully that working example will help, though! 16:41
16:45 dakkar left 17:05 nort joined 17:12 apac joined
ugexe yeah the `file#/home/glenda/git/shade/raku-lib` suggest it is doing -Ilib / `use lib 'lib', and instead it should be doing -I. or `use lib '.'`. Note, as it has already been pointed out, that if you plan to distribute your distribution you should not include `use lib` *at all* in your code and instead rely on either 1) it being installed already or 2) the user supplying the -I. / RAKULIB=. themselves 17:36
otherwise when someone installs your distribution (negating the need for the `use lib '.'`) it will continue adding that include path which can cause recompilation among other things. there is also the security issue that the path `.` depends on what directory the user is in when they run your installed binary (which probalby isn't the repository root at that point) 17:37
18:15 melezhik left 18:31 thaewrapt joined, thaewrapt left, thaewrapt joined 18:50 gfldex left 18:51 gfldex joined
tbrowder btw, my 2 cents was for a debian multi user system. after some problems with root installs for me i do not recommend it. too many other things are more important. my choice is to prepare a list of modules i favor and auto install for new user accounts in their own $HOME dir 19:02
disbot8 <cultoftheglenda> Anyways thanks guys. I got it working well enough for my purposes. I just had to remove use lib 'raku-lib' from that one file and replace it with use lib "file#{$*PROGRAM.parent.parent}"; Don't quite understand why that satiates the thing, nor why ver was undefined without it (it found the rest of my meta file). Also, thanks for all the work you guys do on rakudo/moarvm etc. 19:15
19:18 melezhik joined 19:20 CultOfTheGlenda joined
ugexe it didn't find your meta file before 19:21
it was inferring what the metadata might be based on file structure 19:22
it cannot infer a version, hence you were not seeing one
or rather you were seeing the * / whatever version
CultOfTheGlenda Escaping the bridge. 19:24
What I find interesting was I was still seeing all my resources declared in the resources array in the `META6.json`
ugexe yeah, if i had written the original code from scratch it probably would not infer those or anything that isn't a direct child of the provided directory / lib/ 19:26
19:27 stanrifkin joined
ugexe raku -e 'say CompUnit::Repository::FileSystem.new(prefix => "$*CWD").distribution.meta' 19:30
raku -e 'say CompUnit::Repository::FileSystem.new(prefix => "$*CWD/lib").distribution.meta'
you can run those to see the different between the actual META6.json based distribution, and the one that has to infer
19:34 nort left
CultOfTheGlenda Cool, thanks for explaining it. Its confusing and I agree with your conclusion on not inferring indirect children. 19:39
19:43 Aedil left 19:55 CultOfTheGlenda left 20:13 librasteve_ joined 20:25 BooK left, BooK joined 20:39 apac left 20:40 apac joined 21:20 nort joined 21:58 lichtkind left 22:07 melezhik left 22:18 stanrifkin left 22:46 nort left 22:53 tejr left 22:56 Sgeo joined 22:59 tejr joined 23:15 abraxxa left 23:32 abraxxa joined