Subject: | A few additions to CPAN::Meta::Specs |
One, a "intent: personal" flag for distros that need to be public, but
are generally intended for personal use. Examples of this would be the
Task::BeLike:: and Dist::Zilla::PluginBundle::[AUTHOR] distros. This
could then be used by CPAN/MetaCPAN to push these kind of distros at the
bottom.
For now, I think I'll push for x_intent usage.
Two, a concept of "symlinks" or "stub META files". For example, a
property like:
{ alternates: { "::Author::Foo" : { "replacement_for" : [ "::Foo" ] } } }
This was in reference to similar conversations about moving
Dist::Zilla::PluginBundle::[AUTHOR] modules to a
Dist::Zilla::PluginBundle::Author::[AUTHOR] namespace. These kind of
META properties could even be put into real distros. Just as long as
cpan/cpanm/cpanplus is smart enough to know that if it tries to grab
::Foo, it should really be grabbing ::Author::Foo.
This sort of thing would really fix a lot of problems related to moving
public modules, instead of putting some DEPRECATED stub module in there
for years, just to rename something. This is also better than trying to
set the logic for this within Perl's local package structure itself.