|
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 27 September 2016. |
|||
|
00:45
ribasushi joined
01:48
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:49
domidumont joined
05:52
domidumont joined
|
|||
| ranguard | ugexe: yea, I've got exceptions for that in my code | 07:57 | |
| FYI github.com/perl6modules/perl6-modu...acker.json lists the sha of the git repo at the time I made the version - don't think you'd actually want to use it for anything, but thought I'd mention it | 07:58 | ||
| I guess the question is should your tooling around CPAN care what's in META.list or just what's on CPAN | 08:03 | ||
| and if it's just what is on CPAN am I creating the .tar.gz files in the way that's needed | 08:06 | ||
|
08:54
tadzik joined
|
|||
| stmuk_ | ugexe: I don't think that "Foo" example even works on modules.perl6.org/ anyway -- it's only displaying your version and not froggs as well | 09:03 | |
|
10:04
tadzik joined
10:30
llfourn joined
13:03
domidumont joined
|
|||
| ugexe | stmuk_: it doesnt work on modules.perl6.org because it too is broken | 14:15 | |
| for instance: `perl6 -Ilib bin/zef -v install "Foo:auth<github:ugexe>"` fetches that exact version of Foo | 14:17 | ||
| ranguard: perl6 module tooling is meant to care about multiple content storages | 14:18 | ||
| that means My::Module:auth<github:ugexe>, when transfered to CPAN, still represents the exact same module. You're using a checksum but we use the full name as the unique identifier (name, version, auth, api) | 14:19 | ||
| so i should be able to request My::Module:auth<github:ugexe> from CPAN | 14:20 | ||
| the question is then how do you apply this behavior with CPAN's current expectation that the uploading AUTHOR is the auth (which is not true in the case of github:ugexe) | 14:21 | ||
| :auth<github:ugexe> doesn't mean download it from github or to make sure user `ugexe` on `github` has such a repo | 14:23 | ||
| an easier format to think of is :auth<my@email.com> - its just an identifier of where an author claims a distribution originated so when looking at distributions you can tell which ones are the same | 14:24 | ||
| stmuk_: do you have access to the modules.perl6.org database? could you check if those distributions exist in the database itself? Maybe they just get skipped during page rendering | 14:55 | ||
| ranguard | ugexe: how do you tell what unique identifier (name, version, auth, api) actually matches to on GH? | 14:58 | |
| I mean without relying on the author to tag each of their releases? | 14:59 | ||
| e.g. Today I have META.info with version 1.0 - Tomorrow I commit an update to the code but don't change the version | 15:00 | ||
| someone downloading today is going to get different code to the person who downloads tomorrow, even if they think the version number is the same | |||
| eek, just seen the time, go to run! | |||
| ugexe | ranguard: right. currently we do nothing - if an author is doing that type of stuff people will quit using their code which has been enough deterrent for the time being | 15:01 | |
| rakudo itself does the same thing - a modules id (for ::Installation) is sha1("My::Module:ver<xxx>:auth<xxx>:api<>") | 15:03 | ||
| so `My::Module:ver<xxx>:auth<xxx>:api<>` is *intended* to represent something immutable (but in practice is easily broken as you point out - thats was version "*" is for really) | 15:04 | ||
| nine | ranguard: the solution will be to not just pull master from github for installation. That was nice as a very first hack but is absolutely not useful longterm. | 15:05 | |
| stmuk_ | I imagine the actual CPAN publishing process is likely to be "push" rather than "pull" | 15:35 | |
| ugexe: I don't its zoffix's baby | 15:36 | ||
| actually modules.perl6.org/update.log | 15:48 | ||
| so mostly ppl develop on github/gitlab whatever and occasionally publish a release onto CPAN | 15:59 | ||
| ugexe | the current github stuff isn't necessarily meant to stick around. but its nice to have alongside CPAN initially because it forces us to keep theoretical future darkpan style content storages in mind | 16:35 | |
| ranguard | nine / stmuk_ / ugexe - yea, i really don't want to be doing these ipload long term | 17:08 | |
| would be great to get p6 people to upload to CPAN themselves | 17:09 | ||
| s/ipload/uploads/ | |||
| but I get the tooling probably needs to be built to make that easy and useful first | 17:10 | ||
| stmuk_ | yes I think this is a good first step | 17:12 | |
|
17:16
FROGGS joined
|
|||
| nine | ranguard: do you just upload via PAUSE? | 17:20 | |
|
17:34
domidumont joined
|
|||
| ranguard | nine: yep | 18:20 | |
| the 'magic' is github.com/perl6modules/perl6-modu...pan.pl#L42 | 18:22 | ||
| when uploading use the 'subdir' of 'Perl6' | |||
| but other than that it's the same as any other upload to PAUSE | 18:23 | ||
| the PAUSE web UI lets you do it as well: www.evernote.com/shard/s54/sh/f43b...d4695605aa | 18:25 | ||
| though wow that could be cleaner! - I'll try find out where the HTML is and fix that sometime | |||
|
19:32
patrickz joined
|
|||