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 29 April 2017.
00:19 stmuk joined 01:13 stmuk_ joined 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
03:16 eater joined
nine Looking at that Inline::Perl5 failure (missing keys in "provides"), it's a good thing that I have not declared a new version. Doesn't help at all though since our installers don't care about declared versions and just install git master :/ 07:57
ugexe: that's ^^^ certainly something we should work on at the PTS
ugexe nine: what do you mean? zef installs whatever source-url points at - if everyone switched to using commit.tar.gz in META.list for each release it would Just Work 13:51
i've tried to avoid adding git-specific stuff because the eventual move to CPAN will require a focus on .tar.gz, so I want the abstractions I work with to make sense for both type (git / tar). So for instance: you can't download a single tar archive and extract any version you want like with a git archive 14:00
in this sense I think the solution I would lean towards is allowing commit-ids in the url that zef could understand (this even exists or existed at one time heh). but this still requires specifying each specific version as a different url in the META6.json for releases 14:01
So its not the installers dont care about declared versions (at least it shouldn't be), its that zef assumes the source-url points to the declared version 14:08
If you're getting some versioning problem from zef I have an idea where it could happen... zef first gets the module meta data from somewhere (before it downloads the repo), and if that meta data doesn't match what gets downloaded from the source-url then I suppose something might be looking at the wrong meta data 14:10
nine ugexe: can I leave the git URI in the META6.json? 14:19
ugexe nine: example? 14:20
nine "source-url" : "git://github.com/niner/Inline-Perl5.git"
ugexe yes, thats what is generally used
so what is the version problem you were seeing? I do not recall a recent Inline::Perl5 failure 14:23
nine Ah it was just this github.com/niner/Inline-Perl5/comm...afe1166dbd 14:24
ugexe ...how did it ever install?? 14:26
I would have guessed a precomp error would occur inside rakudo during the install from missing modules 14:27
nine It probably did.
ugexe I've installed and used Inline::Perl5 without a problem, always with zef
nine The issue has been there only since Saturday 14:30
ugexe ah 14:31
nine ugexe: this correct? github.com/perl6/ecosystem/commit/...952d1c1d46
ugexe i used to install Inline::Perl5 as part of zef's travis tests, but OSX doesn't let you switch to the right perl :/ 14:32
nine: no, one second ill explain
you would put that cpan url in META6.json, and link that specific commit in the ecosystem (like github.com/niner/Inline-Perl5/blob...META6.json but with version 0.26) 14:34
grep the META.list for Net::IP::Lite by tbrowder - it has 2 versions in the ecosystem using this method 14:36
nine But that still very much depends on GitHub, doesn't it? 14:40
ugexe the META.list depends on github, there is no way around that
as in - thats where the ecosystem json is generated from
nine One could also just download the dists and read the META6.json from there 14:41
Like the CPAN indexer does
ugexe yes, although i'd like to avoid that. and this used to be easy... FROGGS added something at one time that pulled the META6.json data from the dists, so each dist had an archive and a .meta file in the index list 14:42
it seems to have stopped working though
github.com/ugexe/Perl6-ecosystems/.../cpan.json # this is pulled from all the .meta files in the index
nine Also what are people gonna do who don't have push access to the ecosystem repo?
ugexe use cpan or something else. and it should be fairly transparent 14:43
www.cpan.org/authors/id/P/PS/PSIXDISTS/Perl6/ 14:46
so only the old dists have a .meta file
my repo above already makes an "ecosystem" out of those (where an ecosystem is just an array of meta data) 14:47
if those .meta files were still generated then if you still wanted to list it in the ecosystem you could list that www.cpan.org/authors/id/P/PS/PSIXDI...0.001.meta 14:48
nine Odd...now zef cannot find any candidate for Inline::Perl5 anymore 14:51
ugexe not listed in ecosystem-api.p6c.org/projects.json 14:52
it probably picked up that .tar.gz and couldnt parse it as meta6.json
nine That's updated by a cron job, isn't it? 14:53
ugexe i believe so
oh hey 14:54
www.cpan.org/authors/id/N/NI/NINE/P...-0.26.meta
nine So I could use that if it's source-url would point at the .tar.gz?
ugexe yep 14:55
so what we really need to do is fine whatever generates that .meta file and have it automatically create the proper source-url for a cpan .tar.gz
s/fine/find/
nine That'd be nice. Otherwise I'd have to update the META6.json for every release (well even more than I'd have to already). 14:58
Also it'd be really nice to have the git checkout's META6.json point at the git repo and the tar balls point to wherever the user actually got it from.
ugexe I'm not following the git checkout part 15:02
nine I'd like it if I could leave "source-url": "git://github.com/niner/Inline-Perl5.git" in the git repo's META6.json and have CPAN change it to the release tar ball for me. 15:05
ugexe the distinction I think that needs to be made is one of `"source-url" : "..."` vs `"support" : { "source" : "..." }`. where `support => source` should never change regardless of what content storage its on, and source-url is an *ecosystem* spec such that two distributions can be the same despite having different source-url 15:06
nine: right. so what I mean above is source-url is not meta6 spec, so cpan is free to change that to whatever it wants if it already exists (or create it if it doesnt) 15:07
what cpan cannot do is change spec fields. it cannot change "auth" : "blah:github: to "auth" : "blah:cpan" or version 1.1 to version 1.100 (or at least provide the originals) 15:09
you can also get rid of "repo-type" : "git" - there isn't any support for the field as its just inferred from the source-url 15:16
15:17 domidumont joined
nine Cool, looks like it works now :) 15:18
samcv oh i see i hit the thing you guys are talking about 19:52
travis failed for one of my things cause couldn't get Inline::Perl5 from cpan
does it work now?
Zoffix samcv: should, yes 19:53
samcv oh well it did not
at least 20 mins ago when a travis build started. i am restartirg it tho
20:18 Zoffix joined
nine samcv: any success? 20:22
zef seems to like it
ugexe yeah that travis is using panda 20:30
samcv oh my bad i'm using panda 20:38
i thought i had changed this repo