On Sat, Feb 27, 2016 at 12:06 PM, Peter Rabbitson <ribasu...@cpan.org> wrote:
> Copying a rhetorical question from #distzilla here, as it warrants a wider > audience. The background is yet another discussion of a kludgy workaround > where an installation with an older JSON parser is tripped by unicode in > META.json. Unicode that doesn't really serve any purpose for an installing > client. > > <ribasushi> why do we continue to keep trying to stuff unicode into meta > in the first place? > <ribasushi> the authorship information has nothing to do with installation > time > <ribasushi> we use it for display purposes only (e.g. metacpan) > <ribasushi> anyone considered META.meta or similar? > <ribasushi> I am not even talking about 5.8 at this point - on windows > having unicode in meta will be forever a pain > <ribasushi> ( due to Xmake proliferation and various backwards compat > kludges which leak META into the generated makefile ) > <mst> I dunno, my stuff only ever handled it in the first place because > ilmari complained at me > <ribasushi> https://metacpan.org/source/ETHER/Moose-2.1605/META.json <--- > 2600 lines, maybe 20 of them have to do with actual installation and are > expected to be read by *any* installer. The rest... is best effort anyway, > why not separate it and stay happy > <dipsy> [ META.json - metacpan.org ] > <mst> hmm. I bet the original goal was for the META file to be fed into > packaging systems > <ribasushi> right, which was in another era more or less ( no cpanm, no > metacpan, no perl-pkg groups etc ) > <ribasushi> perhaps rethinking "Meta for end-user install purposes" and > "Meta for meta" would solve most of the recent repeated breakages by "oh > downstream doesn't like this new thingymagic" > I'm pretty sure I've expressed exactly this sentiment before. Even Module::Build::Tiny, which is entirely dependent on the meta files for its operation, is using only 3 fields (name, version, prereqs); most other tools wouldn't even need the first two. A cpan client would also use dynamic_config, anything else is really either for pause or for metacpan & friends. I'm not sure changing this now is really going to make things better though. Leon