🦋 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.
XliffMac \o 02:35
guifa o/ 11:02
Nemokosch suppers 11:07
how do y'all feel about establishing an editor/tooling workgroup, on similar terms to the documentation? 11:12
this has been bugging me for a while and this time I actually started messing with the quasi-abandoned highlighter
lizmat by all means, go for it :-) 11:13
Nemokosch btw never trust people who say "just run this script and you are done" 11:15
either they say what the script achieves, or no deal, lol 11:16
replace.sh be like
p=1 in AWK means like, "print the current line" while p=0 is "don't print the current line", right? 11:23
lizmat skipped over awk/sed and went straight to Perl in the early 90s 11:25
tea3po same 11:26
Nemokosch yes tbh I had the same thing in mind and if there is some quick text mashing I usually rather try to do it in Perl... but somebody (maybe Samantha) didn't have the same background/mindset 11:27
github.com/Raku/atom-language-perl...ace.sh#L12 11:28
but the hypothesis makes sense at least, no? 😄
this reads to me like "skip everything between the markers, print a while instead"
file* xD
shockingly, since CSON is whitespace-sensitive, the fetched files need to be aware where they will be included, otherwise the indentation won't be right 11:30
but it seems to me that they actually come with the right amount of whitespace 11:31
tbrowder__ good news for module authors. i changed a windows.yml test to use rakudo version 2022.07 and the test now passes.
Nemokosch I think this was also kind of known 11:32
tbrowder__ yes, but ugexe and others say otherwise. look at the repo and issues for TAP module. apparently it's not consistent. i just changed to 2022.07 for windows tests fo about 10 modules and i'm waiting for github results. first 3 are now green 12:13
and, sure enough, not all are fixed--definitely a problem somewhere 12:17
must be aliens 12:18
extraterrestial, that is
tbrowder__ arg, false alarm, TAP on windows not reliable at all 12:42
tea3po what's TAP 12:43
nvm, I knew that 12:47
nvm, I knew that 12:48
Nemokosch sadly, TAP established itself mainly as a source of problems 13:25
ugexe its just windows + precompilation 13:41
TAP just happens to be one of the more ubiquitous modules and hence it seemingly shows up for it more 13:42
same thing happens with zef though
Nemokosch and module installation, and obfuscating test results...
ugexe zef isnt' noticible for everyone cause it comes already installed on the github containers i believe 13:43
Nemokosch usually it's enough to mess things up once in a while for people to remember - like when a TAP bug made all module tests fail for a short period of time. When you want colleagues to install your stuff and the current situation is like "well, um, it's broken at the moment, use this workaround", that's awkward the least to say 13:49
it's not just Raku's test harness, though. Spectesting can also yield completely clueless errors and that uses Perl 5 stuff iirc
so for me it's a combination of too many and too visible breakdowns overall, and the mere idea of a "test harness" being a big fat WAT 13:50
thowe I don't know what TAP is. 15:32
lizmat Test Anything Protocol 15:48
moritz it's the format in which Perl and Raku tests output test success and failure, and which test harnesses parse to determine if the tests passed 17:06
Nemokosch A note on dogfooding that didn't really appear to me earlier 18:33
it's not just that you get to experience your technology and invest into it - this part seemed kind of obvious
but by using the very things you are aiming to develop, you actually minimize outer dependencies and lower the entry point of the project in most cases 18:34
Anton Antonov @Nemokosch I consider the latter to be a consequence of the former. 19:27
Nemokosch Hm, I wouldn't say so, or at least they are not the same aspect of dogfooding 19:37
the former is related to the "do use ..." part while the latter is related to the "preferably do not use ..." part 19:38
jacob_c A few days ago I commented on here that I was having trouble with SDL2::Raw. I figured out my problem! What's uploaded on raku.land isn't the exact same as what's currently in the GitHub repo. I was trying to run the particles_surface example (which I also somehow got confused with the particles example), which uses functions that weren't exposed 20:06
in the module that's available in raku.land. And the reason I was able to get it working when I copy pasted  it into a foo.pm6 file in my local directory is because I copied the code from GitHub directly, which gave me the newest code that matched the example I was using.
guifa Ah yeah, that would make sense potentially 20:10
SDL2::Raw is from CPAN and we've almost entirely moved away from that ecosystem. No doubt when timo updated things on github he didn't think to push it into the new ecosystem 20:11
jacob_c Ohh. Yeah, it got me wondering what the convention is. When people update their module on GitHub do they immediately push the changes to the package manager ecosystem? Or is there typically some lag? And if lag exists, is there an easy way to browse the examples in raku.land itself to help prevent you from accidentally confusing what's uploaded to 20:16
jacob_c what's bleeding edge on GitHub? 20:16
Or maybe it's just one of those situations that doesn't come up that often? Really the thing that caught me off guard was trying to use the example, and not knowing any better just pulling the latest from GitHub. 20:18
Nemokosch This is a social problem, not a matter of technology... 20:26
jacob_c Well the technology could help. Essentially what we have is a snapshot in time of a particular module uploaded for package managers to use, and if anything user facing, such as documentation or examples can be saved in that snapshot and accessible, then it makes it less likely to get tripped up because you won't be cross referencing GitHub which 20:37
could have bleeding edge changes that are incompatible. But that's why I was curious about the typical convention for how closely what's available to users should follow the latest on GitHub. It might be rare to find those kinds of discrepancies in real life that often.
Nemokosch I think this could be summarized as "tell the authors to actually publish their modules" 20:43
which I agree with
jacob_c That's certainly fair. I guess as another example, in raku.land (or maybe some other module browser) if I wanted to use an older version of a module for some reason, would there be an easy way to browse the docs for that specific version? Or would I have to search for that moment in time in GitHub? Or maybe find where the source gets installed on 20:45
my computer and look through manually. (It took me a while to actually find where zef installed the source for this thing.) Anyway, just thinking out loud.
jacob_c Ah, looking at raku.land I saw this issue. gitlab.com/raku-land/raku-land/-/issues/44 So it appears there is some sort of doc viewing method in raku.land. 20:50
jacob_c Or I guess I should say, adding more functionality around module documentation is on their radar. 20:54
tbrowder__ jacob_c: i may write a blog post about that. i am very opinionated regarding best practices for creating and publishing Raku modules. 22:46
jacob_c Oh neat! I would definitely be interested in reading that. 22:47