Path-FindDev-0.5.2/0000755000175000017500000000000012373555141012421 5ustar kentkentPath-FindDev-0.5.2/LICENSE0000644000175000017500000004376512373555141013445 0ustar kentkentThis software is copyright (c) 2014 by Kent Fredric . This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Terms of the Perl programming language system itself a) the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version, or b) the "Artistic License" --- The GNU General Public License, Version 1, February 1989 --- This software is Copyright (c) 2014 by Kent Fredric . This is free software, licensed under: The GNU General Public License, Version 1, February 1989 GNU GENERAL PUBLIC LICENSE Version 1, February 1989 Copyright (C) 1989 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The license agreements of most software companies try to keep users at the mercy of those companies. By contrast, our General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. The General Public License applies to the Free Software Foundation's software and to any other program whose authors commit to using it. You can use it for your programs, too. When we speak of free software, we are referring to freedom, not price. Specifically, the General Public License is designed to make sure that you have the freedom to give away or sell copies of free software, that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of a such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must tell them their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any work containing the Program or a portion of it, either verbatim or with modifications. Each licensee is addressed as "you". 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this General Public License and to the absence of any warranty; and give any other recipients of the Program a copy of this General Public License along with the Program. You may charge a fee for the physical act of transferring a copy. 2. You may modify your copy or copies of the Program or any portion of it, and copy and distribute such modifications under the terms of Paragraph 1 above, provided that you also do the following: a) cause the modified files to carry prominent notices stating that you changed the files and the date of any change; and b) cause the whole of any work that you distribute or publish, that in whole or in part contains the Program or any part thereof, either with or without modifications, to be licensed at no charge to all third parties under the terms of this General Public License (except that you may choose to grant warranty protection to some or all third parties, at your option). c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the simplest and most usual way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this General Public License. d) You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. Mere aggregation of another independent work with the Program (or its derivative) on a volume of a storage or distribution medium does not bring the other work under the scope of these terms. 3. You may copy and distribute the Program (or a portion or derivative of it, under Paragraph 2) in object code or executable form under the terms of Paragraphs 1 and 2 above provided that you also do one of the following: a) accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Paragraphs 1 and 2 above; or, b) accompany it with a written offer, valid for at least three years, to give any third party free (except for a nominal charge for the cost of distribution) a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Paragraphs 1 and 2 above; or, c) accompany it with the information you received as to where the corresponding source code may be obtained. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form alone.) Source code for a work means the preferred form of the work for making modifications to it. For an executable file, complete source code means all the source code for all modules it contains; but, as a special exception, it need not include source code for modules which are standard libraries that accompany the operating system on which the executable file runs, or for standard header files or definitions files that accompany that operating system. 4. You may not copy, modify, sublicense, distribute or transfer the Program except as expressly provided under this General Public License. Any attempt otherwise to copy, modify, sublicense, distribute or transfer the Program is void, and will automatically terminate your rights to use the Program under this License. However, parties who have received copies, or rights to use copies, from you under this General Public License will not have their licenses terminated so long as such parties remain in full compliance. 5. By copying, distributing or modifying the Program (or any work based on the Program) you indicate your acceptance of this license to do so, and all its terms and conditions. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. 7. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of the license which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the license, you may choose any version ever published by the Free Software Foundation. 8. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 9. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 10. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to humanity, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19xx name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (a program to direct compilers to make passes at assemblers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice That's all there is to it! --- The Artistic License 1.0 --- This software is Copyright (c) 2014 by Kent Fredric . This is free software, licensed under: The Artistic License 1.0 The Artistic License Preamble The intent of this document is to state the conditions under which a Package may be copied, such that the Copyright Holder maintains some semblance of artistic control over the development of the package, while giving the users of the package the right to use and distribute the Package in a more-or-less customary fashion, plus the right to make reasonable modifications. Definitions: - "Package" refers to the collection of files distributed by the Copyright Holder, and derivatives of that collection of files created through textual modification. - "Standard Version" refers to such a Package if it has not been modified, or has been modified in accordance with the wishes of the Copyright Holder. - "Copyright Holder" is whoever is named in the copyright or copyrights for the package. - "You" is you, if you're thinking about copying or distributing this Package. - "Reasonable copying fee" is whatever you can justify on the basis of media cost, duplication charges, time of people involved, and so on. (You will not be required to justify it to the Copyright Holder, but only to the computing community at large as a market that must bear the fee.) - "Freely Available" means that no fee is charged for the item itself, though there may be fees involved in handling the item. It also means that recipients of the item may redistribute it under the same conditions they received it. 1. You may make and give away verbatim copies of the source form of the Standard Version of this Package without restriction, provided that you duplicate all of the original copyright notices and associated disclaimers. 2. You may apply bug fixes, portability fixes and other modifications derived from the Public Domain or from the Copyright Holder. A Package modified in such a way shall still be considered the Standard Version. 3. You may otherwise modify your copy of this Package in any way, provided that you insert a prominent notice in each changed file stating how and when you changed that file, and provided that you do at least ONE of the following: a) place your modifications in the Public Domain or otherwise make them Freely Available, such as by posting said modifications to Usenet or an equivalent medium, or placing the modifications on a major archive site such as ftp.uu.net, or by allowing the Copyright Holder to include your modifications in the Standard Version of the Package. b) use the modified Package only within your corporation or organization. c) rename any non-standard executables so the names do not conflict with standard executables, which must also be provided, and provide a separate manual page for each non-standard executable that clearly documents how it differs from the Standard Version. d) make other distribution arrangements with the Copyright Holder. 4. You may distribute the programs of this Package in object code or executable form, provided that you do at least ONE of the following: a) distribute a Standard Version of the executables and library files, together with instructions (in the manual page or equivalent) on where to get the Standard Version. b) accompany the distribution with the machine-readable source of the Package with your modifications. c) accompany any non-standard executables with their corresponding Standard Version executables, giving the non-standard executables non-standard names, and clearly documenting the differences in manual pages (or equivalent), together with instructions on where to get the Standard Version. d) make other distribution arrangements with the Copyright Holder. 5. You may charge a reasonable copying fee for any distribution of this Package. You may charge any fee you choose for support of this Package. You may not charge a fee for this Package itself. However, you may distribute this Package in aggregate with other (possibly commercial) programs as part of a larger (possibly commercial) software distribution provided that you do not advertise this Package as a product of your own. 6. The scripts and library files supplied as input to or produced as output from the programs of this Package do not automatically fall under the copyright of this Package, but belong to whomever generated them, and may be sold commercially, and may be aggregated with this Package. 7. C or perl subroutines supplied by you and linked into this Package shall not be considered part of this Package. 8. The name of the Copyright Holder may not be used to endorse or promote products derived from this software without specific prior written permission. 9. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. The End Path-FindDev-0.5.2/Changes0000644000175000017500000001065012373555141013716 0ustar kentkentRelease history for Path-FindDev 0.5.2 2014-08-16T04:12:22Z [00 Trivial] - CPANDAY! - No code changes. - metadata updated. - tests updated. - whitespace reduced. [Dependencies::Noteworthy] - use newer Path::Tiny to avoid bug GH #7 ( Thanks Chorny ) [Dependencies::Stats] - Dependencies changed since 0.5.1, see misc/*.deps* for details - configure: ↓1 - develop: +1 (suggests: ↑1) - runtime: ↑1 - test: +1 -3 (recommends: ↑1 -1) [Metadata] - move to kentnl org. - Show 2x contributors [Misc] - Improve source side POD to reduce build side whitespace. [Tests] - updated Test::ReportPrereqs 0.5.1 2014-07-13T17:54:11Z [00 Trivial] - Misc packaging updates. [Dependencies::Stats] - Dependencies changed since 0.5.0, see misc/*.deps* for details - configure: (recommends: ↑1) - develop: +3 -3 (suggests: +2 -1) - test: (recommends: ↑2) 0.5.0 2014-03-04T11:03:22Z [00 Tooling release] - Toolkit switched to EUMM - No other noteworthy changes - Still as broken as always [Dependencies::Aggregate] - 5.008 - 49 → 44 - 5.010 - 32 → 33 - 5.019 - 18 → 17 [Dependencies::Stats] - Dependencies changed since 0.4.2, see misc/*.deps* for details - build: -1 - configure: +1 -1 (recommends: +1) - develop: +8 ↑1 -10 - runtime: +1 ↑1 - test: +4 ↓1 -3 (recommends: +4) 0.4.2 2013-11-09T16:06:27Z [00 Bugfix] - Minimum perl declared is now 5.8, and tested to work on 5.8 - However, the version scheme is x.y.z still, which means if you want to depend on a specific version in Perl code, you'll need a recent enough version.pm to make it work. [Dependencies::Stats] - Dependencies changed since 0.4.1, see misc/*.deps* for details - build: ↑1 - configure: ↑1 - develop: +42 ↑1 - runtime: ↓1 - test: ↑1 0.4.1 2013-10-23T19:08:22Z [00 Bugfix] - System path test added in 0.4.0 disabled due to potential security risks ( fixes #4 ) [Dependencies::Stats] - Dependencies changed since 0.4.0, see misc/*.deps* for details - develop: ↑2 - test: ↑1 0.4.0 2013-10-01T22:51:43Z [00 API Backwards Incompatible Changes] - os_root property no longer exists, as is no longer required internally [Bugfixes] - Minor typo in POD ( Thanks David Steinbrunner ) - Uplevel mechanism bugged on Win32, thanks zdm for reporting - Traversal Order is now test/iterate instead of iterate/test, meaning it will test / prior to terminating, useful probably if $PROJECTDIR is a UNC Share. - Root check now performed by a more reliable Path::Tiny->is_rootdir, xdg++ for the fixes. - Path resolution is now performed and realpathed early on. [Dependencies::Stats] - Dependencies changed since 0.3.2, see misc/*.deps* for details - develop: +1 -1 (recommends: -1, suggests: +1 -1) - runtime: ↑1 -1 [Tests] - Aggressively now checks that $PROJECTROOT/../ is not contained in a directory that is considered "dev" by Path::IsDev. - This is intended to smoke out quirks that exist on your filesystem, and on CPAN Testers file systems in general that exhibit wart-like behaviour to the Path::IsDev Heuristic sets. - If these tests fail for you, they'll probably result in Path::IsDev and Path::FindDev also being broken, so I greatly appreciate any reports regarding false-positives that could be logically anticipated to be false positives on all filesystems. - Otherwise, please read the Path::IsDev documentation and see how to mark a directory tree as a "NegativeHeuristic", namely, touch $PROBLEMDIR/.path_isdev_ignore 0.3.2 2013-09-26T07:21:34Z [Bugfix] - use a less broken Test::Compile for Win32 folk [Dependencies::Stats] - Dependencies changed since 0.3.1, see misc/*.deps* for details - test: +1 0.3.1 2013-09-18T18:28:55Z [Bugfix] - Use Class::Tiny without 'used only once' [Dependencies::Stats] - Dependencies changed since 0.3.0, see misc/*.deps* for details - runtime: ↑1 0.3.0 2013-09-18T03:06:21Z [00 Major Changes] - Implemented in Class::Tiny instead, which is faster to install [00 Minor Changes] - MetaPOD info in dist. [Dependencies::Stats] - Dependencies changed since 0.2.0, see misc/*.deps* for details - build: ↑1 - configure: ↑1 - develop: +1 (suggests: ↑1) - runtime: +1 -1 - test: +2 -2 0.2.0 2013-07-07T16:36:18Z [00 Major Changes] - Refactored guts of exported symbols in terms of a Moo class. [Dependencies::Stats] - Dependencies changed since 0.1.0, see misc/*.deps* for details - runtime: +4 ↑1 0.1.0 2013-07-06T17:00:16Z - First version. Path-FindDev-0.5.2/lib/0000755000175000017500000000000012373555141013167 5ustar kentkentPath-FindDev-0.5.2/lib/Path/0000755000175000017500000000000012373555141014063 5ustar kentkentPath-FindDev-0.5.2/lib/Path/FindDev.pm0000644000175000017500000000614012373555141015741 0ustar kentkentuse 5.008; # utf8 use strict; use warnings; use utf8; package Path::FindDev; our $VERSION = '0.5.2'; # ABSTRACT: Find a development path somewhere in an upper hierarchy. our $AUTHORITY = 'cpan:KENTNL'; # AUTHORITY use Sub::Exporter -setup => { exports => [ find_dev => \&_build_find_dev, ] }; sub _build_find_dev { my ( undef, undef, $arg ) = @_; my $finddev_object; return sub { my ($path) = @_; $finddev_object ||= do { require Path::FindDev::Object; Path::FindDev::Object->new($arg); }; return $finddev_object->find_dev($path); }; } *find_dev = _build_find_dev( __PACKAGE__, 'find_dev', {} ); 1; __END__ =pod =encoding UTF-8 =head1 NAME Path::FindDev - Find a development path somewhere in an upper hierarchy. =head1 VERSION version 0.5.2 =head1 DESCRIPTION This package is mostly a glue layer around L<< C|Path::IsDev >> with a few directory walking tricks. use Path::FindDev qw( find_dev ); if ( my $root = find_dev('/some/path/to/something/somewhere')) { print "development root = $root"; } else { print "No development root :("; } =head1 FUNCTIONS =head2 find_dev my $result = find_dev('/some/path'); If a C directory is found at, or above, C, it will be returned as a L<< C|Path::Tiny >> If you pass configurations to import: use Path::FindDev find_dev => { set => $someset }; Then the exported C will pass that set name to L<< C|Path::IsDev >>. Though you should only do this if =over 4 =item * the default set is inadequate for your usage =item * you don't want the set to be overridden by C<%ENV> =back Additionally, you can call find_dev directly: require Path::FindDev; my $result = Path::FindDev::find_dev('/some/path'); Which by design inhibits your capacity to specify an alternative set in code. =begin MetaPOD::JSON v1.1.0 { "namespace":"Path::FindDev", "interface":"exporter" } =end MetaPOD::JSON =head1 EXAMPLE USE-CASES Have you ever found yourself doing use FindBin; use lib "$FindBin::Bin/../../../tlib" In a test? Have you found yourself paranoid of file-system semantics and tried use FindBin; use Path::Tiny qw(path) use lib path($FindBin::Bin)->parent->parent->parent->child('tlib')->stringify; Have you ever done either of the above in a test, only to find you've needed to move the test to a deeper hierarchy, and thus, need to re-write all your path resolution? Have you ever had this problem for multiple files? No more! use FindBin; use Path::FindDev qw(find_dev); use lib find_dev($FindBin::Bin)->child('t','tlib')->stringify; ^ Should work, regardless of which test you put it in, and regardless of what C<$CWD> happens to be when you call it. =head1 AUTHOR Kent Fredric =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2014 by Kent Fredric . This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut Path-FindDev-0.5.2/lib/Path/FindDev/0000755000175000017500000000000012373555141015402 5ustar kentkentPath-FindDev-0.5.2/lib/Path/FindDev/Object.pm0000644000175000017500000001452112373555141017151 0ustar kentkentuse 5.008; # utf8 use strict; use warnings; use utf8; package Path::FindDev::Object; our $VERSION = '0.5.2'; # ABSTRACT: Object oriented guts to FindDev our $AUTHORITY = 'cpan:KENTNL'; # AUTHORITY our $ENV_KEY_DEBUG = 'PATH_FINDDEV_DEBUG'; our $DEBUG = ( exists $ENV{$ENV_KEY_DEBUG} ? $ENV{$ENV_KEY_DEBUG} : undef ); use Class::Tiny 0.010 'set', 'uplevel_max', { nest_retry => sub { return 0; }, isdev => sub { require Path::IsDev::Object; return Path::IsDev::Object->new( ( $_[0]->has_set ? ( set => $_[0]->set ) : () ) ); }, }; ## no critic (RequireArgUnpacking) sub has_set { return exists $_[0]->{set} } sub has_uplevel_max { return exists $_[0]->{uplevel_max} } my $instances = {}; my $instance_id = 0; sub _instance_id { my ($self) = @_; require Scalar::Util; my $addr = Scalar::Util::refaddr($self); return $instances->{$addr} if exists $instances->{$addr}; $instances->{$addr} = sprintf '%x', $instance_id++; return $instances->{$addr}; } sub BUILD { my ($self) = @_; return $self unless $DEBUG; $self->_debug('{'); $self->_debug( ' set => ' . $self->set ) if $self->has_set; $self->_debug( ' uplevel_max => ' . $self->uplevel_max ) if $self->uplevel_max; $self->_debug( ' nest_retry => ' . $self->nest_retry ); $self->_debug( ' isdev => ' . $self->isdev ); $self->_debug('}'); return $self; } sub _debug { my ( $self, $message ) = @_; return unless $DEBUG; my $id = $self->_instance_id; return *STDERR->printf( qq{[Path::FindDev=%s] %s\n}, $id, $message ); } sub _error { my ( $self, $message ) = @_; my $id = $self->_instance_id; my $f_message = sprintf qq{[Path::FindDev=%s] %s\n}, $id, $message; require Carp; Carp::croak($f_message); } sub _step { my ( $self, $search_root, $dev_levels, $uplevels ) = @_; if ( $self->isdev->matches($search_root) ) { $self->_debug( 'Found dev dir' . $search_root ); ${$dev_levels}++; return { type => 'found', path => $search_root } if ${$dev_levels} >= $self->nest_retry; $self->_debug( sprintf 'Ignoring found dev dir due to dev_levels(%s) < nest_retry(%s)', ${$dev_levels}, $self->nest_retry ); } if ( $search_root->is_rootdir ) { $self->_debug('OS Root hit ( ->is_rootdir )'); return { type => 'stop' }; } if ( $self->has_uplevel_max and ${$uplevels} > $self->uplevel_max ) { $self->_debug( 'Stopping search due to uplevels(%s) >= uplevel_max(%s)', ${$uplevels}, $self->uplevel_max ); return { type => 'stop' }; } return { type => 'next' }; } sub find_dev { my ( $self, $path ) = @_; require Path::Tiny; my $search_root = Path::Tiny::path($path)->absolute->realpath; $self->_debug( 'Finding dev for ' . $path ); my $dev_levels = 0; my $uplevels = 0 - 1; FLOW: { $uplevels++; my $result = $self->_step( $search_root, \$dev_levels, \$uplevels ); if ( 'next' eq $result->{type} ) { $self->_debug( 'Trying ../ : ' . $search_root->parent ); $search_root = $search_root->parent; redo FLOW; } if ( 'stop' eq $result->{type} ) { return; } if ( 'found' eq $result->{type} ) { return $result->{path}; } $self->_error( 'Unexpected end of flow control with _step response type' . $result->{type} ); } return; } 1; __END__ =pod =encoding UTF-8 =head1 NAME Path::FindDev::Object - Object oriented guts to FindDev =head1 VERSION version 0.5.2 =head1 SYNOPSIS require Path::FindDev::Object; my $finder = Path::FindDev::Object->new(); my $dev = $finder->find_dev($path); =head1 DESCRIPTION This module implements the innards of L<< C|Path::FindDev >>, and is only recommended for use if the Exporter C is insufficient for your needs. =head1 METHODS =head2 C Determines if the C attribute exists =head2 C Determines if the C attribute is provided. =head2 C Find a parent at, or above C<$OtherPath> that resembles a C directory. my $path = $object->find_dev( $OtherPath ); =head1 ATTRIBUTES =head2 C B<(optional)> The C subclass for your desired Heuristics. =head2 C If provided, limits the number of C iterations done. ( that is, limits the number of times it will step up the hierarchy ) =head2 C The number of C directories to C in the hierarchy. This is provided in the event you have a C directory within a C directory, and you wish to resolve an outer directory instead of an inner one. By default, this is C<0>, or "stop at the first C directory" =head2 C The L<< C|Path::IsDev >> object that checks nodes for C-ishness. =head1 PRIVATE METHODS =head2 C<_instance_id> An opportunistic sequence number for help with debug messages. Note: This is not guaranteed to be unique per instance, only guaranteed to be constant within the life of the object. Based on C, and giving out new ids when new C's are seen. my $id = $object->_instance_id; =head2 C C is an implementation detail of C/C. This module hooks C to give a self report of the object to C<*STDERR> after C<< ->new >> when under C<$DEBUG> =head2 C<_debug> The debugger callback. export PATH_FINDDEV_DEBUG=1 to get debug info. $object->_debug($message); =head2 C<_error> The error reporting callback. $object->_error($message); =head2 C<_step> Inner code path of tree walking. my ($dev_levels, $uplevels ) = (0,0); my $result = $object->_step( path($somepath), \$dev_levels, \$uplevels ); $result->{type} eq 'stop' # if flow control should end $result->{type} eq 'next' # if flow control should ascend to parent $result->{type} eq 'found' # if flow control has found the "final" dev directory =begin MetaPOD::JSON v1.1.0 { "namespace":"Path::FindDev::Object", "interface":"class", "inherits":"Class::Tiny::Object" } =end MetaPOD::JSON =head1 AUTHOR Kent Fredric =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2014 by Kent Fredric . This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut Path-FindDev-0.5.2/Makefile.PL0000644000175000017500000000317012373555141014374 0ustar kentkent # This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.020. use strict; use warnings; use 5.008; use ExtUtils::MakeMaker ; my %WriteMakefileArgs = ( "ABSTRACT" => "Find a development path somewhere in an upper hierarchy.", "AUTHOR" => "Kent Fredric ", "CONFIGURE_REQUIRES" => { "ExtUtils::MakeMaker" => 0 }, "DISTNAME" => "Path-FindDev", "EXE_FILES" => [], "LICENSE" => "perl", "NAME" => "Path::FindDev", "PREREQ_PM" => { "Carp" => 0, "Class::Tiny" => "0.010", "Path::IsDev" => "0.2.2", "Path::IsDev::Object" => 0, "Path::Tiny" => "0.054", "Scalar::Util" => 0, "Sub::Exporter" => 0, "strict" => 0, "utf8" => 0, "warnings" => 0 }, "TEST_REQUIRES" => { "ExtUtils::MakeMaker" => 0, "File::Spec" => 0, "FindBin" => 0, "Test::More" => "0.89" }, "VERSION" => "0.5.2", "test" => { "TESTS" => "t/*.t t/00-compile/*.t" } ); my %FallbackPrereqs = ( "Carp" => 0, "Class::Tiny" => "0.010", "ExtUtils::MakeMaker" => 0, "File::Spec" => 0, "FindBin" => 0, "Path::IsDev" => "0.2.2", "Path::IsDev::Object" => 0, "Path::Tiny" => "0.054", "Scalar::Util" => 0, "Sub::Exporter" => 0, "Test::More" => "0.89", "strict" => 0, "utf8" => 0, "warnings" => 0 ); unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) { delete $WriteMakefileArgs{TEST_REQUIRES}; delete $WriteMakefileArgs{BUILD_REQUIRES}; $WriteMakefileArgs{PREREQ_PM} = \%FallbackPrereqs; } delete $WriteMakefileArgs{CONFIGURE_REQUIRES} unless eval { ExtUtils::MakeMaker->VERSION(6.52) }; WriteMakefile(%WriteMakefileArgs); Path-FindDev-0.5.2/xt/0000755000175000017500000000000012373555141013054 5ustar kentkentPath-FindDev-0.5.2/xt/release/0000755000175000017500000000000012373555141014474 5ustar kentkentPath-FindDev-0.5.2/xt/release/pod-coverage.t0000644000175000017500000000033412373555141017234 0ustar kentkent#!perl # This file was automatically generated by Dist::Zilla::Plugin::PodCoverageTests. use Test::Pod::Coverage 1.08; use Pod::Coverage::TrustPod; all_pod_coverage_ok({ coverage_class => 'Pod::Coverage::TrustPod' }); Path-FindDev-0.5.2/xt/release/cpan-changes.t0000644000175000017500000000026312373555141017211 0ustar kentkent#!perl use strict; use warnings; use Test::More 0.96 tests => 2; use_ok('Test::CPAN::Changes'); subtest 'changes_ok' => sub { changes_file_ok('Changes'); }; done_testing(); Path-FindDev-0.5.2/xt/release/pod-syntax.t0000644000175000017500000000022012373555141016761 0ustar kentkent#!perl # This file was automatically generated by Dist::Zilla::Plugin::PodSyntaxTests. use Test::More; use Test::Pod 1.41; all_pod_files_ok(); Path-FindDev-0.5.2/xt/release/distmeta.t0000644000175000017500000000017212373555141016473 0ustar kentkent#!perl # This file was automatically generated by Dist::Zilla::Plugin::MetaTests. use Test::CPAN::Meta; meta_yaml_ok(); Path-FindDev-0.5.2/xt/release/minimum-version.t0000644000175000017500000000027012373555141020016 0ustar kentkent#!perl use Test::More; eval "use Test::MinimumVersion"; plan skip_all => "Test::MinimumVersion required for testing minimum versions" if $@; all_minimum_version_from_metayml_ok(); Path-FindDev-0.5.2/xt/release/kwalitee.t0000644000175000017500000000016612373555141016471 0ustar kentkent# this test was generated with Dist::Zilla::Plugin::Test::Kwalitee 2.07 use strict; use warnings; use Test::Kwalitee; Path-FindDev-0.5.2/xt/release/eol.t0000644000175000017500000000024012373555141015434 0ustar kentkentuse strict; use warnings; use Test::More; eval 'use Test::EOL'; plan skip_all => 'Test::EOL required' if $@; all_perl_files_ok({ trailing_whitespace => 1 }); Path-FindDev-0.5.2/xt/author/0000755000175000017500000000000012373555141014356 5ustar kentkentPath-FindDev-0.5.2/xt/author/critic.t0000644000175000017500000000043512373555141016022 0ustar kentkent#!perl use strict; use warnings; use Test::More; use English qw(-no_match_vars); eval "use Test::Perl::Critic"; plan skip_all => 'Test::Perl::Critic required to criticise code' if $@; Test::Perl::Critic->import( -profile => "perlcritic.rc" ) if -e "perlcritic.rc"; all_critic_ok(); Path-FindDev-0.5.2/dist.ini.meta0000644000175000017500000000172212373555141015014 0ustar kentkent; Generated by Dist::Zilla::Plugin::Author::KENTNL::DistINI version 1.7.4 at Sun Jul 7 01:17:11 2013 name = Path-FindDev author = Kent Fredric license = Perl_5 copyright_holder = Kent Fredric ; Uncomment this to bootstrap via self ; [Bootstrap::lib] [@Author::KENTNL] :version = 2.016 git_versions = 1 normal_form = normal_3 toolkit = eumm toolkit_hardness = soft bumpversions = 1 copyfiles = LICENSE srcreadme = mkdn ; version_major = 0 ; version_minor = 1 ; the following data denotes when this minor was minted ; version_rel_year = 2013 ; version_rel_month = 7 ; version_rel_day = 7 ; version_rel_hour = 1 ; version_rel_time_zone = Pacific/Auckland twitter_hash_tags = #perl #cpan ; auto_prereqs_skip = File::Find [Prereqs / RuntimeRequires] Path::IsDev = 0.2.2 Path::Tiny = 0.054 ; compatibility with FindBin::libs on Windows Path-FindDev-0.5.2/t/0000755000175000017500000000000012373555141012664 5ustar kentkentPath-FindDev-0.5.2/t/00-report-prereqs.dd0000644000175000017500000001406012373555141016405 0ustar kentkentdo { my $x = { 'configure' => { 'recommends' => { 'ExtUtils::MakeMaker' => '6.98' }, 'requires' => { 'ExtUtils::MakeMaker' => '0' } }, 'develop' => { 'requires' => { 'Dist::Zilla::Plugin::Authority' => '1.006', 'Dist::Zilla::Plugin::AutoPrereqs' => '0', 'Dist::Zilla::Plugin::BumpVersionAfterRelease' => '0', 'Dist::Zilla::Plugin::ConfirmRelease' => '0', 'Dist::Zilla::Plugin::CopyFilesFromBuild' => '0', 'Dist::Zilla::Plugin::EOLTests' => '0', 'Dist::Zilla::Plugin::Git::Check' => '0', 'Dist::Zilla::Plugin::Git::Commit' => '0', 'Dist::Zilla::Plugin::Git::CommitBuild' => '0', 'Dist::Zilla::Plugin::Git::Contributors' => '0.006', 'Dist::Zilla::Plugin::Git::GatherDir' => '0', 'Dist::Zilla::Plugin::Git::NextRelease' => '0', 'Dist::Zilla::Plugin::Git::Tag' => '0', 'Dist::Zilla::Plugin::GithubMeta' => '0', 'Dist::Zilla::Plugin::License' => '0', 'Dist::Zilla::Plugin::MakeMaker' => '0', 'Dist::Zilla::Plugin::Manifest' => '0', 'Dist::Zilla::Plugin::ManifestSkip' => '0', 'Dist::Zilla::Plugin::MetaConfig' => '0', 'Dist::Zilla::Plugin::MetaData::BuiltWith' => '0', 'Dist::Zilla::Plugin::MetaJSON' => '0', 'Dist::Zilla::Plugin::MetaProvides::Package' => '1.14000001', 'Dist::Zilla::Plugin::MetaTests' => '0', 'Dist::Zilla::Plugin::MetaYAML' => '0', 'Dist::Zilla::Plugin::MinimumPerl' => '0', 'Dist::Zilla::Plugin::PodCoverageTests' => '0', 'Dist::Zilla::Plugin::PodSyntaxTests' => '0', 'Dist::Zilla::Plugin::PodWeaver' => '0', 'Dist::Zilla::Plugin::Prereqs' => '0', 'Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled' => '0', 'Dist::Zilla::Plugin::ReadmeAnyFromPod' => '0', 'Dist::Zilla::Plugin::ReadmeFromPod' => '0', 'Dist::Zilla::Plugin::RewriteVersion::Sanitized' => '0', 'Dist::Zilla::Plugin::RunExtraTests' => '0', 'Dist::Zilla::Plugin::Test::CPAN::Changes' => '0', 'Dist::Zilla::Plugin::Test::Compile::PerFile' => '0', 'Dist::Zilla::Plugin::Test::Kwalitee' => '0', 'Dist::Zilla::Plugin::Test::MinimumVersion' => '0', 'Dist::Zilla::Plugin::Test::Perl::Critic' => '0', 'Dist::Zilla::Plugin::Test::ReportPrereqs' => '0', 'Dist::Zilla::Plugin::TestRelease' => '0', 'Dist::Zilla::Plugin::Twitter' => '0', 'Dist::Zilla::Plugin::UploadToCPAN' => '0', 'Pod::Coverage::TrustPod' => '0', 'Test::CPAN::Changes' => '0.19', 'Test::CPAN::Meta' => '0', 'Test::Kwalitee' => '1.12', 'Test::Pod' => '1.41', 'Test::Pod::Coverage' => '1.08' }, 'suggests' => { 'Dist::Zilla::App::Command::bakeini' => '0.001001', 'Dist::Zilla::PluginBundle::Author::KENTNL' => '2.017002' } }, 'runtime' => { 'requires' => { 'Carp' => '0', 'Class::Tiny' => '0.010', 'Path::IsDev' => 'v0.2.2', 'Path::IsDev::Object' => '0', 'Path::Tiny' => '0.054', 'Scalar::Util' => '0', 'Sub::Exporter' => '0', 'perl' => '5.008', 'strict' => '0', 'utf8' => '0', 'warnings' => '0' } }, 'test' => { 'recommends' => { 'CPAN::Meta' => '2.120900', 'ExtUtils::MakeMaker' => '6.98', 'Test::More' => '1.001003' }, 'requires' => { 'ExtUtils::MakeMaker' => '0', 'File::Spec' => '0', 'FindBin' => '0', 'Test::More' => '0.89' } } }; $x; }Path-FindDev-0.5.2/t/00-compile/0000755000175000017500000000000012373555141014531 5ustar kentkentPath-FindDev-0.5.2/t/00-compile/lib_Path_FindDev_pm.t0000644000175000017500000000044712373555141020540 0ustar kentkentuse strict; use warnings; # This test was generated for # using by Dist::Zilla::Plugin::Test::Compile::PerFile ( @Author::KENTNL/Test::Compile::PerFile ) version 0.002002 # with template 01-basic.t.tpl use Test::More 0.89 tests => 1; require_ok("lib/Path/FindDev.pm"); Path-FindDev-0.5.2/t/00-compile/lib_Path_FindDev_Object_pm.t0000644000175000017500000000046512373555141022026 0ustar kentkentuse strict; use warnings; # This test was generated for # using by Dist::Zilla::Plugin::Test::Compile::PerFile ( @Author::KENTNL/Test::Compile::PerFile ) version 0.002002 # with template 01-basic.t.tpl use Test::More 0.89 tests => 1; require_ok("lib/Path/FindDev/Object.pm"); Path-FindDev-0.5.2/t/00-report-prereqs.t0000644000175000017500000001231412373555141016261 0ustar kentkent#!perl use strict; use warnings; # This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.019 use Test::More tests => 1; use ExtUtils::MakeMaker; use File::Spec; # from $version::LAX my $lax_version_re = qr/(?: undef | (?: (?:[0-9]+) (?: \. | (?:\.[0-9]+) (?:_[0-9]+)? )? | (?:\.[0-9]+) (?:_[0-9]+)? ) | (?: v (?:[0-9]+) (?: (?:\.[0-9]+)+ (?:_[0-9]+)? )? | (?:[0-9]+)? (?:\.[0-9]+){2,} (?:_[0-9]+)? ) )/x; # hide optional CPAN::Meta modules from prereq scanner # and check if they are available my $cpan_meta = "CPAN::Meta"; my $cpan_meta_pre = "CPAN::Meta::Prereqs"; my $HAS_CPAN_META = eval "require $cpan_meta; $cpan_meta->VERSION('2.120900')" && eval "require $cpan_meta_pre"; ## no critic # Verify requirements? my $DO_VERIFY_PREREQS = 1; sub _max { my $max = shift; $max = ( $_ > $max ) ? $_ : $max for @_; return $max; } sub _merge_prereqs { my ($collector, $prereqs) = @_; # CPAN::Meta::Prereqs object if (ref $collector eq $cpan_meta_pre) { return $collector->with_merged_prereqs( CPAN::Meta::Prereqs->new( $prereqs ) ); } # Raw hashrefs for my $phase ( keys %$prereqs ) { for my $type ( keys %{ $prereqs->{$phase} } ) { for my $module ( keys %{ $prereqs->{$phase}{$type} } ) { $collector->{$phase}{$type}{$module} = $prereqs->{$phase}{$type}{$module}; } } } return $collector; } my @include = qw( ); my @exclude = qw( ); # Add static prereqs to the included modules list my $static_prereqs = do 't/00-report-prereqs.dd'; # Merge all prereqs (either with ::Prereqs or a hashref) my $full_prereqs = _merge_prereqs( ( $HAS_CPAN_META ? $cpan_meta_pre->new : {} ), $static_prereqs ); # Add dynamic prereqs to the included modules list (if we can) my ($source) = grep { -f } 'MYMETA.json', 'MYMETA.yml'; if ( $source && $HAS_CPAN_META ) { if ( my $meta = eval { CPAN::Meta->load_file($source) } ) { $full_prereqs = _merge_prereqs($full_prereqs, $meta->prereqs); } } else { $source = 'static metadata'; } my @full_reports; my @dep_errors; my $req_hash = $HAS_CPAN_META ? $full_prereqs->as_string_hash : $full_prereqs; # Add static includes into a fake section for my $mod (@include) { $req_hash->{other}{modules}{$mod} = 0; } for my $phase ( qw(configure build test runtime develop other) ) { next unless $req_hash->{$phase}; next if ($phase eq 'develop' and not $ENV{AUTHOR_TESTING}); for my $type ( qw(requires recommends suggests conflicts modules) ) { next unless $req_hash->{$phase}{$type}; my $title = ucfirst($phase).' '.ucfirst($type); my @reports = [qw/Module Want Have/]; for my $mod ( sort keys %{ $req_hash->{$phase}{$type} } ) { next if $mod eq 'perl'; next if grep { $_ eq $mod } @exclude; my $file = $mod; $file =~ s{::}{/}g; $file .= ".pm"; my ($prefix) = grep { -e File::Spec->catfile($_, $file) } @INC; my $want = $req_hash->{$phase}{$type}{$mod}; $want = "undef" unless defined $want; $want = "any" if !$want && $want == 0; my $req_string = $want eq 'any' ? 'any version required' : "version '$want' required"; if ($prefix) { my $have = MM->parse_version( File::Spec->catfile($prefix, $file) ); $have = "undef" unless defined $have; push @reports, [$mod, $want, $have]; if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META && $type eq 'requires' ) { if ( $have !~ /\A$lax_version_re\z/ ) { push @dep_errors, "$mod version '$have' cannot be parsed ($req_string)"; } elsif ( ! $full_prereqs->requirements_for( $phase, $type )->accepts_module( $mod => $have ) ) { push @dep_errors, "$mod version '$have' is not in required range '$want'"; } } } else { push @reports, [$mod, $want, "missing"]; if ( $DO_VERIFY_PREREQS && $type eq 'requires' ) { push @dep_errors, "$mod is not installed ($req_string)"; } } } if ( @reports ) { push @full_reports, "=== $title ===\n\n"; my $ml = _max( map { length $_->[0] } @reports ); my $wl = _max( map { length $_->[1] } @reports ); my $hl = _max( map { length $_->[2] } @reports ); splice @reports, 1, 0, ["-" x $ml, "-" x $wl, "-" x $hl]; push @full_reports, map { sprintf(" %*s %*s %*s\n", -$ml, $_->[0], $wl, $_->[1], $hl, $_->[2]) } @reports; push @full_reports, "\n"; } } } if ( @full_reports ) { diag "\nVersions for all modules listed in $source (including optional ones):\n\n", @full_reports; } if ( @dep_errors ) { diag join("\n", "\n*** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING ***\n", "The following REQUIRED prerequisites were not satisfied:\n", @dep_errors, "\n" ); } pass; # vim: ts=4 sts=4 sw=4 et: Path-FindDev-0.5.2/t/basic.t0000644000175000017500000000360112373555141014132 0ustar kentkent use strict; use warnings; use Test::More; use FindBin; use Path::FindDev qw(find_dev); use Path::Tiny qw(path); sub cmp_paths { my ( $search, $real ) = @_; my $searched = find_dev($search); return unless ok( $searched, 'find_dev returned something' ); $searched = $searched->absolute->stringify; my $realed = path($real)->absolute->stringify; is( $searched, $realed, 'found and expected match' ); } cmp_paths( $FindBin::Bin, path($FindBin::Bin)->parent ); if ( $ENV{SYSTEM_PATH_TEST} ) { my $t_dir = path($FindBin::Bin); my $source_root = $t_dir->parent; my $outside_path = $source_root->parent; # PROJECT_ROOT/../ # if _THIS_ file is stored at SOMEPATH/Path-FindDev/.build/randomletters/t/basic.t # then instead of doing tree traversal from # SOMEPATH/Path-FindDev/.build/randomletters/ # do it from # SOMEPATH # # More annoying, during dzil release testing, the path is # is stored at SOMEPATH/Path-FindDev/.build/randomletters/Path-IsDev-0.4/t/basic.t if ( $outside_path->basename eq '.build' ) { $outside_path = $outside_path->parent->parent; } elsif ( $outside_path->parent->basename eq '.build' ) { $outside_path = $outside_path->parent->parent->parent; } diag "External search started at " . $outside_path; if ( not is( find_dev($outside_path), undef, 'Finding a dev directory above the project directory should miss' ) ) { no warnings 'once'; local $Path::IsDev::Object::DEBUG = 1; local $Path::FindDev::Object::DEBUG = 1; diag "As the previous test failed, debug diagnosics for Path::IsDev are being turned on"; diag "These will hopefully tell you what warts your filesystem has that results in false-postives for dev dirs"; find_dev($outside_path); } } else { diag "System path sanity check skipped due to potential security risks, set ENV{SYSTEM_PATH_TEST} if you wish to run this test"; } done_testing; Path-FindDev-0.5.2/maint/0000755000175000017500000000000012373555141013531 5ustar kentkentPath-FindDev-0.5.2/maint/perlcritic.rc.gen.pl0000744000175000017500000000315712373555141017410 0ustar kentkent#!/usr/bin/env perl # FILENAME: bundle_to_ini.pl # CREATED: 02/06/14 01:48:56 by Kent Fredric (kentnl) # ABSTRACT: Write an INI file from a bundle use 5.008; # utf8 use strict; use warnings; use utf8; our $VERSION = 0.001; use Carp qw( croak carp ); use Perl::Critic::ProfileCompiler::Util qw( create_bundle ); use Path::Tiny qw(path); ## no critic (ErrorHandling::RequireUseOfExceptions) my $bundle = create_bundle('Example::Author::KENTNL'); $bundle->configure; my @stopwords = (qw( FindDev )); for my $var ( sort @stopwords ) { $bundle->add_or_append_policy_field( 'Documentation::PodSpelling' => ( 'stop_words' => $var ) ); } #$bundle->add_or_append_policy_field( # 'Subroutines::ProhibitCallsToUndeclaredSubs' => ( 'exempt_subs' => 'String::Formatter::str_rf' ), ); # #$bundle->remove_policy('ErrorHandling::RequireCarping'); #$bundle->remove_policy('NamingConventions::Capitalization'); $bundle->remove_policy('ValuesAndExpressions::RequireNumericVersion'); my $inf = $bundle->actionlist->get_inflated; my $config = $inf->apply_config; { my $rcfile = path('./perlcritic.rc')->openw_utf8; $rcfile->print( $config->as_ini, "\n" ); close $rcfile or croak 'Something fubared closing perlcritic.rc'; } my $deps = $inf->own_deps; { my $target = path('./misc'); $target->mkpath if not $target->is_dir; my $depsfile = $target->child('perlcritic.deps')->openw_utf8; for my $key ( sort keys %{$deps} ) { $depsfile->printf( "%s~%s\n", $key, $deps->{$key} ); *STDERR->printf( "%s => %s\n", $key, $deps->{$key} ); } close $depsfile or carp 'Something fubared closing perlcritic.deps'; } Path-FindDev-0.5.2/misc/0000755000175000017500000000000012373555141013354 5ustar kentkentPath-FindDev-0.5.2/misc/Changes.deps.all0000644000175000017500000001510512373555141016352 0ustar kentkentThis file contains ALL changes in dependencies in both REQUIRED / OPTIONAL dependencies for all phases (configure/build/runtime/test/develop) 0.5.2 [Added / develop requires] - Dist::Zilla::Plugin::Git::Contributors 0.006 [Added / test requires] - File::Spec [Changed / configure requires] - ExtUtils::MakeMaker 6.30 → 0 [Changed / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL 2.016002 → 2.017002 [Changed / runtime requires] - Path::Tiny 0.038 → 0.054 [Changed / test recommends] - CPAN::Meta 0 → 2.120900 [Removed / test recommends] - CPAN::Meta::Requirements 2.120900 [Removed / test requires] - File::Spec::Functions - List::Util - version 0.5.1 2014-07-13T17:54:11Z [Added / develop requires] - Dist::Zilla::Plugin::BumpVersionAfterRelease - Dist::Zilla::Plugin::CopyFilesFromBuild - Dist::Zilla::Plugin::RewriteVersion::Sanitized [Added / develop suggests] - Dist::Zilla::App::Command::bakeini 0.001001 - Dist::Zilla::PluginBundle::Author::KENTNL 2.016002 [Changed / configure recommends] - ExtUtils::MakeMaker 6.90 → 6.98 [Changed / test recommends] - ExtUtils::MakeMaker 6.90 → 6.98 - Test::More 1.001002 → 1.001003 [Removed / develop requires] - Dist::Zilla::Plugin::Git::NextVersion::Sanitized - Dist::Zilla::Plugin::PkgVersion - Dist::Zilla::PluginBundle::Author::KENTNL 2.012000 [Removed / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL::Lite v1.3.0 0.5.0 2014-03-04T11:03:22Z [Added / configure recommends] - ExtUtils::MakeMaker 6.90 [Added / configure requires] - ExtUtils::MakeMaker 6.30 [Added / develop requires] - Dist::Zilla::Plugin::Git::NextRelease - Dist::Zilla::Plugin::Git::NextVersion::Sanitized - Dist::Zilla::Plugin::MakeMaker - Dist::Zilla::Plugin::MinimumPerl - Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled - Dist::Zilla::Plugin::RunExtraTests - Dist::Zilla::Plugin::Test::Compile::PerFile - Dist::Zilla::Plugin::Test::ReportPrereqs [Added / runtime requires] - utf8 [Added / test recommends] - CPAN::Meta - CPAN::Meta::Requirements 2.120900 - ExtUtils::MakeMaker 6.90 - Test::More 1.001002 [Added / test requires] - ExtUtils::MakeMaker - File::Spec::Functions - List::Util - version [Changed / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL 2.001000 → 2.012000 [Changed / runtime requires] - perl 5.006 → 5.008 [Changed / test requires] - Test::More 1.001002 → 0.89 [Removed / build requires] - Module::Build 0.4008 [Removed / configure requires] - Module::Build 0.4008 [Removed / develop requires] - Dist::Zilla::Plugin::Author::KENTNL::MinimumPerl - Dist::Zilla::Plugin::CheckExtraTests - Dist::Zilla::Plugin::Git::NextVersion - Dist::Zilla::Plugin::ModuleBuild - Dist::Zilla::Plugin::NextRelease - Dist::Zilla::Plugin::Prereqs::MatchInstalled - Dist::Zilla::Plugin::PruneCruft - Dist::Zilla::Plugin::ReportVersions::Tiny - Dist::Zilla::Plugin::Test::Compile - version 0.9901 [Removed / test requires] - File::Spec - IO::Handle - IPC::Open3 0.4.2 2013-11-09T16:06:27Z [Added / develop requires] - Dist::Zilla::Plugin::Author::KENTNL::MinimumPerl - Dist::Zilla::Plugin::Authority 1.006 - Dist::Zilla::Plugin::AutoPrereqs - Dist::Zilla::Plugin::CheckExtraTests - Dist::Zilla::Plugin::ConfirmRelease - Dist::Zilla::Plugin::EOLTests - Dist::Zilla::Plugin::Git::Check - Dist::Zilla::Plugin::Git::Commit - Dist::Zilla::Plugin::Git::CommitBuild - Dist::Zilla::Plugin::Git::GatherDir - Dist::Zilla::Plugin::Git::NextVersion - Dist::Zilla::Plugin::Git::Tag - Dist::Zilla::Plugin::GithubMeta - Dist::Zilla::Plugin::License - Dist::Zilla::Plugin::Manifest - Dist::Zilla::Plugin::ManifestSkip - Dist::Zilla::Plugin::MetaConfig - Dist::Zilla::Plugin::MetaData::BuiltWith - Dist::Zilla::Plugin::MetaJSON - Dist::Zilla::Plugin::MetaProvides::Package 1.14000001 - Dist::Zilla::Plugin::MetaTests - Dist::Zilla::Plugin::MetaYAML - Dist::Zilla::Plugin::ModuleBuild - Dist::Zilla::Plugin::NextRelease - Dist::Zilla::Plugin::PkgVersion - Dist::Zilla::Plugin::PodCoverageTests - Dist::Zilla::Plugin::PodSyntaxTests - Dist::Zilla::Plugin::PodWeaver - Dist::Zilla::Plugin::Prereqs - Dist::Zilla::Plugin::Prereqs::MatchInstalled - Dist::Zilla::Plugin::PruneCruft - Dist::Zilla::Plugin::ReadmeAnyFromPod - Dist::Zilla::Plugin::ReadmeFromPod - Dist::Zilla::Plugin::ReportVersions::Tiny - Dist::Zilla::Plugin::Test::CPAN::Changes - Dist::Zilla::Plugin::Test::Compile - Dist::Zilla::Plugin::Test::Kwalitee - Dist::Zilla::Plugin::Test::MinimumVersion - Dist::Zilla::Plugin::Test::Perl::Critic - Dist::Zilla::Plugin::TestRelease - Dist::Zilla::Plugin::Twitter - Dist::Zilla::Plugin::UploadToCPAN [Changed / build requires] - Module::Build 0.4007 → 0.4008 [Changed / configure requires] - Module::Build 0.4007 → 0.4008 [Changed / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL 2.000000 → 2.001000 [Changed / runtime requires] - perl v5.10.0 → 5.006 [Changed / test requires] - Test::More 0.99 → 1.001002 0.4.1 2013-10-23T19:08:22Z [Changed / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL v1.9.0 → 2.000000 - Test::Kwalitee 1.08 → 1.12 [Changed / test requires] - Test::More 0.98 → 0.99 0.4.0 2013-10-01T22:51:43Z [Added / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL v1.9.0 [Added / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL::Lite v1.3.0 [Changed / runtime requires] - Path::Tiny 0 → 0.038 [Removed / develop recommends] - Dist::Zilla::PluginBundle::Author::KENTNL::Lite v1.3.0 [Removed / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL::Lite [Removed / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL v1.8.3 [Removed / runtime requires] - File::Spec 0.3.2 2013-09-26T07:21:34Z [Added / test requires] - File::Spec 0.3.1 2013-09-18T18:28:55Z [Changed / runtime requires] - Class::Tiny 0.005 → 0.010 0.3.0 2013-09-18T03:06:21Z [Added / develop requires] - Test::Kwalitee 1.08 [Added / runtime requires] - Class::Tiny 0.005 [Added / test requires] - IO::Handle - IPC::Open3 [Changed / build requires] - Module::Build 0.4005 → 0.4007 [Changed / configure requires] - Module::Build 0.4005 → 0.4007 [Changed / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL v1.7.4 → v1.8.3 [Removed / runtime requires] - Moo [Removed / test requires] - File::Find - File::Temp 0.2.0 2013-07-07T16:36:18Z [Added / runtime requires] - Carp - Moo - Path::IsDev::Object - Scalar::Util [Changed / runtime requires] - Path::IsDev v0.1.1 → v0.2.2 Path-FindDev-0.5.2/misc/Changes.deps0000644000175000017500000000407512373555141015607 0ustar kentkentThis file contains changes in REQUIRED dependencies for standard CPAN phases (configure/build/runtime/test) 0.5.2 [Added / test requires] - File::Spec [Changed / configure requires] - ExtUtils::MakeMaker 6.30 → 0 [Changed / runtime requires] - Path::Tiny 0.038 → 0.054 [Removed / test requires] - File::Spec::Functions - List::Util - version 0.5.1 2014-07-13T17:54:11Z 0.5.0 2014-03-04T11:03:22Z [Added / configure requires] - ExtUtils::MakeMaker 6.30 [Added / runtime requires] - utf8 [Added / test requires] - ExtUtils::MakeMaker - File::Spec::Functions - List::Util - version [Changed / runtime requires] - perl 5.006 → 5.008 [Changed / test requires] - Test::More 1.001002 → 0.89 [Removed / build requires] - Module::Build 0.4008 [Removed / configure requires] - Module::Build 0.4008 [Removed / test requires] - File::Spec - IO::Handle - IPC::Open3 0.4.2 2013-11-09T16:06:27Z [Changed / build requires] - Module::Build 0.4007 → 0.4008 [Changed / configure requires] - Module::Build 0.4007 → 0.4008 [Changed / runtime requires] - perl v5.10.0 → 5.006 [Changed / test requires] - Test::More 0.99 → 1.001002 0.4.1 2013-10-23T19:08:22Z [Changed / test requires] - Test::More 0.98 → 0.99 0.4.0 2013-10-01T22:51:43Z [Changed / runtime requires] - Path::Tiny 0 → 0.038 [Removed / runtime requires] - File::Spec 0.3.2 2013-09-26T07:21:34Z [Added / test requires] - File::Spec 0.3.1 2013-09-18T18:28:55Z [Changed / runtime requires] - Class::Tiny 0.005 → 0.010 0.3.0 2013-09-18T03:06:21Z [Added / runtime requires] - Class::Tiny 0.005 [Added / test requires] - IO::Handle - IPC::Open3 [Changed / build requires] - Module::Build 0.4005 → 0.4007 [Changed / configure requires] - Module::Build 0.4005 → 0.4007 [Removed / runtime requires] - Moo [Removed / test requires] - File::Find - File::Temp 0.2.0 2013-07-07T16:36:18Z [Added / runtime requires] - Carp - Moo - Path::IsDev::Object - Scalar::Util [Changed / runtime requires] - Path::IsDev v0.1.1 → v0.2.2 Path-FindDev-0.5.2/misc/Changes.deps.dev0000644000175000017500000001051312373555141016356 0ustar kentkentThis file contains changes to DEVELOPMENT dependencies only ( both REQUIRED and OPTIONAL ) 0.5.2 [Added / develop requires] - Dist::Zilla::Plugin::Git::Contributors 0.006 [Changed / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL 2.016002 → 2.017002 0.5.1 2014-07-13T17:54:11Z [Added / develop requires] - Dist::Zilla::Plugin::BumpVersionAfterRelease - Dist::Zilla::Plugin::CopyFilesFromBuild - Dist::Zilla::Plugin::RewriteVersion::Sanitized [Added / develop suggests] - Dist::Zilla::App::Command::bakeini 0.001001 - Dist::Zilla::PluginBundle::Author::KENTNL 2.016002 [Removed / develop requires] - Dist::Zilla::Plugin::Git::NextVersion::Sanitized - Dist::Zilla::Plugin::PkgVersion - Dist::Zilla::PluginBundle::Author::KENTNL 2.012000 [Removed / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL::Lite v1.3.0 0.5.0 2014-03-04T11:03:22Z [Added / develop requires] - Dist::Zilla::Plugin::Git::NextRelease - Dist::Zilla::Plugin::Git::NextVersion::Sanitized - Dist::Zilla::Plugin::MakeMaker - Dist::Zilla::Plugin::MinimumPerl - Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled - Dist::Zilla::Plugin::RunExtraTests - Dist::Zilla::Plugin::Test::Compile::PerFile - Dist::Zilla::Plugin::Test::ReportPrereqs [Changed / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL 2.001000 → 2.012000 [Removed / develop requires] - Dist::Zilla::Plugin::Author::KENTNL::MinimumPerl - Dist::Zilla::Plugin::CheckExtraTests - Dist::Zilla::Plugin::Git::NextVersion - Dist::Zilla::Plugin::ModuleBuild - Dist::Zilla::Plugin::NextRelease - Dist::Zilla::Plugin::Prereqs::MatchInstalled - Dist::Zilla::Plugin::PruneCruft - Dist::Zilla::Plugin::ReportVersions::Tiny - Dist::Zilla::Plugin::Test::Compile - version 0.9901 0.4.2 2013-11-09T16:06:27Z [Added / develop requires] - Dist::Zilla::Plugin::Author::KENTNL::MinimumPerl - Dist::Zilla::Plugin::Authority 1.006 - Dist::Zilla::Plugin::AutoPrereqs - Dist::Zilla::Plugin::CheckExtraTests - Dist::Zilla::Plugin::ConfirmRelease - Dist::Zilla::Plugin::EOLTests - Dist::Zilla::Plugin::Git::Check - Dist::Zilla::Plugin::Git::Commit - Dist::Zilla::Plugin::Git::CommitBuild - Dist::Zilla::Plugin::Git::GatherDir - Dist::Zilla::Plugin::Git::NextVersion - Dist::Zilla::Plugin::Git::Tag - Dist::Zilla::Plugin::GithubMeta - Dist::Zilla::Plugin::License - Dist::Zilla::Plugin::Manifest - Dist::Zilla::Plugin::ManifestSkip - Dist::Zilla::Plugin::MetaConfig - Dist::Zilla::Plugin::MetaData::BuiltWith - Dist::Zilla::Plugin::MetaJSON - Dist::Zilla::Plugin::MetaProvides::Package 1.14000001 - Dist::Zilla::Plugin::MetaTests - Dist::Zilla::Plugin::MetaYAML - Dist::Zilla::Plugin::ModuleBuild - Dist::Zilla::Plugin::NextRelease - Dist::Zilla::Plugin::PkgVersion - Dist::Zilla::Plugin::PodCoverageTests - Dist::Zilla::Plugin::PodSyntaxTests - Dist::Zilla::Plugin::PodWeaver - Dist::Zilla::Plugin::Prereqs - Dist::Zilla::Plugin::Prereqs::MatchInstalled - Dist::Zilla::Plugin::PruneCruft - Dist::Zilla::Plugin::ReadmeAnyFromPod - Dist::Zilla::Plugin::ReadmeFromPod - Dist::Zilla::Plugin::ReportVersions::Tiny - Dist::Zilla::Plugin::Test::CPAN::Changes - Dist::Zilla::Plugin::Test::Compile - Dist::Zilla::Plugin::Test::Kwalitee - Dist::Zilla::Plugin::Test::MinimumVersion - Dist::Zilla::Plugin::Test::Perl::Critic - Dist::Zilla::Plugin::TestRelease - Dist::Zilla::Plugin::Twitter - Dist::Zilla::Plugin::UploadToCPAN [Changed / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL 2.000000 → 2.001000 0.4.1 2013-10-23T19:08:22Z [Changed / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL v1.9.0 → 2.000000 - Test::Kwalitee 1.08 → 1.12 0.4.0 2013-10-01T22:51:43Z [Added / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL v1.9.0 [Added / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL::Lite v1.3.0 [Removed / develop recommends] - Dist::Zilla::PluginBundle::Author::KENTNL::Lite v1.3.0 [Removed / develop requires] - Dist::Zilla::PluginBundle::Author::KENTNL::Lite [Removed / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL v1.8.3 0.3.2 2013-09-26T07:21:34Z 0.3.1 2013-09-18T18:28:55Z 0.3.0 2013-09-18T03:06:21Z [Added / develop requires] - Test::Kwalitee 1.08 [Changed / develop suggests] - Dist::Zilla::PluginBundle::Author::KENTNL v1.7.4 → v1.8.3 0.2.0 2013-07-07T16:36:18Z Path-FindDev-0.5.2/misc/Changes.deps.opt0000644000175000017500000000154112373555141016403 0ustar kentkentThis file contains changes in OPTIONAL dependencies for standard CPAN phases (configure/build/runtime/test) 0.5.2 [Changed / test recommends] - CPAN::Meta 0 → 2.120900 [Removed / test recommends] - CPAN::Meta::Requirements 2.120900 0.5.1 2014-07-13T17:54:11Z [Changed / configure recommends] - ExtUtils::MakeMaker 6.90 → 6.98 [Changed / test recommends] - ExtUtils::MakeMaker 6.90 → 6.98 - Test::More 1.001002 → 1.001003 0.5.0 2014-03-04T11:03:22Z [Added / configure recommends] - ExtUtils::MakeMaker 6.90 [Added / test recommends] - CPAN::Meta - CPAN::Meta::Requirements 2.120900 - ExtUtils::MakeMaker 6.90 - Test::More 1.001002 0.4.2 2013-11-09T16:06:27Z 0.4.1 2013-10-23T19:08:22Z 0.4.0 2013-10-01T22:51:43Z 0.3.2 2013-09-26T07:21:34Z 0.3.1 2013-09-18T18:28:55Z 0.3.0 2013-09-18T03:06:21Z 0.2.0 2013-07-07T16:36:18Z Path-FindDev-0.5.2/misc/perlcritic.deps0000644000175000017500000000137112373555141016373 0ustar kentkentPerl::Critic::Policy::Documentation::PodSpelling~0 Perl::Critic::Policy::Lax::RequireExplicitPackage::ExceptForPragmata~0 Perl::Critic::Policy::Variables::ProhibitUnusedVarsStricter~0 Perl::Critic::ProfileCompiler::Bundle::Bangs~0 Perl::Critic::ProfileCompiler::Bundle::Compatibility~0 Perl::Critic::ProfileCompiler::Bundle::Core~0 Perl::Critic::ProfileCompiler::Bundle::Deprecated~0 Perl::Critic::ProfileCompiler::Bundle::Itch~0 Perl::Critic::ProfileCompiler::Bundle::Lax~0 Perl::Critic::ProfileCompiler::Bundle::Moose~0 Perl::Critic::ProfileCompiler::Bundle::More~0 Perl::Critic::ProfileCompiler::Bundle::Pulp~0 Perl::Critic::ProfileCompiler::Bundle::StricterSubs~0 Perl::Critic::ProfileCompiler::Bundle::Swift~0 Perl::Critic::ProfileCompiler::Bundle::Tics~0 Path-FindDev-0.5.2/.travis.yml0000644000175000017500000000300312373555141014526 0ustar kentkentlanguage: perl matrix: allow_failures: - perl: "5.8" - env: STERILIZE_ENV=0 RELEASE_TESTING=1 AUTHOR_TESTING=1 - env: STERILIZE_ENV=0 DEVELOPER_DEPS=1 include: - perl: "5.8" env: STERILIZE_ENV=0 - perl: "5.10" env: STERILIZE_ENV=0 - perl: "5.12" env: STERILIZE_ENV=0 - perl: "5.14" env: STERILIZE_ENV=0 - perl: "5.16" env: STERILIZE_ENV=0 - perl: "5.20" env: STERILIZE_ENV=0 - perl: "5.21" env: STERILIZE_ENV=0 - perl: "5.8" env: STERILIZE_ENV=1 - perl: "5.10" env: STERILIZE_ENV=1 - perl: "5.20" env: STERILIZE_ENV=1 - perl: "5.21" env: STERILIZE_ENV=1 - perl: "5.21" env: STERILIZE_ENV=0 DEVELOPER_DEPS=1 - perl: "5.21" env: STERILIZE_ENV=0 RELEASE_TESTING=1 AUTHOR_TESTING=1 - perl: "5.21" env: STERILIZE_ENV=0 COVERAGE_TESTING=1 before_install: - perlbrew list - time git clone --depth 10 https://github.com/kentfredric/travis-scripts.git maint-travis-ci - time git -C ./maint-travis-ci reset --hard master - time perl ./maint-travis-ci/branch_reset.pl - time perl ./maint-travis-ci/sterilize_env.pl install: - time perl ./maint-travis-ci/install_deps_early.pl - time perl ./maint-travis-ci/install_deps.pl before_script: - time perl ./maint-travis-ci/before_script.pl script: - time perl ./maint-travis-ci/script.pl after_failure: - perl ./maint-travis-ci/report_fail_ctx.pl branches: only: - "master" - "build/master" - "releases" Path-FindDev-0.5.2/README0000644000175000017500000000446612373555141013313 0ustar kentkentNAME Path::FindDev - Find a development path somewhere in an upper hierarchy. VERSION version 0.5.2 DESCRIPTION This package is mostly a glue layer around "Path::IsDev" with a few directory walking tricks. use Path::FindDev qw( find_dev ); if ( my $root = find_dev('/some/path/to/something/somewhere')) { print "development root = $root"; } else { print "No development root :("; } FUNCTIONS find_dev my $result = find_dev('/some/path'); If a "dev" directory is found at, or above, "/some/path", it will be returned as a "Path::Tiny" If you pass configurations to import: use Path::FindDev find_dev => { set => $someset }; Then the exported "find_dev" will pass that set name to "Path::IsDev". Though you should only do this if * the default set is inadequate for your usage * you don't want the set to be overridden by %ENV Additionally, you can call find_dev directly: require Path::FindDev; my $result = Path::FindDev::find_dev('/some/path'); Which by design inhibits your capacity to specify an alternative set in code. EXAMPLE USE-CASES Have you ever found yourself doing use FindBin; use lib "$FindBin::Bin/../../../tlib" In a test? Have you found yourself paranoid of file-system semantics and tried use FindBin; use Path::Tiny qw(path) use lib path($FindBin::Bin)->parent->parent->parent->child('tlib')->stringify; Have you ever done either of the above in a test, only to find you've needed to move the test to a deeper hierarchy, and thus, need to re-write all your path resolution? Have you ever had this problem for multiple files? No more! use FindBin; use Path::FindDev qw(find_dev); use lib find_dev($FindBin::Bin)->child('t','tlib')->stringify; ^ Should work, regardless of which test you put it in, and regardless of what $CWD happens to be when you call it. AUTHOR Kent Fredric COPYRIGHT AND LICENSE This software is copyright (c) 2014 by Kent Fredric . This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Path-FindDev-0.5.2/.gitignore0000644000175000017500000000002612373555141014407 0ustar kentkent.build Path-FindDev-* Path-FindDev-0.5.2/layout/0000755000175000017500000000000012373555141013736 5ustar kentkentPath-FindDev-0.5.2/layout/self_structure.png0000644000175000017500000002044612373555141017523 0ustar kentkentPNG  IHDRzsD IDATxy\ur(r *rhiGxPiJ=>Xm^^dǣR &<¦ Xʍ qpCGvf7뼾of!ҀB!BG  Әpn߶2''|||&8d11Gn߶2!JBHAa0 z"<9a```@z㹚`@!0Ba0 `@9 B!S! 0`@%!]Z3Ba0@U^Z;q庿e-: T˴՘3]K~S0! g|<őss!S[7>kyhkO2~bZGEh#4WKۚ˭_{Owu%ȓ߷-{:eM9 p5%eGL؟_p3=zw79\IuY+`h.rUv6v$[`_`9ŕw]8i =} 0 td@ >~,5rͥ>@lU=|7k{0/A3"h:}B05 l:IdUÜ@"0qu[~{GOCr@â,;7>Hy>+C;Q\Cmz`w!KK@c3 J5p,FdɨwxnʒFL)ʏ[獲 &z^ 9(q=a’+ -8t GZt0.@tbR.Z+8A]|S\wޢ=x pLnJT #Y5s N1=J(^nԱ'j5Upp4>hŝVje;7I5y݋-Vg-“EFۿ#F3޴m.Tv QM^5G]ecm5A=}karQW$X*W3Tszzl''SQMؑxo>[)d)U|ߦ]7ϭ},@?4(smX>ߵ#qkf8Wte͋wS]:~+Y0eM]ێ) 'ps uk'~_F!l]wU~pai&v* {`zm}5N `p^n  S,-LUܾjŀwNN3|WȽEb#q2tvۖr0ZHMO5}`U [XϿX 3gg`>o#nʛ cҾ$ODҳo="%To `>C"%-Y|YZ_9;<6pʼn/]JRYdƊ|( t>ݞSI)Lo}dC0Ț e'vYŷ<^ gNJ軱od9郡Cu 5,OyueW>l 1X>/oɳi`2-^*Tjg~x`JSVSo1j2T9[@ir`pX]W iU( -\֮`,vt4Ci+I٣]#tZrQB c?,UN~մP"t\ި+.3qO>~!4;J'M6f_\,#L^Էu#[XYx4W|tv{RýD#OxV~mנUi :at5/ rLm: ־ ;P^['K]Ӝn`6jeLF^nڡaFd܂6|u"OvCqWьZQ$rWWPr+S 0=:b!=ǠJ1Æ-&/N\B#̶pkJr lb0XiK(r+z8x?O`QE 0&KzYhYw%iH*bСOn3K?P}rz;<0h C/+trYԠ)mBB?Òi4"*~WN@Oذ7ѼĐļsڌ{3{աK Mҟ |N/ O>kM>#` d '1BsĘrH@7z惁.n({0BxŀP[F;a(قmW TA'ECEHU.@7;X \=[u { xR~/۷0 0 0 0 0 0\)ڐI)%ca~p;nԵ$7"*BBdkW\k׵/.DٯHhQڨ$S E4LMR{ޯ99y1}s`> rhk$29 ]׏`0 :I `13`0 `1`0 `0X LPH ŀŀ`1`0X  %a0X  b`0/0Gj3xkۭ](/"rl7 )~Q~vvaםV!+޾h sIsC&Oofc1`0| H%ڊn. A٥v&_.{X^mEhp*Egc&38QRsB  A`Sy{P{ SOi[Iw=TUxQ,&i!C2:wQSu_qlF'$[:?ac'BHy~wh'vA 2*WsVxōcdk|J9 Σ֦=9?( uNco'jZX5]/5qV .sբ@ l&bGub1t8\{S//}_3]u5[wY +J8l&*Aϛ89M}w!4r)yȫJef'h;xd;k4Y­zvvd*x:E(+}#/ g]QWOU1"XnP}u׶8msʈ!Ԓ{*C 8.=h׉MXY'f fGE( t T4$Si  D;#B Rc1tP.:D- !{UMuOۣ߼~4=tVԽ-XauBR_ %E_Rcޗl;#yzJ&9K]lO`9n#*rJHU)G,4 ClEDb g & Ӷ;DQmV@3f ސ;X ױ M+mob%,P*kg ~L*o)~M-1ÝM u2+E#ezʋz1/rMw[GmNr ߐSbxv2.1rͬT9K\ هfW/ۙ^1K3_JСaT`9%~E蔮7l{͉.?dӨDFwGR%y>2i 1X.Bϴk [UHsZȋГ;* |$<\%Iɖp |$ZI4 z$ymCǫtFRQhz}Y?eDŽZQVŹIoӥg3j7 bك,=5Y^Fg/CNGvRjٳ6g r_C׸Si *\YgMf¹|SpGJ悋77_P- Y8hCK(.M 11 KLQB] NY&c 6 "r(1`N-&XV{x$"`q Fo|nAUm9c ?xcGh=d'VB%Pa_tVlMd:AkZԽfz_ޜf!ϑA7&ٜN5f+v%ZBHEݗ&~,RZ=ΑWt?Q)!f !g%C}~SUf=wK4@b<ޤ`+o4?>ݒquZ2y>H牷i"1#fN z*S|sһL-ƚK Rm+1ej!OY_"'&R9ʌ5$Aٰ/a0, X5)f9 b`]w\tD!sVAG2AotЭS7'l(xj;A+D [6b`>Z$e$((W2ߝrg/H 5 p!tx{Qx6qc1L+:?V#&,g|gAtK HZv}!=W|qA'53 bԋU=[n&c[(z1T\Pc$.~'S'{vTt.iQ ,  H4#h.BK`!IbةnOAXI$Z1dx J|ШIa1"-)Wz䛕0&m['g~p'$ko#2 $/į+,-i,j9Hx~c  2e5U{2dܨ*p0ħ43X-j}K+VڬZ!f\S呋5~͆9dA(_ru:xk=7g$$J ǰ $pOMWZsC:U-}Zƅl0 }}Y X auC]ܐ 90!~SLiW%mSG򛊁+יQ 7њ2HD9^I YHΌڂ+d ;"s.M5E¬[5SHNv 6r`LJ}g0 h\'*B#ԀD/Cepzw+Z/7HMtQ9[ C$rSo(ƫzh Cv;#8҇+Sv7 є"dn`1G JT,M21?柲6s/9"1hϘoAԞ8<,K{|>ފ!SAPd))=)b| *iNc1tPT;|.gC6S5B)dUwWN>^<R_=Lig :21SC`·7 BRo.j?j"Sw5̷B&rxX  #ߚŀ`ktOy r{o>a}{i~oAhFe C  |O5 A}ngg{]\TL IH `1`0 F1`0 `;60GAS{vh^wL@Ja@w{~WUWE+ڃkf?k> _1*֢b6*6O0 ͍IENDB`Path-FindDev-0.5.2/layout/self_structure.dot0000644000175000017500000000125712373555141017524 0ustar kentkentstrict digraph Perl { graph [compound=1, concentrate=1, overlap=false, rankdir=LR, ranksep=1, smoothing=triangle, splines=spline]; node [label="\N", shape=record, style=dotted]; edge [minlen=1]; "Class::Tiny::Object" [label=" Class::Tiny::Object"]; "Path::FindDev" [label="{{ exporter}| Path::FindDev}"]; "Path::FindDev::Object" [label="{{ class}| Path::FindDev::Object}", shape=Mrecord, style=solid, color="#7e1e9c", fontsize=7, height="0.1"]; "Class::Tiny::Object" -> "Path::FindDev::Object" [arrowhead=open, arrowsize="0.5", color="#ff81c0", dir=forward, fontsize=6, headclip=1, label="inherited by", samehead=head, tailclip=1, weight=10]; } Path-FindDev-0.5.2/META.yml0000644000175000017500000004443412373555141013703 0ustar kentkent--- abstract: 'Find a development path somewhere in an upper hierarchy.' author: - 'Kent Fredric ' build_requires: ExtUtils::MakeMaker: '0' File::Spec: '0' FindBin: '0' Test::More: '0.89' configure_requires: ExtUtils::MakeMaker: '0' dynamic_config: '0' generated_by: 'Dist::Zilla version 5.020, CPAN::Meta::Converter version 2.142060' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: '1.4' name: Path-FindDev provides: Path::FindDev: file: lib/Path/FindDev.pm version: v0.5.2 Path::FindDev::Object: file: lib/Path/FindDev/Object.pm version: v0.5.2 requires: Carp: '0' Class::Tiny: '0.010' Path::IsDev: v0.2.2 Path::IsDev::Object: '0' Path::Tiny: '0.054' Scalar::Util: '0' Sub::Exporter: '0' perl: '5.008' strict: '0' utf8: '0' warnings: '0' resources: bugtracker: https://github.com/kentnl/Path-FindDev/issues homepage: https://github.com/kentnl/Path-FindDev repository: https://github.com/kentnl/Path-FindDev.git version: 0.5.2 x_BuiltWith: modules: CPAN::Meta: '2.142060' Carp: '1.34' Class::Tiny: '1.000' Dist::Zilla::App::Command::bakeini: '0.001001' Dist::Zilla::Plugin::Authority: '1.006' Dist::Zilla::Plugin::AutoPrereqs: '5.020' Dist::Zilla::Plugin::BumpVersionAfterRelease: '0.002' Dist::Zilla::Plugin::ConfirmRelease: '5.020' Dist::Zilla::Plugin::CopyFilesFromBuild: '0.103510' Dist::Zilla::Plugin::EOLTests: '0.02' Dist::Zilla::Plugin::Git::Check: '2.023' Dist::Zilla::Plugin::Git::Commit: '2.023' Dist::Zilla::Plugin::Git::CommitBuild: '2.023' Dist::Zilla::Plugin::Git::Contributors: '0.006' Dist::Zilla::Plugin::Git::GatherDir: '2.023' Dist::Zilla::Plugin::Git::NextRelease: '0.002012' Dist::Zilla::Plugin::Git::Tag: '2.023' Dist::Zilla::Plugin::GithubMeta: '0.46' Dist::Zilla::Plugin::License: '5.020' Dist::Zilla::Plugin::MakeMaker: '5.020' Dist::Zilla::Plugin::Manifest: '5.020' Dist::Zilla::Plugin::ManifestSkip: '5.020' Dist::Zilla::Plugin::MetaConfig: '5.020' Dist::Zilla::Plugin::MetaData::BuiltWith: '1.001001' Dist::Zilla::Plugin::MetaJSON: '5.020' Dist::Zilla::Plugin::MetaProvides::Package: '2.000004' Dist::Zilla::Plugin::MetaTests: '5.020' Dist::Zilla::Plugin::MetaYAML: '5.020' Dist::Zilla::Plugin::MinimumPerl: '1.003' Dist::Zilla::Plugin::PodCoverageTests: '5.020' Dist::Zilla::Plugin::PodSyntaxTests: '5.020' Dist::Zilla::Plugin::PodWeaver: '4.005' Dist::Zilla::Plugin::Prereqs: '5.020' Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled: '0.002001' Dist::Zilla::Plugin::ReadmeAnyFromPod: '0.142250' Dist::Zilla::Plugin::ReadmeFromPod: '0.21' Dist::Zilla::Plugin::RewriteVersion::Sanitized: '0.001003' Dist::Zilla::Plugin::RunExtraTests: '0.022' Dist::Zilla::Plugin::Test::CPAN::Changes: '0.008' Dist::Zilla::Plugin::Test::Compile::PerFile: '0.002002' Dist::Zilla::Plugin::Test::Kwalitee: '2.07' Dist::Zilla::Plugin::Test::MinimumVersion: '2.000005' Dist::Zilla::Plugin::Test::Perl::Critic: '2.112410' Dist::Zilla::Plugin::Test::ReportPrereqs: '0.019' Dist::Zilla::Plugin::TestRelease: '5.020' Dist::Zilla::Plugin::Twitter: '0.025' Dist::Zilla::Plugin::UploadToCPAN: '5.020' Dist::Zilla::PluginBundle::Author::KENTNL: '2.017002' ExtUtils::MakeMaker: '6.98' File::Spec: '3.48' FindBin: '1.51' Path::IsDev: '1.001001' Path::IsDev::Object: '1.001001' Path::Tiny: '0.056' Pod::Coverage::TrustPod: '0.100003' Scalar::Util: '1.39' Sub::Exporter: '0.987' Test::CPAN::Changes: '0.30' Test::CPAN::Meta: '0.23' Test::Kwalitee: '1.22' Test::More: '1.001003' Test::Pod: '1.48' Test::Pod::Coverage: '1.10' strict: '1.08' utf8: '1.14' warnings: '1.24' perl: original: v5.21.1 qv: 1 version: - 5 - 21 - 1 perl-config: gccversion: 4.8.3 myarchname: x86_64-linux osname: linux platform: linux uname: 'Linux 3.15.5-aufs x86_64 GenuineIntel GNU/Linux' x_Dist_Zilla: perl: version: '5.021001' plugins: - class: Dist::Zilla::Plugin::MetaConfig name: '@Author::KENTNL/MetaConfig' version: '5.020' - class: Dist::Zilla::Plugin::GithubMeta name: '@Author::KENTNL/GithubMeta' version: '0.46' - class: Dist::Zilla::Plugin::MetaProvides::Package config: Dist::Zilla::Plugin::MetaProvides::Package: finder_objects: - class: Dist::Zilla::Plugin::FinderCode name: '@Author::KENTNL/MetaProvides::Package/AUTOVIV/:InstallModulesPM' version: '5.020' Dist::Zilla::Role::MetaProvider::Provider: inherit_missing: '1' inherit_version: '1' meta_noindex: '1' name: '@Author::KENTNL/MetaProvides::Package' version: '2.000004' - class: Dist::Zilla::Plugin::MetaData::BuiltWith config: Dist::Zilla::Plugin::MetaData::BuiltWith: _stash_key: x_BuiltWith show_config: '1' show_uname: '1' uname: uname_args: - -s - -o - -r - -m - -i uname_call: uname name: '@Author::KENTNL/MetaData::BuiltWith' version: '1.001001' - class: Dist::Zilla::Plugin::Git::Contributors config: Dist::Zilla::Plugin::Git::Contributors: include_authors: '0' include_releaser: '0' order_by: name name: '@Author::KENTNL/Git::Contributors' version: '0.006' - class: Dist::Zilla::Plugin::Git::GatherDir config: Dist::Zilla::Plugin::Git::GatherDir: include_untracked: '0' Dist::Zilla::Role::Git::Repo: repo_root: . name: '@Author::KENTNL/Git::GatherDir' version: '2.023' - class: Dist::Zilla::Plugin::License name: '@Author::KENTNL/License' version: '5.020' - class: Dist::Zilla::Plugin::MetaJSON name: '@Author::KENTNL/MetaJSON' version: '5.020' - class: Dist::Zilla::Plugin::MetaYAML name: '@Author::KENTNL/MetaYAML' version: '5.020' - class: Dist::Zilla::Plugin::Manifest name: '@Author::KENTNL/Manifest' version: '5.020' - class: Dist::Zilla::Plugin::CopyFilesFromBuild name: '@Author::KENTNL/CopyXBuild' version: '0.103510' - class: Dist::Zilla::Plugin::MetaTests name: '@Author::KENTNL/MetaTests' version: '5.020' - class: Dist::Zilla::Plugin::PodCoverageTests name: '@Author::KENTNL/PodCoverageTests' version: '5.020' - class: Dist::Zilla::Plugin::PodSyntaxTests name: '@Author::KENTNL/PodSyntaxTests' version: '5.020' - class: Dist::Zilla::Plugin::Test::ReportPrereqs name: '@Author::KENTNL/Test::ReportPrereqs' version: '0.019' - class: Dist::Zilla::Plugin::Test::Kwalitee name: '@Author::KENTNL/Test::Kwalitee' version: '2.07' - class: Dist::Zilla::Plugin::EOLTests name: '@Author::KENTNL/EOLTests' version: '0.02' - class: Dist::Zilla::Plugin::Test::MinimumVersion name: '@Author::KENTNL/Test::MinimumVersion' version: '2.000005' - class: Dist::Zilla::Plugin::FinderCode name: '@Author::KENTNL/Test::Compile::PerFile/AUTOVIV/:InstallModulesPM' version: '5.020' - class: Dist::Zilla::Plugin::Test::Compile::PerFile config: Dist::Zilla::Plugin::Test::Compile::PerFile: file: - lib/Path/FindDev.pm - lib/Path/FindDev/Object.pm path_translator: base64_filter prefix: t/00-compile skip: [] test_template: 01-basic.t.tpl xt_mode: ~ name: '@Author::KENTNL/Test::Compile::PerFile' version: '0.002002' - class: Dist::Zilla::Plugin::Test::Perl::Critic name: '@Author::KENTNL/Test::Perl::Critic' version: '2.112410' - class: Dist::Zilla::Plugin::ManifestSkip name: '@Author::KENTNL/ManifestSkip' version: '5.020' - class: Dist::Zilla::Plugin::RewriteVersion::Sanitized config: Dist::Zilla::Role::Version::Sanitize: mantissa: '6' normal_form: normal_3 name: '@Author::KENTNL/RewriteVersion::Sanitized' version: '0.001003' - class: Dist::Zilla::Plugin::PodWeaver config: Dist::Zilla::Plugin::PodWeaver: finder: - ':InstallModules' - ':ExecFiles' plugins: - class: Pod::Weaver::Plugin::EnsurePod5 name: '@CorePrep/EnsurePod5' version: '4.006' - class: Pod::Weaver::Plugin::H1Nester name: '@CorePrep/H1Nester' version: '4.006' - class: Pod::Weaver::Plugin::SingleEncoding name: -SingleEncoding version: '4.006' - class: Pod::Weaver::Section::Name name: Name version: '4.006' - class: Pod::Weaver::Section::Version name: Version version: '4.006' - class: Pod::Weaver::Section::Region name: prelude version: '4.006' - class: Pod::Weaver::Section::Generic name: SYNOPSIS version: '4.006' - class: Pod::Weaver::Section::Generic name: DESCRIPTION version: '4.006' - class: Pod::Weaver::Section::Generic name: OVERVIEW version: '4.006' - class: Pod::Weaver::Section::Collect name: METHODS version: '4.006' - class: Pod::Weaver::Section::Collect name: FUNCTIONS version: '4.006' - class: Pod::Weaver::Section::Collect name: ATTRIBUTES version: '4.006' - class: Pod::Weaver::Section::Collect name: PRIVATE_ATTRIBUTES version: '4.006' - class: Pod::Weaver::Section::Collect name: PRIVATE_METHODS version: '4.006' - class: Pod::Weaver::Section::Leftovers name: Leftovers version: '4.006' - class: Pod::Weaver::Section::Region name: postlude version: '4.006' - class: Pod::Weaver::Section::Authors name: Authors version: '4.006' - class: Pod::Weaver::Section::Legal name: Legal version: '4.006' name: '@Author::KENTNL/PodWeaver' version: '4.005' - class: Dist::Zilla::Plugin::AutoPrereqs name: '@Author::KENTNL/AutoPrereqs' version: '5.020' - class: Dist::Zilla::Plugin::Prereqs config: Dist::Zilla::Plugin::Prereqs: phase: develop type: suggests name: '@Author::KENTNL/BundleDevelSuggests' version: '5.020' - class: Dist::Zilla::Plugin::MinimumPerl name: '@Author::KENTNL/MinimumPerl' version: '1.003' - class: Dist::Zilla::Plugin::Authority name: '@Author::KENTNL/Authority' version: '1.006' - class: Dist::Zilla::Plugin::MakeMaker config: Dist::Zilla::Role::TestRunner: default_jobs: '10' name: '@Author::KENTNL/MakeMaker' version: '5.020' - class: Dist::Zilla::Plugin::ReadmeFromPod name: '@Author::KENTNL/ReadmeFromPod' version: '0.21' - class: Dist::Zilla::Plugin::ReadmeAnyFromPod name: '@Author::KENTNL/ReadmeAnyFromPod' version: '0.142250' - class: Dist::Zilla::Plugin::Test::CPAN::Changes name: '@Author::KENTNL/Test::CPAN::Changes' version: '0.008' - class: Dist::Zilla::Plugin::RunExtraTests config: Dist::Zilla::Role::TestRunner: default_jobs: '10' name: '@Author::KENTNL/RunExtraTests' version: '0.022' - class: Dist::Zilla::Plugin::TestRelease name: '@Author::KENTNL/TestRelease' version: '5.020' - class: Dist::Zilla::Plugin::ConfirmRelease name: '@Author::KENTNL/ConfirmRelease' version: '5.020' - class: Dist::Zilla::Plugin::Git::Check config: Dist::Zilla::Plugin::Git::Check: untracked_files: die Dist::Zilla::Role::Git::DirtyFiles: allow_dirty: - dist.ini - Changes allow_dirty_match: [] changelog: Changes Dist::Zilla::Role::Git::Repo: repo_root: . name: '@Author::KENTNL/Git::Check' version: '2.023' - class: Dist::Zilla::Plugin::Git::Commit config: Dist::Zilla::Plugin::Git::Commit: add_files_in: [] commit_msg: v%v%n%n%c time_zone: local Dist::Zilla::Role::Git::DirtyFiles: allow_dirty: - dist.ini - Changes allow_dirty_match: [] changelog: Changes Dist::Zilla::Role::Git::Repo: repo_root: . name: '@Author::KENTNL/commit_dirty_files' version: '2.023' - class: Dist::Zilla::Plugin::Git::Tag config: Dist::Zilla::Plugin::Git::Tag: branch: ~ signed: '0' tag: 0.5.2-source tag_format: '%v-source' tag_message: v%v time_zone: local Dist::Zilla::Role::Git::Repo: repo_root: . name: '@Author::KENTNL/tag_master' version: '2.023' - class: Dist::Zilla::Plugin::Git::NextRelease name: '@Author::KENTNL/Git::NextRelease' version: '0.002012' - class: Dist::Zilla::Plugin::BumpVersionAfterRelease name: '@Author::KENTNL/BumpVersionAfterRelease' version: '0.002' - class: Dist::Zilla::Plugin::Git::Commit config: Dist::Zilla::Plugin::Git::Commit: add_files_in: [] commit_msg: v%v%n%n%c time_zone: local Dist::Zilla::Role::Git::DirtyFiles: allow_dirty: - dist.ini - Changes allow_dirty_match: - (?^u:^lib/) changelog: Changes Dist::Zilla::Role::Git::Repo: repo_root: . name: '@Author::KENTNL/commit_release_changes' version: '2.023' - class: Dist::Zilla::Plugin::Git::CommitBuild config: Dist::Zilla::Plugin::Git::CommitBuild: branch: build/%b build_root: ~ message: 'Build results of %h (on %b)' multiple_inheritance: '0' release_branch: releases release_message: 'Build results of %h (on %b)' Dist::Zilla::Role::Git::Repo: repo_root: . name: '@Author::KENTNL/Git::CommitBuild' version: '2.023' - class: Dist::Zilla::Plugin::Git::Tag config: Dist::Zilla::Plugin::Git::Tag: branch: releases signed: '0' tag: 0.5.2 tag_format: '%v' tag_message: v%v time_zone: local Dist::Zilla::Role::Git::Repo: repo_root: . name: '@Author::KENTNL/tag_release' version: '2.023' - class: Dist::Zilla::Plugin::UploadToCPAN name: '@Author::KENTNL/UploadToCPAN' version: '5.020' - class: Dist::Zilla::Plugin::Twitter name: '@Author::KENTNL/Twitter' version: '0.025' - class: Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled config: Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled: applyto_map: - 'build.requires = build.recommends' - 'test.requires = test.recommends' - 'runtime.requires = runtime.recommends' - 'configure.requires = configure.recommends' - 'develop.requires = develop.recommends' applyto_phase: - build - test - runtime - configure - develop modules: - ExtUtils::MakeMaker - Test::More name: '@Author::KENTNL/Prereqs::Recommend::MatchInstalled' version: '0.002001' - class: Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled config: Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled: applyto_map: - 'develop.suggests = develop.suggests' applyto_phase: - develop modules: - Dist::Zilla::PluginBundle::Author::KENTNL - Dist::Zilla::App::Command::bakeini name: '@Author::KENTNL/always_latest_develop_bundle' version: '0.002001' - class: Dist::Zilla::Plugin::Prereqs config: Dist::Zilla::Plugin::Prereqs: phase: develop type: requires name: '@Author::KENTNL/::Role::BundleDeps' version: '5.020' - class: Dist::Zilla::Plugin::Prereqs config: Dist::Zilla::Plugin::Prereqs: phase: runtime type: requires name: RuntimeRequires version: '5.020' - class: Dist::Zilla::Plugin::FinderCode name: ':InstallModules' version: '5.020' - class: Dist::Zilla::Plugin::FinderCode name: ':IncModules' version: '5.020' - class: Dist::Zilla::Plugin::FinderCode name: ':TestFiles' version: '5.020' - class: Dist::Zilla::Plugin::FinderCode name: ':ExecFiles' version: '5.020' - class: Dist::Zilla::Plugin::FinderCode name: ':ShareFiles' version: '5.020' - class: Dist::Zilla::Plugin::FinderCode name: ':MainModule' version: '5.020' - class: Dist::Zilla::Plugin::FinderCode name: ':AllFiles' version: '5.020' - class: Dist::Zilla::Plugin::FinderCode name: ':NoFiles' version: '5.020' - class: Dist::Zilla::Plugin::FinderCode name: '@Author::KENTNL/MetaProvides::Package/AUTOVIV/:InstallModulesPM' version: '5.020' zilla: class: Dist::Zilla::Dist::Builder config: is_trial: '0' version: '5.020' x_authority: cpan:KENTNL x_contributors: - 'Alexandr Ciornii ' - 'David Steinbrunner ' Path-FindDev-0.5.2/perlcritic.rc0000644000175000017500000002262012373555141015111 0ustar kentkentcolor = 1 color-severity-low = green color-severity-medium = yellow only = 1 severity = 1 verbose = 9 [Bangs::ProhibitBitwiseOperators] [Bangs::ProhibitCommentedOutCode] [Bangs::ProhibitDebuggingModules] [-Bangs::ProhibitFlagComments] [Bangs::ProhibitNoPlan] [Bangs::ProhibitNumberedNames] [Bangs::ProhibitRefProtoOrProto] [Bangs::ProhibitUselessRegexModifiers] [Bangs::ProhibitVagueNames] [BuiltinFunctions::ProhibitBooleanGrep] [BuiltinFunctions::ProhibitComplexMappings] [BuiltinFunctions::ProhibitLvalueSubstr] [BuiltinFunctions::ProhibitReverseSortBlock] [BuiltinFunctions::ProhibitSleepViaSelect] [BuiltinFunctions::ProhibitStringyEval] allow_includes = 1 [BuiltinFunctions::ProhibitStringySplit] [BuiltinFunctions::ProhibitUniversalCan] [BuiltinFunctions::ProhibitUniversalIsa] [BuiltinFunctions::ProhibitVoidGrep] [BuiltinFunctions::ProhibitVoidMap] [BuiltinFunctions::RequireBlockGrep] [BuiltinFunctions::RequireBlockMap] [BuiltinFunctions::RequireGlobFunction] [BuiltinFunctions::RequireSimpleSortBlock] [ClassHierarchies::ProhibitAutoloading] [ClassHierarchies::ProhibitExplicitISA] [ClassHierarchies::ProhibitOneArgBless] [CodeLayout::ProhibitFatCommaNewline] [CodeLayout::ProhibitHardTabs] [-CodeLayout::ProhibitHashBarewords] [CodeLayout::ProhibitIfIfSameLine] [CodeLayout::ProhibitParensWithBuiltins] [CodeLayout::ProhibitQuotedWordLists] [CodeLayout::ProhibitTrailingWhitespace] [-CodeLayout::RequireASCII] [CodeLayout::RequireConsistentNewlines] [CodeLayout::RequireFinalSemicolon] [-CodeLayout::RequireTidyCode] [CodeLayout::RequireTrailingCommaAtNewline] [CodeLayout::RequireTrailingCommas] [CodeLayout::RequireUseUTF8] [Compatibility::ConstantLeadingUnderscore] [Compatibility::ConstantPragmaHash] [Compatibility::Gtk2Constants] [Compatibility::PerlMinimumVersionAndWhy] [-Compatibility::PodMinimumVersion] [Compatibility::ProhibitThreeArgumentOpen] [Compatibility::ProhibitUnixDevNull] [ControlStructures::ProhibitCStyleForLoops] [ControlStructures::ProhibitCascadingIfElse] [ControlStructures::ProhibitDeepNests] [ControlStructures::ProhibitLabelsWithSpecialBlockNames] [ControlStructures::ProhibitMutatingListFunctions] [ControlStructures::ProhibitNegativeExpressionsInUnlessAndUntilConditions] [-ControlStructures::ProhibitPostfixControls] [ControlStructures::ProhibitUnlessBlocks] [ControlStructures::ProhibitUnreachableCode] [ControlStructures::ProhibitUntilBlocks] [Documentation::PodSpelling] spell_command = aspell list --lang en_US stop_words = FindDev [Documentation::ProhibitAdjacentLinks] [Documentation::ProhibitBadAproposMarkup] [Documentation::ProhibitDuplicateHeadings] [Documentation::ProhibitDuplicateSeeAlso] [Documentation::ProhibitLinkToSelf] [Documentation::ProhibitParagraphEndComma] [Documentation::ProhibitParagraphTwoDots] [Documentation::ProhibitUnbalancedParens] [Documentation::ProhibitVerbatimMarkup] [Documentation::RequireEndBeforeLastPod] [Documentation::RequireFinalCut] [Documentation::RequireLinkedURLs] [-Documentation::RequirePODUseEncodingUTF8] [Documentation::RequirePackageMatchesPodName] [Documentation::RequirePodAtEnd] [Documentation::RequirePodLinksIncludeText] [-Documentation::RequirePodSections] [-Editor::RequireEmacsFileVariables] [ErrorHandling::RequireCarping] [ErrorHandling::RequireCheckingReturnValueOfEval] [ErrorHandling::RequireUseOfExceptions] [InputOutput::ProhibitBacktickOperators] [InputOutput::ProhibitBarewordFileHandles] [InputOutput::ProhibitExplicitStdin] [InputOutput::ProhibitInteractiveTest] [InputOutput::ProhibitJoinedReadline] [InputOutput::ProhibitOneArgSelect] [InputOutput::ProhibitReadlineInForLoop] [InputOutput::ProhibitTwoArgOpen] [InputOutput::RequireBracedFileHandleWithPrint] [InputOutput::RequireBriefOpen] [InputOutput::RequireCheckedClose] [InputOutput::RequireCheckedOpen] [InputOutput::RequireCheckedSyscalls] [InputOutput::RequireEncodingWithUTF8Layer] [Lax::ProhibitComplexMappings::LinesNotStatements] [Lax::ProhibitEmptyQuotes::ExceptAsFallback] [Lax::ProhibitLeadingZeros::ExceptChmod] [Lax::ProhibitStringyEval::ExceptForRequire] [Lax::RequireEndWithTrueConst] [Lax::RequireExplicitPackage::ExceptForPragmata] allowed_pragmata = diagnostics feature perlversion strict warnings utf8 [Miscellanea::ProhibitFormats] [Miscellanea::ProhibitTies] [Miscellanea::ProhibitUnrestrictedNoCritic] [-Miscellanea::ProhibitUselessNoCritic] [-Miscellanea::RequireRcsKeywords] [Miscellanea::TextDomainPlaceholders] [Miscellanea::TextDomainUnused] [Modules::PerlMinimumVersion] [Modules::ProhibitAutomaticExportation] [Modules::ProhibitConditionalUseStatements] [Modules::ProhibitEvilModules] [Modules::ProhibitExcessMainComplexity] [Modules::ProhibitModuleShebang] [Modules::ProhibitMultiplePackages] [Modules::ProhibitPOSIXimport] [Modules::ProhibitUseQuotedVersion] [Modules::RequireBarewordIncludes] [Modules::RequireEndWithOne] [-Modules::RequireExplicitInclusion] [-Modules::RequireExplicitPackage] [Modules::RequireFilenameMatchesPackage] [Modules::RequireNoMatchVarsWithUseEnglish] [Modules::RequirePerlVersion] [Modules::RequireVersionVar] [-Moose::ProhibitMultipleWiths] [Moose::ProhibitNewMethod] [Moose::RequireCleanNamespace] [Moose::RequireMakeImmutable] [NamingConventions::Capitalization] [NamingConventions::ProhibitAmbiguousNames] [NamingConventions::ProhibitMixedCaseSubs] [NamingConventions::ProhibitMixedCaseVars] [Objects::ProhibitIndirectSyntax] [References::ProhibitDoubleSigils] [RegularExpressions::ProhibitCaptureWithoutTest] [RegularExpressions::ProhibitComplexRegexes] [RegularExpressions::ProhibitEnumeratedClasses] [RegularExpressions::ProhibitEscapedMetacharacters] [RegularExpressions::ProhibitFixedStringMatches] [RegularExpressions::ProhibitSingleCharAlternation] [RegularExpressions::ProhibitUnusedCapture] [RegularExpressions::ProhibitUnusualDelimiters] [RegularExpressions::RequireBracesForMultiline] [RegularExpressions::RequireDotMatchAnything] [RegularExpressions::RequireExtendedFormatting] [RegularExpressions::RequireLineBoundaryMatching] [Subroutines::ProhibitAmpersandSigils] [Subroutines::ProhibitBuiltinHomonyms] [Subroutines::ProhibitCallsToUndeclaredSubs] [Subroutines::ProhibitCallsToUnexportedSubs] [Subroutines::ProhibitExcessComplexity] [Subroutines::ProhibitExplicitReturnUndef] [Subroutines::ProhibitExportingUndeclaredSubs] [Subroutines::ProhibitManyArgs] [Subroutines::ProhibitNestedSubs] [Subroutines::ProhibitQualifiedSubDeclarations] [Subroutines::ProhibitReturnSort] [Subroutines::ProhibitSubroutinePrototypes] [Subroutines::ProhibitUnusedPrivateSubroutines] private_name_regex = _(?!build_)\w [Subroutines::ProtectPrivateSubs] [Subroutines::RequireArgUnpacking] [Subroutines::RequireFinalReturn] [TestingAndDebugging::ProhibitNoStrict] [TestingAndDebugging::ProhibitNoWarnings] [TestingAndDebugging::ProhibitProlongedStrictureOverride] [TestingAndDebugging::RequireTestLabels] [TestingAndDebugging::RequireUseStrict] equivalent_modules = Moose Moo [TestingAndDebugging::RequireUseWarnings] equivalent_modules = Moose Moo [Tics::ProhibitLongLines] base_max = 130 [Tics::ProhibitManyArrows] [Tics::ProhibitUseBase] [ValuesAndExpressions::ConstantBeforeLt] [ValuesAndExpressions::NotWithCompare] [ValuesAndExpressions::ProhibitArrayAssignAref] [ValuesAndExpressions::ProhibitBarewordDoubleColon] [ValuesAndExpressions::ProhibitCommaSeparatedStatements] [ValuesAndExpressions::ProhibitComplexVersion] [ValuesAndExpressions::ProhibitConstantPragma] [ValuesAndExpressions::ProhibitDuplicateHashKeys] [-ValuesAndExpressions::ProhibitEmptyCommas] [ValuesAndExpressions::ProhibitEmptyQuotes] [ValuesAndExpressions::ProhibitEscapedCharacters] [ValuesAndExpressions::ProhibitFiletest_f] [ValuesAndExpressions::ProhibitImplicitNewlines] [ValuesAndExpressions::ProhibitInterpolationOfLiterals] [ValuesAndExpressions::ProhibitLeadingZeros] [ValuesAndExpressions::ProhibitLongChainsOfMethodCalls] [-ValuesAndExpressions::ProhibitMagicNumbers] [ValuesAndExpressions::ProhibitMismatchedOperators] [ValuesAndExpressions::ProhibitMixedBooleanOperators] [ValuesAndExpressions::ProhibitNoisyQuotes] [ValuesAndExpressions::ProhibitNullStatements] [ValuesAndExpressions::ProhibitQuotesAsQuotelikeOperatorDelimiters] [ValuesAndExpressions::ProhibitSpecialLiteralHeredocTerminator] [ValuesAndExpressions::ProhibitUnknownBackslash] [ValuesAndExpressions::ProhibitVersionStrings] [ValuesAndExpressions::RequireConstantOnLeftSideOfEquality] [ValuesAndExpressions::RequireConstantVersion] [ValuesAndExpressions::RequireInterpolationOfMetachars] [ValuesAndExpressions::RequireNumberSeparators] [-ValuesAndExpressions::RequireNumericVersion] [ValuesAndExpressions::RequireQuotedHeredocTerminator] [ValuesAndExpressions::RequireUpperCaseHeredocTerminator] [ValuesAndExpressions::RestrictLongStrings] [ValuesAndExpressions::UnexpandedSpecialLiteral] [Variables::ProhibitAugmentedAssignmentInDeclaration] [Variables::ProhibitConditionalDeclarations] [Variables::ProhibitEvilVariables] [Variables::ProhibitLocalVars] [Variables::ProhibitMatchVars] [Variables::ProhibitPackageVars] [Variables::ProhibitPerl4PackageNames] [-Variables::ProhibitPunctuationVars] [Variables::ProhibitReusedNames] [Variables::ProhibitUnusedVariables] [Variables::ProhibitUnusedVarsStricter] [Variables::ProtectPrivateVars] [Variables::RequireInitializationForLocalVars] [Variables::RequireLexicalLoopIterators] [Variables::RequireLocalizedPunctuationVars] [Variables::RequireNegativeIndices] Path-FindDev-0.5.2/dist.ini0000644000175000017500000001324012373555141014065 0ustar kentkent; This file is generated from dist.ini.meta by dzil bakeini. ; Edit that file or the bundles contained within for long-term changes. name = Path-FindDev author = Kent Fredric license = Perl_5 copyright_holder = Kent Fredric [MetaConfig / @Author::KENTNL/MetaConfig] [GithubMeta / @Author::KENTNL/GithubMeta] issues = 1 [MetaProvides::Package / @Author::KENTNL/MetaProvides::Package] :version = 1.14000001 [MetaData::BuiltWith / @Author::KENTNL/MetaData::BuiltWith] show_config = 1 show_uname = 1 uname_args = -s -o -r -m -i [Git::Contributors / @Author::KENTNL/Git::Contributors] :version = 0.006 include_authors = 0 include_releaser = 0 order_by = name [Git::GatherDir / @Author::KENTNL/Git::GatherDir] exclude_filename = README exclude_filename = README.mkdn exclude_filename = README.pod exclude_filename = LICENSE include_dotfiles = 1 [License / @Author::KENTNL/License] [MetaJSON / @Author::KENTNL/MetaJSON] [MetaYAML / @Author::KENTNL/MetaYAML] [Manifest / @Author::KENTNL/Manifest] [CopyFilesFromBuild / @Author::KENTNL/CopyXBuild] copy = LICENSE [MetaTests / @Author::KENTNL/MetaTests] [PodCoverageTests / @Author::KENTNL/PodCoverageTests] [PodSyntaxTests / @Author::KENTNL/PodSyntaxTests] [Test::ReportPrereqs / @Author::KENTNL/Test::ReportPrereqs] [Test::Kwalitee / @Author::KENTNL/Test::Kwalitee] [EOLTests / @Author::KENTNL/EOLTests] trailing_whitespace = 1 [Test::MinimumVersion / @Author::KENTNL/Test::MinimumVersion] [Test::Compile::PerFile / @Author::KENTNL/Test::Compile::PerFile] [Test::Perl::Critic / @Author::KENTNL/Test::Perl::Critic] [ManifestSkip / @Author::KENTNL/ManifestSkip] [RewriteVersion::Sanitized / @Author::KENTNL/RewriteVersion::Sanitized] mantissa = 6 normal_form = normal_3 [PodWeaver / @Author::KENTNL/PodWeaver] replacer = replace_with_blank [AutoPrereqs / @Author::KENTNL/AutoPrereqs] [Prereqs / @Author::KENTNL/BundleDevelSuggests] -phase = develop -type = suggests Dist::Zilla::App::Command::bakeini = 0.001000 Dist::Zilla::PluginBundle::Author::KENTNL = 2.017002 [MinimumPerl / @Author::KENTNL/MinimumPerl] [Authority / @Author::KENTNL/Authority] :version = 1.006 authority = cpan:KENTNL do_metadata = 1 locate_comment = 1 [MakeMaker / @Author::KENTNL/MakeMaker] default_jobs = 10 [ReadmeFromPod / @Author::KENTNL/ReadmeFromPod] [ReadmeAnyFromPod / @Author::KENTNL/ReadmeAnyFromPod] filename = README.mkdn location = root type = markdown [Test::CPAN::Changes / @Author::KENTNL/Test::CPAN::Changes] [RunExtraTests / @Author::KENTNL/RunExtraTests] default_jobs = 10 [TestRelease / @Author::KENTNL/TestRelease] [ConfirmRelease / @Author::KENTNL/ConfirmRelease] [Git::Check / @Author::KENTNL/Git::Check] filename = Changes [Git::Commit / @Author::KENTNL/commit_dirty_files] [Git::Tag / @Author::KENTNL/tag_master] tag_format = %v-source [Git::NextRelease / @Author::KENTNL/Git::NextRelease] format = %v %{yyyy-MM-dd'T'HH:mm:ss}dZ time_zone = UTC [BumpVersionAfterRelease / @Author::KENTNL/BumpVersionAfterRelease] [Git::Commit / @Author::KENTNL/commit_release_changes] allow_dirty_match = ^lib/ [Git::CommitBuild / @Author::KENTNL/Git::CommitBuild] release_branch = releases [Git::Tag / @Author::KENTNL/tag_release] branch = releases tag_format = %v [UploadToCPAN / @Author::KENTNL/UploadToCPAN] [Twitter / @Author::KENTNL/Twitter] hash_tags = #perl #cpan tweet_url = https://metacpan.org/release/{{$AUTHOR_UC}}/{{$DIST}}-{{$VERSION}}{{$TRIAL}}#whatsnew url_shortener = none [Prereqs::Recommend::MatchInstalled / @Author::KENTNL/Prereqs::Recommend::MatchInstalled] modules = ExtUtils::MakeMaker modules = Test::More [Prereqs::Recommend::MatchInstalled / @Author::KENTNL/always_latest_develop_bundle] applyto_map = develop.suggests = develop.suggests applyto_phase = develop modules = Dist::Zilla::PluginBundle::Author::KENTNL modules = Dist::Zilla::App::Command::bakeini [Prereqs / @Author::KENTNL/::Role::BundleDeps] -phase = develop -relationship = requires Dist::Zilla::Plugin::Authority = 1.006 Dist::Zilla::Plugin::AutoPrereqs = 0 Dist::Zilla::Plugin::BumpVersionAfterRelease = 0 Dist::Zilla::Plugin::ConfirmRelease = 0 Dist::Zilla::Plugin::CopyFilesFromBuild = 0 Dist::Zilla::Plugin::EOLTests = 0 Dist::Zilla::Plugin::Git::Check = 0 Dist::Zilla::Plugin::Git::Commit = 0 Dist::Zilla::Plugin::Git::CommitBuild = 0 Dist::Zilla::Plugin::Git::Contributors = 0.006 Dist::Zilla::Plugin::Git::GatherDir = 0 Dist::Zilla::Plugin::Git::NextRelease = 0 Dist::Zilla::Plugin::Git::Tag = 0 Dist::Zilla::Plugin::GithubMeta = 0 Dist::Zilla::Plugin::License = 0 Dist::Zilla::Plugin::MakeMaker = 0 Dist::Zilla::Plugin::Manifest = 0 Dist::Zilla::Plugin::ManifestSkip = 0 Dist::Zilla::Plugin::MetaConfig = 0 Dist::Zilla::Plugin::MetaData::BuiltWith = 0 Dist::Zilla::Plugin::MetaJSON = 0 Dist::Zilla::Plugin::MetaProvides::Package = 1.14000001 Dist::Zilla::Plugin::MetaTests = 0 Dist::Zilla::Plugin::MetaYAML = 0 Dist::Zilla::Plugin::MinimumPerl = 0 Dist::Zilla::Plugin::PodCoverageTests = 0 Dist::Zilla::Plugin::PodSyntaxTests = 0 Dist::Zilla::Plugin::PodWeaver = 0 Dist::Zilla::Plugin::Prereqs = 0 Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled = 0 Dist::Zilla::Plugin::ReadmeAnyFromPod = 0 Dist::Zilla::Plugin::ReadmeFromPod = 0 Dist::Zilla::Plugin::RewriteVersion::Sanitized = 0 Dist::Zilla::Plugin::RunExtraTests = 0 Dist::Zilla::Plugin::Test::CPAN::Changes = 0 Dist::Zilla::Plugin::Test::Compile::PerFile = 0 Dist::Zilla::Plugin::Test::Kwalitee = 0 Dist::Zilla::Plugin::Test::MinimumVersion = 0 Dist::Zilla::Plugin::Test::Perl::Critic = 0 Dist::Zilla::Plugin::Test::ReportPrereqs = 0 Dist::Zilla::Plugin::TestRelease = 0 Dist::Zilla::Plugin::Twitter = 0 Dist::Zilla::Plugin::UploadToCPAN = 0 [Prereqs / RuntimeRequires] Path::IsDev = 0.2.2 Path::Tiny = 0.054 Path-FindDev-0.5.2/.perltidyrc0000644000175000017500000000001412373555141014576 0ustar kentkent-i 2 -l 130 Path-FindDev-0.5.2/META.json0000644000175000017500000007433112373555141014052 0ustar kentkent{ "abstract" : "Find a development path somewhere in an upper hierarchy.", "author" : [ "Kent Fredric " ], "dynamic_config" : 0, "generated_by" : "Dist::Zilla version 5.020, CPAN::Meta::Converter version 2.142060", "license" : [ "perl_5" ], "meta-spec" : { "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", "version" : "2" }, "name" : "Path-FindDev", "prereqs" : { "configure" : { "recommends" : { "ExtUtils::MakeMaker" : "6.98" }, "requires" : { "ExtUtils::MakeMaker" : "0" } }, "develop" : { "requires" : { "Dist::Zilla::Plugin::Authority" : "1.006", "Dist::Zilla::Plugin::AutoPrereqs" : "0", "Dist::Zilla::Plugin::BumpVersionAfterRelease" : "0", "Dist::Zilla::Plugin::ConfirmRelease" : "0", "Dist::Zilla::Plugin::CopyFilesFromBuild" : "0", "Dist::Zilla::Plugin::EOLTests" : "0", "Dist::Zilla::Plugin::Git::Check" : "0", "Dist::Zilla::Plugin::Git::Commit" : "0", "Dist::Zilla::Plugin::Git::CommitBuild" : "0", "Dist::Zilla::Plugin::Git::Contributors" : "0.006", "Dist::Zilla::Plugin::Git::GatherDir" : "0", "Dist::Zilla::Plugin::Git::NextRelease" : "0", "Dist::Zilla::Plugin::Git::Tag" : "0", "Dist::Zilla::Plugin::GithubMeta" : "0", "Dist::Zilla::Plugin::License" : "0", "Dist::Zilla::Plugin::MakeMaker" : "0", "Dist::Zilla::Plugin::Manifest" : "0", "Dist::Zilla::Plugin::ManifestSkip" : "0", "Dist::Zilla::Plugin::MetaConfig" : "0", "Dist::Zilla::Plugin::MetaData::BuiltWith" : "0", "Dist::Zilla::Plugin::MetaJSON" : "0", "Dist::Zilla::Plugin::MetaProvides::Package" : "1.14000001", "Dist::Zilla::Plugin::MetaTests" : "0", "Dist::Zilla::Plugin::MetaYAML" : "0", "Dist::Zilla::Plugin::MinimumPerl" : "0", "Dist::Zilla::Plugin::PodCoverageTests" : "0", "Dist::Zilla::Plugin::PodSyntaxTests" : "0", "Dist::Zilla::Plugin::PodWeaver" : "0", "Dist::Zilla::Plugin::Prereqs" : "0", "Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled" : "0", "Dist::Zilla::Plugin::ReadmeAnyFromPod" : "0", "Dist::Zilla::Plugin::ReadmeFromPod" : "0", "Dist::Zilla::Plugin::RewriteVersion::Sanitized" : "0", "Dist::Zilla::Plugin::RunExtraTests" : "0", "Dist::Zilla::Plugin::Test::CPAN::Changes" : "0", "Dist::Zilla::Plugin::Test::Compile::PerFile" : "0", "Dist::Zilla::Plugin::Test::Kwalitee" : "0", "Dist::Zilla::Plugin::Test::MinimumVersion" : "0", "Dist::Zilla::Plugin::Test::Perl::Critic" : "0", "Dist::Zilla::Plugin::Test::ReportPrereqs" : "0", "Dist::Zilla::Plugin::TestRelease" : "0", "Dist::Zilla::Plugin::Twitter" : "0", "Dist::Zilla::Plugin::UploadToCPAN" : "0", "Pod::Coverage::TrustPod" : "0", "Test::CPAN::Changes" : "0.19", "Test::CPAN::Meta" : "0", "Test::Kwalitee" : "1.12", "Test::Pod" : "1.41", "Test::Pod::Coverage" : "1.08" }, "suggests" : { "Dist::Zilla::App::Command::bakeini" : "0.001001", "Dist::Zilla::PluginBundle::Author::KENTNL" : "2.017002" } }, "runtime" : { "requires" : { "Carp" : "0", "Class::Tiny" : "0.010", "Path::IsDev" : "v0.2.2", "Path::IsDev::Object" : "0", "Path::Tiny" : "0.054", "Scalar::Util" : "0", "Sub::Exporter" : "0", "perl" : "5.008", "strict" : "0", "utf8" : "0", "warnings" : "0" } }, "test" : { "recommends" : { "CPAN::Meta" : "2.120900", "ExtUtils::MakeMaker" : "6.98", "Test::More" : "1.001003" }, "requires" : { "ExtUtils::MakeMaker" : "0", "File::Spec" : "0", "FindBin" : "0", "Test::More" : "0.89" } } }, "provides" : { "Path::FindDev" : { "file" : "lib/Path/FindDev.pm", "version" : "v0.5.2" }, "Path::FindDev::Object" : { "file" : "lib/Path/FindDev/Object.pm", "version" : "v0.5.2" } }, "release_status" : "stable", "resources" : { "bugtracker" : { "web" : "https://github.com/kentnl/Path-FindDev/issues" }, "homepage" : "https://github.com/kentnl/Path-FindDev", "repository" : { "type" : "git", "url" : "https://github.com/kentnl/Path-FindDev.git", "web" : "https://github.com/kentnl/Path-FindDev" } }, "version" : "0.5.2", "x_BuiltWith" : { "modules" : { "CPAN::Meta" : "2.142060", "Carp" : "1.34", "Class::Tiny" : "1.000", "Dist::Zilla::App::Command::bakeini" : "0.001001", "Dist::Zilla::Plugin::Authority" : "1.006", "Dist::Zilla::Plugin::AutoPrereqs" : "5.020", "Dist::Zilla::Plugin::BumpVersionAfterRelease" : "0.002", "Dist::Zilla::Plugin::ConfirmRelease" : "5.020", "Dist::Zilla::Plugin::CopyFilesFromBuild" : "0.103510", "Dist::Zilla::Plugin::EOLTests" : "0.02", "Dist::Zilla::Plugin::Git::Check" : "2.023", "Dist::Zilla::Plugin::Git::Commit" : "2.023", "Dist::Zilla::Plugin::Git::CommitBuild" : "2.023", "Dist::Zilla::Plugin::Git::Contributors" : "0.006", "Dist::Zilla::Plugin::Git::GatherDir" : "2.023", "Dist::Zilla::Plugin::Git::NextRelease" : "0.002012", "Dist::Zilla::Plugin::Git::Tag" : "2.023", "Dist::Zilla::Plugin::GithubMeta" : "0.46", "Dist::Zilla::Plugin::License" : "5.020", "Dist::Zilla::Plugin::MakeMaker" : "5.020", "Dist::Zilla::Plugin::Manifest" : "5.020", "Dist::Zilla::Plugin::ManifestSkip" : "5.020", "Dist::Zilla::Plugin::MetaConfig" : "5.020", "Dist::Zilla::Plugin::MetaData::BuiltWith" : "1.001001", "Dist::Zilla::Plugin::MetaJSON" : "5.020", "Dist::Zilla::Plugin::MetaProvides::Package" : "2.000004", "Dist::Zilla::Plugin::MetaTests" : "5.020", "Dist::Zilla::Plugin::MetaYAML" : "5.020", "Dist::Zilla::Plugin::MinimumPerl" : "1.003", "Dist::Zilla::Plugin::PodCoverageTests" : "5.020", "Dist::Zilla::Plugin::PodSyntaxTests" : "5.020", "Dist::Zilla::Plugin::PodWeaver" : "4.005", "Dist::Zilla::Plugin::Prereqs" : "5.020", "Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled" : "0.002001", "Dist::Zilla::Plugin::ReadmeAnyFromPod" : "0.142250", "Dist::Zilla::Plugin::ReadmeFromPod" : "0.21", "Dist::Zilla::Plugin::RewriteVersion::Sanitized" : "0.001003", "Dist::Zilla::Plugin::RunExtraTests" : "0.022", "Dist::Zilla::Plugin::Test::CPAN::Changes" : "0.008", "Dist::Zilla::Plugin::Test::Compile::PerFile" : "0.002002", "Dist::Zilla::Plugin::Test::Kwalitee" : "2.07", "Dist::Zilla::Plugin::Test::MinimumVersion" : "2.000005", "Dist::Zilla::Plugin::Test::Perl::Critic" : "2.112410", "Dist::Zilla::Plugin::Test::ReportPrereqs" : "0.019", "Dist::Zilla::Plugin::TestRelease" : "5.020", "Dist::Zilla::Plugin::Twitter" : "0.025", "Dist::Zilla::Plugin::UploadToCPAN" : "5.020", "Dist::Zilla::PluginBundle::Author::KENTNL" : "2.017002", "ExtUtils::MakeMaker" : "6.98", "File::Spec" : "3.48", "FindBin" : "1.51", "Path::IsDev" : "1.001001", "Path::IsDev::Object" : "1.001001", "Path::Tiny" : "0.056", "Pod::Coverage::TrustPod" : "0.100003", "Scalar::Util" : "1.39", "Sub::Exporter" : "0.987", "Test::CPAN::Changes" : "0.30", "Test::CPAN::Meta" : "0.23", "Test::Kwalitee" : "1.22", "Test::More" : "1.001003", "Test::Pod" : "1.48", "Test::Pod::Coverage" : "1.10", "strict" : "1.08", "utf8" : "1.14", "warnings" : "1.24" }, "perl" : { "original" : "v5.21.1", "qv" : 1, "version" : [ 5, 21, 1 ] }, "perl-config" : { "gccversion" : "4.8.3", "myarchname" : "x86_64-linux", "osname" : "linux" }, "platform" : "linux", "uname" : "Linux 3.15.5-aufs x86_64 GenuineIntel GNU/Linux" }, "x_Dist_Zilla" : { "perl" : { "version" : "5.021001" }, "plugins" : [ { "class" : "Dist::Zilla::Plugin::MetaConfig", "name" : "@Author::KENTNL/MetaConfig", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::GithubMeta", "name" : "@Author::KENTNL/GithubMeta", "version" : "0.46" }, { "class" : "Dist::Zilla::Plugin::MetaProvides::Package", "config" : { "Dist::Zilla::Plugin::MetaProvides::Package" : { "finder_objects" : [ { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : "@Author::KENTNL/MetaProvides::Package/AUTOVIV/:InstallModulesPM", "version" : "5.020" } ] }, "Dist::Zilla::Role::MetaProvider::Provider" : { "inherit_missing" : "1", "inherit_version" : "1", "meta_noindex" : "1" } }, "name" : "@Author::KENTNL/MetaProvides::Package", "version" : "2.000004" }, { "class" : "Dist::Zilla::Plugin::MetaData::BuiltWith", "config" : { "Dist::Zilla::Plugin::MetaData::BuiltWith" : { "_stash_key" : "x_BuiltWith", "show_config" : "1", "show_uname" : "1", "uname" : { "uname_args" : [ "-s", "-o", "-r", "-m", "-i" ], "uname_call" : "uname" } } }, "name" : "@Author::KENTNL/MetaData::BuiltWith", "version" : "1.001001" }, { "class" : "Dist::Zilla::Plugin::Git::Contributors", "config" : { "Dist::Zilla::Plugin::Git::Contributors" : { "include_authors" : "0", "include_releaser" : "0", "order_by" : "name" } }, "name" : "@Author::KENTNL/Git::Contributors", "version" : "0.006" }, { "class" : "Dist::Zilla::Plugin::Git::GatherDir", "config" : { "Dist::Zilla::Plugin::Git::GatherDir" : { "include_untracked" : "0" }, "Dist::Zilla::Role::Git::Repo" : { "repo_root" : "." } }, "name" : "@Author::KENTNL/Git::GatherDir", "version" : "2.023" }, { "class" : "Dist::Zilla::Plugin::License", "name" : "@Author::KENTNL/License", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::MetaJSON", "name" : "@Author::KENTNL/MetaJSON", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::MetaYAML", "name" : "@Author::KENTNL/MetaYAML", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::Manifest", "name" : "@Author::KENTNL/Manifest", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::CopyFilesFromBuild", "name" : "@Author::KENTNL/CopyXBuild", "version" : "0.103510" }, { "class" : "Dist::Zilla::Plugin::MetaTests", "name" : "@Author::KENTNL/MetaTests", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::PodCoverageTests", "name" : "@Author::KENTNL/PodCoverageTests", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::PodSyntaxTests", "name" : "@Author::KENTNL/PodSyntaxTests", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::Test::ReportPrereqs", "name" : "@Author::KENTNL/Test::ReportPrereqs", "version" : "0.019" }, { "class" : "Dist::Zilla::Plugin::Test::Kwalitee", "name" : "@Author::KENTNL/Test::Kwalitee", "version" : "2.07" }, { "class" : "Dist::Zilla::Plugin::EOLTests", "name" : "@Author::KENTNL/EOLTests", "version" : "0.02" }, { "class" : "Dist::Zilla::Plugin::Test::MinimumVersion", "name" : "@Author::KENTNL/Test::MinimumVersion", "version" : "2.000005" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : "@Author::KENTNL/Test::Compile::PerFile/AUTOVIV/:InstallModulesPM", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::Test::Compile::PerFile", "config" : { "Dist::Zilla::Plugin::Test::Compile::PerFile" : { "file" : [ "lib/Path/FindDev.pm", "lib/Path/FindDev/Object.pm" ], "path_translator" : "base64_filter", "prefix" : "t/00-compile", "skip" : [], "test_template" : "01-basic.t.tpl", "xt_mode" : null } }, "name" : "@Author::KENTNL/Test::Compile::PerFile", "version" : "0.002002" }, { "class" : "Dist::Zilla::Plugin::Test::Perl::Critic", "name" : "@Author::KENTNL/Test::Perl::Critic", "version" : "2.112410" }, { "class" : "Dist::Zilla::Plugin::ManifestSkip", "name" : "@Author::KENTNL/ManifestSkip", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::RewriteVersion::Sanitized", "config" : { "Dist::Zilla::Role::Version::Sanitize" : { "mantissa" : "6", "normal_form" : "normal_3" } }, "name" : "@Author::KENTNL/RewriteVersion::Sanitized", "version" : "0.001003" }, { "class" : "Dist::Zilla::Plugin::PodWeaver", "config" : { "Dist::Zilla::Plugin::PodWeaver" : { "finder" : [ ":InstallModules", ":ExecFiles" ], "plugins" : [ { "class" : "Pod::Weaver::Plugin::EnsurePod5", "name" : "@CorePrep/EnsurePod5", "version" : "4.006" }, { "class" : "Pod::Weaver::Plugin::H1Nester", "name" : "@CorePrep/H1Nester", "version" : "4.006" }, { "class" : "Pod::Weaver::Plugin::SingleEncoding", "name" : "-SingleEncoding", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Name", "name" : "Name", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Version", "name" : "Version", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Region", "name" : "prelude", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Generic", "name" : "SYNOPSIS", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Generic", "name" : "DESCRIPTION", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Generic", "name" : "OVERVIEW", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Collect", "name" : "METHODS", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Collect", "name" : "FUNCTIONS", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Collect", "name" : "ATTRIBUTES", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Collect", "name" : "PRIVATE_ATTRIBUTES", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Collect", "name" : "PRIVATE_METHODS", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Leftovers", "name" : "Leftovers", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Region", "name" : "postlude", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Authors", "name" : "Authors", "version" : "4.006" }, { "class" : "Pod::Weaver::Section::Legal", "name" : "Legal", "version" : "4.006" } ] } }, "name" : "@Author::KENTNL/PodWeaver", "version" : "4.005" }, { "class" : "Dist::Zilla::Plugin::AutoPrereqs", "name" : "@Author::KENTNL/AutoPrereqs", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::Prereqs", "config" : { "Dist::Zilla::Plugin::Prereqs" : { "phase" : "develop", "type" : "suggests" } }, "name" : "@Author::KENTNL/BundleDevelSuggests", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::MinimumPerl", "name" : "@Author::KENTNL/MinimumPerl", "version" : "1.003" }, { "class" : "Dist::Zilla::Plugin::Authority", "name" : "@Author::KENTNL/Authority", "version" : "1.006" }, { "class" : "Dist::Zilla::Plugin::MakeMaker", "config" : { "Dist::Zilla::Role::TestRunner" : { "default_jobs" : "10" } }, "name" : "@Author::KENTNL/MakeMaker", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::ReadmeFromPod", "name" : "@Author::KENTNL/ReadmeFromPod", "version" : "0.21" }, { "class" : "Dist::Zilla::Plugin::ReadmeAnyFromPod", "name" : "@Author::KENTNL/ReadmeAnyFromPod", "version" : "0.142250" }, { "class" : "Dist::Zilla::Plugin::Test::CPAN::Changes", "name" : "@Author::KENTNL/Test::CPAN::Changes", "version" : "0.008" }, { "class" : "Dist::Zilla::Plugin::RunExtraTests", "config" : { "Dist::Zilla::Role::TestRunner" : { "default_jobs" : "10" } }, "name" : "@Author::KENTNL/RunExtraTests", "version" : "0.022" }, { "class" : "Dist::Zilla::Plugin::TestRelease", "name" : "@Author::KENTNL/TestRelease", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::ConfirmRelease", "name" : "@Author::KENTNL/ConfirmRelease", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::Git::Check", "config" : { "Dist::Zilla::Plugin::Git::Check" : { "untracked_files" : "die" }, "Dist::Zilla::Role::Git::DirtyFiles" : { "allow_dirty" : [ "dist.ini", "Changes" ], "allow_dirty_match" : [], "changelog" : "Changes" }, "Dist::Zilla::Role::Git::Repo" : { "repo_root" : "." } }, "name" : "@Author::KENTNL/Git::Check", "version" : "2.023" }, { "class" : "Dist::Zilla::Plugin::Git::Commit", "config" : { "Dist::Zilla::Plugin::Git::Commit" : { "add_files_in" : [], "commit_msg" : "v%v%n%n%c", "time_zone" : "local" }, "Dist::Zilla::Role::Git::DirtyFiles" : { "allow_dirty" : [ "dist.ini", "Changes" ], "allow_dirty_match" : [], "changelog" : "Changes" }, "Dist::Zilla::Role::Git::Repo" : { "repo_root" : "." } }, "name" : "@Author::KENTNL/commit_dirty_files", "version" : "2.023" }, { "class" : "Dist::Zilla::Plugin::Git::Tag", "config" : { "Dist::Zilla::Plugin::Git::Tag" : { "branch" : null, "signed" : 0, "tag" : "0.5.2-source", "tag_format" : "%v-source", "tag_message" : "v%v", "time_zone" : "local" }, "Dist::Zilla::Role::Git::Repo" : { "repo_root" : "." } }, "name" : "@Author::KENTNL/tag_master", "version" : "2.023" }, { "class" : "Dist::Zilla::Plugin::Git::NextRelease", "name" : "@Author::KENTNL/Git::NextRelease", "version" : "0.002012" }, { "class" : "Dist::Zilla::Plugin::BumpVersionAfterRelease", "name" : "@Author::KENTNL/BumpVersionAfterRelease", "version" : "0.002" }, { "class" : "Dist::Zilla::Plugin::Git::Commit", "config" : { "Dist::Zilla::Plugin::Git::Commit" : { "add_files_in" : [], "commit_msg" : "v%v%n%n%c", "time_zone" : "local" }, "Dist::Zilla::Role::Git::DirtyFiles" : { "allow_dirty" : [ "dist.ini", "Changes" ], "allow_dirty_match" : [ "(?^u:^lib/)" ], "changelog" : "Changes" }, "Dist::Zilla::Role::Git::Repo" : { "repo_root" : "." } }, "name" : "@Author::KENTNL/commit_release_changes", "version" : "2.023" }, { "class" : "Dist::Zilla::Plugin::Git::CommitBuild", "config" : { "Dist::Zilla::Plugin::Git::CommitBuild" : { "branch" : "build/%b", "build_root" : null, "message" : "Build results of %h (on %b)", "multiple_inheritance" : 0, "release_branch" : "releases", "release_message" : "Build results of %h (on %b)" }, "Dist::Zilla::Role::Git::Repo" : { "repo_root" : "." } }, "name" : "@Author::KENTNL/Git::CommitBuild", "version" : "2.023" }, { "class" : "Dist::Zilla::Plugin::Git::Tag", "config" : { "Dist::Zilla::Plugin::Git::Tag" : { "branch" : "releases", "signed" : 0, "tag" : "0.5.2", "tag_format" : "%v", "tag_message" : "v%v", "time_zone" : "local" }, "Dist::Zilla::Role::Git::Repo" : { "repo_root" : "." } }, "name" : "@Author::KENTNL/tag_release", "version" : "2.023" }, { "class" : "Dist::Zilla::Plugin::UploadToCPAN", "name" : "@Author::KENTNL/UploadToCPAN", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::Twitter", "name" : "@Author::KENTNL/Twitter", "version" : "0.025" }, { "class" : "Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled", "config" : { "Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled" : { "applyto_map" : [ "build.requires = build.recommends", "test.requires = test.recommends", "runtime.requires = runtime.recommends", "configure.requires = configure.recommends", "develop.requires = develop.recommends" ], "applyto_phase" : [ "build", "test", "runtime", "configure", "develop" ], "modules" : [ "ExtUtils::MakeMaker", "Test::More" ] } }, "name" : "@Author::KENTNL/Prereqs::Recommend::MatchInstalled", "version" : "0.002001" }, { "class" : "Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled", "config" : { "Dist::Zilla::Plugin::Prereqs::Recommend::MatchInstalled" : { "applyto_map" : [ "develop.suggests = develop.suggests" ], "applyto_phase" : [ "develop" ], "modules" : [ "Dist::Zilla::PluginBundle::Author::KENTNL", "Dist::Zilla::App::Command::bakeini" ] } }, "name" : "@Author::KENTNL/always_latest_develop_bundle", "version" : "0.002001" }, { "class" : "Dist::Zilla::Plugin::Prereqs", "config" : { "Dist::Zilla::Plugin::Prereqs" : { "phase" : "develop", "type" : "requires" } }, "name" : "@Author::KENTNL/::Role::BundleDeps", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::Prereqs", "config" : { "Dist::Zilla::Plugin::Prereqs" : { "phase" : "runtime", "type" : "requires" } }, "name" : "RuntimeRequires", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":InstallModules", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":IncModules", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":TestFiles", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":ExecFiles", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":ShareFiles", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":MainModule", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":AllFiles", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":NoFiles", "version" : "5.020" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : "@Author::KENTNL/MetaProvides::Package/AUTOVIV/:InstallModulesPM", "version" : "5.020" } ], "zilla" : { "class" : "Dist::Zilla::Dist::Builder", "config" : { "is_trial" : "0" }, "version" : "5.020" } }, "x_authority" : "cpan:KENTNL", "x_contributors" : [ "Alexandr Ciornii ", "David Steinbrunner " ] } Path-FindDev-0.5.2/weaver.ini0000644000175000017500000000136112373555141014414 0ustar kentkent[@CorePrep] [-SingleEncoding] [Name] [Version] [Region / prelude] [Generic / SYNOPSIS] [Generic / DESCRIPTION] [Generic / OVERVIEW] ;[Generic / METHODS] ;[Collect / METHODS] [Collect / METHODS] command = method [Collect / FUNCTIONS] command = func [Collect / ATTRIBUTES] command = attr ;[Collect / FILTER_METHODS] ;header = FILTER METHODS ;command = filter ;[Collect / TERMINATOR_LIST_METHODS] ;header = TERMINATOR LIST METHODS ;command = terminator ;[Collect / MIRROR_LIST_METHODS] ;header = MIRROR LIST METHODS ;command = mirrorlist [Collect / PRIVATE_ATTRIBUTES] header = PRIVATE ATTRIBUTES command = p_attr [Collect / PRIVATE_METHODS] header = PRIVATE METHODS command = p_method [Leftovers] [Region / postlude] [Authors] [Legal] Path-FindDev-0.5.2/MANIFEST0000644000175000017500000000140712373555141013554 0ustar kentkent# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.020. .gitignore .perltidyrc .travis.yml Changes LICENSE MANIFEST META.json META.yml Makefile.PL README dist.ini dist.ini.meta layout/self_structure.dot layout/self_structure.png lib/Path/FindDev.pm lib/Path/FindDev/Object.pm maint/perlcritic.rc.gen.pl misc/Changes.deps misc/Changes.deps.all misc/Changes.deps.dev misc/Changes.deps.opt misc/perlcritic.deps perlcritic.rc t/00-compile/lib_Path_FindDev_Object_pm.t t/00-compile/lib_Path_FindDev_pm.t t/00-report-prereqs.dd t/00-report-prereqs.t t/basic.t weaver.ini xt/author/critic.t xt/release/cpan-changes.t xt/release/distmeta.t xt/release/eol.t xt/release/kwalitee.t xt/release/minimum-version.t xt/release/pod-coverage.t xt/release/pod-syntax.t