Fire is step THREE! | github.com/perl6/toolchain-bikeshed | Channel logs: irclog.perlgeek.de/perl6-toolchain/today | useful prior art: metacpan.org/pod/CPAN::Meta::Spec
Set by moderator on 15 May 2017.
00:31 lizmat_ joined
ugexe nine ranguard: modules uploaded to cpan are installable by zef using the --cpan flag (or just setting enabled : 1 in the config for cpan) 00:56
github.com/ugexe/Perl6-ecosystems/.../cpan.json is the index regenerated every 30 or so minutes. 00:59
using that cpan rsync command nine posted 01:00
[Coke]: I'm betting most of that time is in 1) doing an auto-update of the ecosystem list and 2) parsing json for 800+ or whatever distributions 01:13
I'm too tired to figure out which one it is exactly, but if its the auto-update that is easy enough to fix 01:14
relevant code is github.com/ugexe/zef/blob/master/l...ms.pm6#L30 (and also #L18) 01:15
however - remember that not all sources of modules will give you an entire list. Consider `zef --metacpan --/p6c --/cpan --/cached install Foo::Bar` 01:16
metacpan would be the only source of modules, and those must be queried for (instead of parsing out of a big list)
so such a feature would just need to make sure its fine when a recommendation manager doesn't give it what it wants 01:19
ranguard: may not want to shut it off just yet. its still helpful to have a bunch of modules available through cpan for my testing (without you there is... 3?) 01:21
but again... thanks to your work zef was able to be ready for all this cpan stuff as soon as authors could use it normally 01:23
01:49 ilbot3 joined
moderator Fire is step THREE! | github.com/perl6/toolchain-bikeshed | Channel logs: irclog.perlgeek.de/perl6-toolchain/today | useful prior art: metacpan.org/pod/CPAN::Meta::Spec
05:42 domidumont joined 05:51 domidumont joined 07:43 domidumont joined 07:46 domidumont1 joined
ranguard ugexe: nine: it's easy to leave running, just don't want authors relying on it instead of doing it correctly themselves... balancing act :) 08:05
could zef also default to using cpan and have flags for other sources? 08:06
ugexe ranguard: yep, and it can default to enabling everything as well so that dependencies from modules fetched from cpan can be fulfilled by the p6 ecosystem if they aren't on cpan 13:27
i want to get the zef reporter branch merged in before i upload zef to cpan, and I plan on making cpan the default when I do that 13:29
so probably this weekend
ranguard ugexe++ 13:41
nine Excellent :) 13:43
ranguard FYI backpan.metacpan.org exists (actually same as cpan.metacpan.org but with a name that tells you it's a backpan) 13:44
all served via Fastly CDN (which is the same as www.cpan.org but that's not a backpan AFAIK) 13:45
nine Aaaaaaaaand that ^^^ is where we should get the cpan.json file hosted
ranguard nine: ideally PAUSE would generate is and add is as one of it's index files - so everyone gets it - but I don't know the details of how any of that works 13:46
ugexe true, we are still screwed if github goes down (unless the user already has a copy of the index) 13:47
ranguard I guess P6 won't have a concept of permissions (as anyone can upload what ever they like) ?
ranguard still doesn't like the AUTH thing, but then that's just me 13:48
ugexe ranguard: thats probably something for next year. cpan *could* permission things by look at the `"auth" : "github:ugexe"` field. So for instance: cpan could refuse to index anything that isn't `cpan:VERIFIABLE-ID`
nine Ooooh, that may have been the reason for auth being somehow tied to the content storage.
ugexe but as a dumb storage it could still "store" it 13:49
alternatively, and especially so with the mojo pause work I think I heard about, it could use oauth with known sources (e.g. github) to verify identities 13:50
tl;dr - 1) accept everything 2) only index modules with auths you can verify 13:51
at the very least: if someone uploads something with `"auth" : "cpan:$whatever"` it should be rejected unless it really is that author uploading it 13:53
nine At some point (and that's probably sooner rather than later) we're gonna need authentication for uploads. With the manually maintained ecosystem list, we've had that. With everybody being able to upload to CPAN, wo don't have it anymore.
ugexe you have to be logged in to pause to upload i thought 13:54
nine To upload to your own directory, yes. But in that directory you can upload whatever (meta data) you want
Well and what Andreas won't delete soon after :)
ugexe right, but that should be ok 13:55
indexing is the "recommendation manager" part of this 13:56
as content storage it doesn't matter what they upload
nine True. Our index can still refuse to index an :auth<cpan:whatever> that doesn't match the directory
ugexe yeah. and if cpan ever generates such an index it could then act as the deciding authority there 13:57
nine OAuth in PAUSE would be tricky. The webinterface only allows uploading into an INCOMING directory. The pause daemon is what extracts the META info from the tar ball and moves both into the author's directory.
ranguard ugexe: I could clone github.com/ugexe/Perl6-ecosystems/ and then host it on p6eco.metacpan.org if you liked 14:01
ugexe ranguard: thats a good start for sure
ranguard though you should move the repo to a GH org and give more people access to it - and include the code to build it :)
ugexe this is some of the shittiest code i've ever written though lol 14:02
ranguard ugexe: I don't care :) - if you won't publish it, then no one should use cpan.json :)
JFDI++ 14:03
ugexe github.com/ugexe/Perl6-App--ecogen (it does exists though) still need to push the latest changes I made from tps however 14:04
ranguard good good :)
I'll get some time Sat PM to do this 14:05
doh, perl6 - was going to suggest I run it, but I currently only support p6 with carton :)
umm, p5 with carton even
ugexe what do you mean? 14:08
ranguard I have puppet config for running plack based websites and code using Carton's cpanfile.snapshot 14:09
e.g. github.com/metacpan/metacpan-grep-...e.snapshot - which is then installed for just the project 14:10
but I don't have anything for p6 so not going to offer to do that... just yet :)
ugexe: metacpan.org/pod/Carton being the carton I'm talking about (sorry never know which p6 people also know p5 tools) 14:11
ugexe oh i'm familiar with the p5 tools (and carton). i just didn't know how that tied into a cpan index file... I suppose it uses a cpanfile.snapshot for the index? 14:17
ranguard is obviously being confusing soz... I'll rephrase... I have puppet code that knows how to install stuff with Carton 14:22
s/stuff/dependencies/ - ON the metacpan servers 14:23
this is for hosting projects we run
and I don't have any puppet code to do anything with p6
nine has puppet code for installing perl6 (which is kinda easy thanks to openSUSE RPMs) and Perl 6 code run by puppet (setting up all our production VMs) 14:27
ranguard nine: woo - well some time a PR to github.com/metacpan/metacpan-puppet might be in order then - though we are on Debian currently ;) 14:30
but we'll get the basics running first!
14:38 perlpilot joined
ugexe ranguard: fwiw App::ecogen has no dependencies 15:00
other than having git and wget installed 15:01
also my really bad code for App::ecogen I can take out once nine's pause pr is accepted 16:50
(guessing the archive file name)
pause says only .tar.gz or .zip is supported but Text::CSV was uploaded as .tgz so I had to do some ugly stuff 16:51
17:23 samcv joined
ranguard ahh 17:46
18:29 japhb joined 18:49 domidumont joined 19:33 domidumont joined