NAME

Dist::Zilla::Plugin::AuthorityFromModule - Add metadata to your distribution indicating what module to copy PAUSE permissions from

VERSION

version 0.005

SYNOPSIS

In your dist.ini:

[AuthorityFromModule]

DESCRIPTION

This is a Dist::Zilla plugin that adds the x_authority_from_module and x_permissions_from_module keys to your distribution metadata, indicating from which module to copy PAUSE permissions when a module in your distribution enters the PAUSE index that has not ever previously been indexed.

Note that these fields aren't actually supported yet by PAUSE -- that's still to come (as is figuring out which field name everyone prefers, and ditching the other one).

MOTIVATION

The idea is that this is a more useful piece of data for PAUSE than x_authority. Here is how the release process works with x_authority, using Moose as an example:

  • I (ETHER) release a new version of Moose with a new module added, Moose::Foo

  • normally, PAUSE would give me "first-come" permissions on this module, but since PAUSE sees the x_authority => 'cpan:STEVAN' metadata, it instead gives "first-come" to STEVAN, and "co-maint" to me

  • but now none of the other members of the Moose cabal can do the next Moose release and get the new version of Moose::Foo indexed - they need to contact STEVAN and ask him to give them co-maint at http://pause.perl.org

So, we can see the only gain is that STEVAN automatically gets permission on the new module, but still, no one else does. Now, let's look at how x_authority_from_module would work:

  • I (ETHER) release a new version of Moose with a new module added, Moose::Foo

  • PAUSE sees the x_authority_from_module => 'Moose' metadata and looks up the permissions for the Moose module, and, finding many authors, copies all those permissions to Moose::Foo: STEVAN gets first-come, and everyone else (ETHER included) gets co-maint.

  • now any of the other members of the Moose cabal can do the next Moose release and everything will be properly indexed, with no manual intervention required.

CONFIGURATION OPTIONS

module

The module name to copy permissions from. It must exist in the distribution, and exist in the PAUSE permissions table (see peek at PAUSE permissions).

This config is optional; it defaults to the main module in the distribution.

SUPPORT

Bugs may be submitted through the RT bug tracker (or bug-Dist-Zilla-Plugin-AuthorityFromModule@rt.cpan.org). I am also usually active on irc, as 'ether' at irc.perl.org.

SEE ALSO

AUTHOR

Karen Etheridge <ether@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2014 by Karen Etheridge.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.