forked from openkylin/liblwp-mediatypes-perl
Import Upstream version 6.04
This commit is contained in:
commit
3e46ce40a6
|
@ -0,0 +1,24 @@
|
|||
Change history for LWP-MediaTypes
|
||||
|
||||
6.04 2019-03-20 13:01:15Z
|
||||
- Full release of changes in 6.03
|
||||
|
||||
6.03 2019-03-19 16:44:17Z (TRIAL RELEASE)
|
||||
- Convert release process to Dist::Zilla
|
||||
- Allow File::Temp handles to be guessed correctly (GH#1) (Wesley
|
||||
Schwengle)
|
||||
|
||||
6.02 2012-02-16
|
||||
- Update the media.types database
|
||||
- Restore perl-5.6 compatiblity.
|
||||
|
||||
6.01 2011-02-27
|
||||
- Use mockup object to avoid test dependency on URI::URL and HTTP::Request.
|
||||
- Drop MacOS (classic) support
|
||||
|
||||
6.00 2011-02-25
|
||||
- Initial release of LWP-MediaTypes as a separate distribution. There are
|
||||
no code changes besides incrementing the version number since
|
||||
libwww-perl-5.837.
|
||||
- The LWP::MediaTypes module used to be bundled with the libwww-perl
|
||||
distribution.
|
|
@ -0,0 +1,72 @@
|
|||
This is the Perl distribution LWP-MediaTypes.
|
||||
|
||||
Installing LWP-MediaTypes is straightforward.
|
||||
|
||||
## Installation with cpanm
|
||||
|
||||
If you have cpanm, you only need one line:
|
||||
|
||||
% cpanm LWP::MediaTypes
|
||||
|
||||
If it does not have permission to install modules to the current perl, cpanm
|
||||
will automatically set up and install to a local::lib in your home directory.
|
||||
See the local::lib documentation (https://metacpan.org/pod/local::lib) for
|
||||
details on enabling it in your environment.
|
||||
|
||||
## Installing with the CPAN shell
|
||||
|
||||
Alternatively, if your CPAN shell is set up, you should just be able to do:
|
||||
|
||||
% cpan LWP::MediaTypes
|
||||
|
||||
## Manual installation
|
||||
|
||||
As a last resort, you can manually install it. Download the tarball, untar it,
|
||||
install configure prerequisites (see below), then build it:
|
||||
|
||||
% perl Makefile.PL
|
||||
% make && make test
|
||||
|
||||
Then install it:
|
||||
|
||||
% make install
|
||||
|
||||
On Windows platforms, you should use `dmake` or `nmake`, instead of `make`.
|
||||
|
||||
If your perl is system-managed, you can create a local::lib in your home
|
||||
directory to install modules to. For details, see the local::lib documentation:
|
||||
https://metacpan.org/pod/local::lib
|
||||
|
||||
The prerequisites of this distribution will also have to be installed manually. The
|
||||
prerequisites are listed in one of the files: `MYMETA.yml` or `MYMETA.json` generated
|
||||
by running the manual build process described above.
|
||||
|
||||
## Configure Prerequisites
|
||||
|
||||
This distribution requires other modules to be installed before this
|
||||
distribution's installer can be run. They can be found under the
|
||||
"configure_requires" key of META.yml or the
|
||||
"{prereqs}{configure}{requires}" key of META.json.
|
||||
|
||||
## Other Prerequisites
|
||||
|
||||
This distribution may require additional modules to be installed after running
|
||||
Makefile.PL.
|
||||
Look for prerequisites in the following phases:
|
||||
|
||||
* to run make, PHASE = build
|
||||
* to use the module code itself, PHASE = runtime
|
||||
* to run tests, PHASE = test
|
||||
|
||||
They can all be found in the "PHASE_requires" key of MYMETA.yml or the
|
||||
"{prereqs}{PHASE}{requires}" key of MYMETA.json.
|
||||
|
||||
## Documentation
|
||||
|
||||
LWP-MediaTypes documentation is available as POD.
|
||||
You can run `perldoc` from a shell to read the documentation:
|
||||
|
||||
% perldoc LWP::MediaTypes
|
||||
|
||||
For more information on installing Perl modules via CPAN, please see:
|
||||
https://www.cpan.org/modules/INSTALL.html
|
|
@ -0,0 +1,379 @@
|
|||
This software is copyright (c) 1995 by Gisle Aas.
|
||||
|
||||
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) 1995 by Gisle Aas.
|
||||
|
||||
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.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) 19yy <name of author>
|
||||
|
||||
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.
|
||||
|
||||
<signature of Ty Coon>, 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) 1995 by Gisle Aas.
|
||||
|
||||
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
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.012.
|
||||
Changes
|
||||
INSTALL
|
||||
LICENSE
|
||||
MANIFEST
|
||||
META.json
|
||||
META.yml
|
||||
Makefile.PL
|
||||
README
|
||||
cpanfile
|
||||
dist.ini
|
||||
lib/LWP/MediaTypes.pm
|
||||
lib/LWP/media.types
|
||||
t/00-report-prereqs.dd
|
||||
t/00-report-prereqs.t
|
||||
t/mediatypes.t
|
||||
xt/author/00-compile.t
|
||||
xt/author/eol.t
|
||||
xt/author/minimum-version.t
|
||||
xt/author/mojibake.t
|
||||
xt/author/pod-coverage.t
|
||||
xt/author/pod-spell.t
|
||||
xt/author/pod-syntax.t
|
||||
xt/author/portability.t
|
||||
xt/author/test-version.t
|
||||
xt/release/changes_has_content.t
|
|
@ -0,0 +1,736 @@
|
|||
{
|
||||
"abstract" : "guess media type for a file or a URL",
|
||||
"author" : [
|
||||
"Gisle Aas <gisle@activestate.com>"
|
||||
],
|
||||
"dynamic_config" : 0,
|
||||
"generated_by" : "Dist::Zilla version 6.012, CPAN::Meta::Converter version 2.150010",
|
||||
"license" : [
|
||||
"perl_5"
|
||||
],
|
||||
"meta-spec" : {
|
||||
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
|
||||
"version" : 2
|
||||
},
|
||||
"name" : "LWP-MediaTypes",
|
||||
"no_index" : {
|
||||
"directory" : [
|
||||
"t",
|
||||
"xt"
|
||||
]
|
||||
},
|
||||
"prereqs" : {
|
||||
"configure" : {
|
||||
"requires" : {
|
||||
"ExtUtils::MakeMaker" : "0"
|
||||
}
|
||||
},
|
||||
"develop" : {
|
||||
"recommends" : {
|
||||
"Dist::Zilla::PluginBundle::Git::VersionManager" : "0.007"
|
||||
},
|
||||
"requires" : {
|
||||
"Encode" : "0",
|
||||
"File::Spec" : "0",
|
||||
"IO::Handle" : "0",
|
||||
"IPC::Open3" : "0",
|
||||
"Pod::Coverage::TrustPod" : "0",
|
||||
"Pod::Wordlist" : "0",
|
||||
"Test::EOL" : "0",
|
||||
"Test::MinimumVersion" : "0",
|
||||
"Test::Mojibake" : "0",
|
||||
"Test::More" : "0.94",
|
||||
"Test::Pod" : "1.41",
|
||||
"Test::Pod::Coverage" : "1.08",
|
||||
"Test::Portability::Files" : "0",
|
||||
"Test::Spelling" : "0.12",
|
||||
"Test::Version" : "1",
|
||||
"perl" : "5.006",
|
||||
"warnings" : "0"
|
||||
}
|
||||
},
|
||||
"runtime" : {
|
||||
"requires" : {
|
||||
"Carp" : "0",
|
||||
"Exporter" : "0",
|
||||
"File::Basename" : "0",
|
||||
"Scalar::Util" : "0",
|
||||
"perl" : "5.006002",
|
||||
"strict" : "0"
|
||||
}
|
||||
},
|
||||
"test" : {
|
||||
"recommends" : {
|
||||
"CPAN::Meta" : "2.120900"
|
||||
},
|
||||
"requires" : {
|
||||
"ExtUtils::MakeMaker" : "0",
|
||||
"File::Spec" : "0",
|
||||
"Test::Fatal" : "0",
|
||||
"Test::More" : "0",
|
||||
"overload" : "0",
|
||||
"warnings" : "0"
|
||||
}
|
||||
}
|
||||
},
|
||||
"provides" : {
|
||||
"LWP::MediaTypes" : {
|
||||
"file" : "lib/LWP/MediaTypes.pm",
|
||||
"version" : "6.04"
|
||||
}
|
||||
},
|
||||
"release_status" : "stable",
|
||||
"resources" : {
|
||||
"bugtracker" : {
|
||||
"web" : "https://github.com/libwww-perl/lwp-mediatypes/issues"
|
||||
},
|
||||
"homepage" : "https://github.com/libwww-perl/lwp-mediatypes",
|
||||
"repository" : {
|
||||
"type" : "git",
|
||||
"url" : "https://github.com/libwww-perl/lwp-mediatypes.git",
|
||||
"web" : "https://github.com/libwww-perl/lwp-mediatypes"
|
||||
},
|
||||
"x_IRC" : "irc://irc.perl.org/#lwp",
|
||||
"x_MailingList" : "mailto:libwww@perl.org"
|
||||
},
|
||||
"version" : "6.04",
|
||||
"x_Dist_Zilla" : {
|
||||
"perl" : {
|
||||
"version" : "5.026001"
|
||||
},
|
||||
"plugins" : [
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Git::GatherDir",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::GatherDir" : {
|
||||
"exclude_filename" : [
|
||||
"LICENSE",
|
||||
"META.json",
|
||||
"README.md",
|
||||
"cpanfile"
|
||||
],
|
||||
"exclude_match" : [],
|
||||
"follow_symlinks" : 0,
|
||||
"include_dotfiles" : 0,
|
||||
"prefix" : "",
|
||||
"prune_directory" : [],
|
||||
"root" : "."
|
||||
},
|
||||
"Dist::Zilla::Plugin::Git::GatherDir" : {
|
||||
"include_untracked" : 0
|
||||
}
|
||||
},
|
||||
"name" : "Git::GatherDir",
|
||||
"version" : "2.045"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::MetaConfig",
|
||||
"name" : "MetaConfig",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::MetaProvides::Package",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::MetaProvides::Package" : {
|
||||
"finder_objects" : [
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : "MetaProvides::Package/AUTOVIV/:InstallModulesPM",
|
||||
"version" : "6.012"
|
||||
}
|
||||
],
|
||||
"include_underscores" : 0
|
||||
},
|
||||
"Dist::Zilla::Role::MetaProvider::Provider" : {
|
||||
"$Dist::Zilla::Role::MetaProvider::Provider::VERSION" : "2.002004",
|
||||
"inherit_missing" : 1,
|
||||
"inherit_version" : 1,
|
||||
"meta_noindex" : 1
|
||||
},
|
||||
"Dist::Zilla::Role::ModuleMetadata" : {
|
||||
"Module::Metadata" : "1.000033",
|
||||
"version" : "0.004"
|
||||
}
|
||||
},
|
||||
"name" : "MetaProvides::Package",
|
||||
"version" : "2.004003"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::MetaNoIndex",
|
||||
"name" : "MetaNoIndex",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::MetaYAML",
|
||||
"name" : "MetaYAML",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::MetaJSON",
|
||||
"name" : "MetaJSON",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::MetaResources",
|
||||
"name" : "MetaResources",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Git::Contributors",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Git::Contributors" : {
|
||||
"git_version" : "2.20.1",
|
||||
"include_authors" : 0,
|
||||
"include_releaser" : 1,
|
||||
"order_by" : "name",
|
||||
"paths" : []
|
||||
}
|
||||
},
|
||||
"name" : "Git::Contributors",
|
||||
"version" : "0.035"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::GithubMeta",
|
||||
"name" : "GithubMeta",
|
||||
"version" : "0.58"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Authority",
|
||||
"name" : "Authority",
|
||||
"version" : "1.009"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Manifest",
|
||||
"name" : "Manifest",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::License",
|
||||
"name" : "License",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::InstallGuide",
|
||||
"name" : "InstallGuide",
|
||||
"version" : "1.200012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::ExecDir",
|
||||
"name" : "ExecDir",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Prereqs",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Prereqs" : {
|
||||
"phase" : "runtime",
|
||||
"type" : "requires"
|
||||
}
|
||||
},
|
||||
"name" : "Prereqs",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::AutoPrereqs",
|
||||
"name" : "AutoPrereqs",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::CPANFile",
|
||||
"name" : "CPANFile",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::MakeMaker",
|
||||
"config" : {
|
||||
"Dist::Zilla::Role::TestRunner" : {
|
||||
"default_jobs" : 1
|
||||
}
|
||||
},
|
||||
"name" : "MakeMaker",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::MojibakeTests",
|
||||
"name" : "MojibakeTests",
|
||||
"version" : "0.8"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Test::Version",
|
||||
"name" : "Test::Version",
|
||||
"version" : "1.09"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Test::ReportPrereqs",
|
||||
"name" : "Test::ReportPrereqs",
|
||||
"version" : "0.027"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Test::Compile",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Test::Compile" : {
|
||||
"bail_out_on_fail" : "1",
|
||||
"fail_on_warning" : "author",
|
||||
"fake_home" : 0,
|
||||
"filename" : "xt/author/00-compile.t",
|
||||
"module_finder" : [
|
||||
":InstallModules"
|
||||
],
|
||||
"needs_display" : 0,
|
||||
"phase" : "develop",
|
||||
"script_finder" : [
|
||||
":PerlExecFiles"
|
||||
],
|
||||
"skips" : [],
|
||||
"switch" : []
|
||||
}
|
||||
},
|
||||
"name" : "Test::Compile",
|
||||
"version" : "2.058"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Substitute",
|
||||
"name" : "00-compile.t",
|
||||
"version" : "0.006"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Test::Portability",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Test::Portability" : {
|
||||
"options" : ""
|
||||
}
|
||||
},
|
||||
"name" : "Test::Portability",
|
||||
"version" : "2.001000"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Test::EOL",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Test::EOL" : {
|
||||
"filename" : "xt/author/eol.t",
|
||||
"finder" : [
|
||||
":ExecFiles",
|
||||
":InstallModules",
|
||||
":TestFiles"
|
||||
],
|
||||
"trailing_whitespace" : 1
|
||||
}
|
||||
},
|
||||
"name" : "Test::EOL",
|
||||
"version" : "0.19"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Test::ChangesHasContent",
|
||||
"name" : "Test::ChangesHasContent",
|
||||
"version" : "0.011"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Substitute",
|
||||
"name" : "changes_has_content.t",
|
||||
"version" : "0.006"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Test::MinimumVersion",
|
||||
"name" : "Test::MinimumVersion",
|
||||
"version" : "2.000008"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::PodSyntaxTests",
|
||||
"name" : "PodSyntaxTests",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Test::Pod::Coverage::Configurable",
|
||||
"name" : "Test::Pod::Coverage::Configurable",
|
||||
"version" : "0.07"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Test::PodSpelling",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Test::PodSpelling" : {
|
||||
"directories" : [
|
||||
"bin",
|
||||
"lib"
|
||||
],
|
||||
"spell_cmd" : "aspell list",
|
||||
"stopwords" : [
|
||||
"eg"
|
||||
],
|
||||
"wordlist" : "Pod::Wordlist"
|
||||
}
|
||||
},
|
||||
"name" : "Test::PodSpelling",
|
||||
"version" : "2.007005"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Git::Check",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Git::Check" : {
|
||||
"untracked_files" : "die"
|
||||
},
|
||||
"Dist::Zilla::Role::Git::DirtyFiles" : {
|
||||
"allow_dirty" : [],
|
||||
"allow_dirty_match" : [],
|
||||
"changelog" : "Changes"
|
||||
},
|
||||
"Dist::Zilla::Role::Git::Repo" : {
|
||||
"git_version" : "2.20.1",
|
||||
"repo_root" : "."
|
||||
}
|
||||
},
|
||||
"name" : "Git::Check",
|
||||
"version" : "2.045"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::CheckStrictVersion",
|
||||
"name" : "CheckStrictVersion",
|
||||
"version" : "0.001"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::RunExtraTests",
|
||||
"config" : {
|
||||
"Dist::Zilla::Role::TestRunner" : {
|
||||
"default_jobs" : 1
|
||||
}
|
||||
},
|
||||
"name" : "RunExtraTests",
|
||||
"version" : "0.029"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::CheckChangeLog",
|
||||
"name" : "CheckChangeLog",
|
||||
"version" : "0.05"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::CheckChangesHasContent",
|
||||
"name" : "CheckChangesHasContent",
|
||||
"version" : "0.011"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::TestRelease",
|
||||
"name" : "TestRelease",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::UploadToCPAN",
|
||||
"name" : "UploadToCPAN",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::ReadmeAnyFromPod",
|
||||
"config" : {
|
||||
"Dist::Zilla::Role::FileWatcher" : {
|
||||
"version" : "0.006"
|
||||
}
|
||||
},
|
||||
"name" : "Markdown_Readme",
|
||||
"version" : "0.163250"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::CopyFilesFromRelease",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::CopyFilesFromRelease" : {
|
||||
"filename" : [
|
||||
"LICENSE",
|
||||
"META.json",
|
||||
"cpanfile"
|
||||
],
|
||||
"match" : []
|
||||
}
|
||||
},
|
||||
"name" : "CopyFilesFromRelease",
|
||||
"version" : "0.006"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Prereqs",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Prereqs" : {
|
||||
"phase" : "develop",
|
||||
"type" : "recommends"
|
||||
}
|
||||
},
|
||||
"name" : "@Git::VersionManager/pluginbundle version",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::RewriteVersion::Transitional",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::RewriteVersion" : {
|
||||
"add_tarball_name" : 0,
|
||||
"finders" : [
|
||||
":ExecFiles",
|
||||
":InstallModules"
|
||||
],
|
||||
"global" : 0,
|
||||
"skip_version_provider" : 0
|
||||
},
|
||||
"Dist::Zilla::Plugin::RewriteVersion::Transitional" : {}
|
||||
},
|
||||
"name" : "@Git::VersionManager/RewriteVersion::Transitional",
|
||||
"version" : "0.009"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::MetaProvides::Update",
|
||||
"name" : "@Git::VersionManager/MetaProvides::Update",
|
||||
"version" : "0.007"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::CopyFilesFromRelease",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::CopyFilesFromRelease" : {
|
||||
"filename" : [
|
||||
"Changes"
|
||||
],
|
||||
"match" : []
|
||||
}
|
||||
},
|
||||
"name" : "@Git::VersionManager/CopyFilesFromRelease",
|
||||
"version" : "0.006"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Git::Commit",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Git::Commit" : {
|
||||
"add_files_in" : [],
|
||||
"commit_msg" : "v%v%n%n%c"
|
||||
},
|
||||
"Dist::Zilla::Role::Git::DirtyFiles" : {
|
||||
"allow_dirty" : [
|
||||
"Changes",
|
||||
"LICENSE",
|
||||
"META.json",
|
||||
"README.md",
|
||||
"cpanfile"
|
||||
],
|
||||
"allow_dirty_match" : [],
|
||||
"changelog" : "Changes"
|
||||
},
|
||||
"Dist::Zilla::Role::Git::Repo" : {
|
||||
"git_version" : "2.20.1",
|
||||
"repo_root" : "."
|
||||
},
|
||||
"Dist::Zilla::Role::Git::StringFormatter" : {
|
||||
"time_zone" : "local"
|
||||
}
|
||||
},
|
||||
"name" : "@Git::VersionManager/release snapshot",
|
||||
"version" : "2.045"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Git::Tag",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Git::Tag" : {
|
||||
"branch" : null,
|
||||
"changelog" : "Changes",
|
||||
"signed" : 0,
|
||||
"tag" : "v6.04",
|
||||
"tag_format" : "v%v",
|
||||
"tag_message" : "v%v"
|
||||
},
|
||||
"Dist::Zilla::Role::Git::Repo" : {
|
||||
"git_version" : "2.20.1",
|
||||
"repo_root" : "."
|
||||
},
|
||||
"Dist::Zilla::Role::Git::StringFormatter" : {
|
||||
"time_zone" : "local"
|
||||
}
|
||||
},
|
||||
"name" : "@Git::VersionManager/Git::Tag",
|
||||
"version" : "2.045"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::BumpVersionAfterRelease" : {
|
||||
"finders" : [
|
||||
":ExecFiles",
|
||||
":InstallModules"
|
||||
],
|
||||
"global" : 0,
|
||||
"munge_makefile_pl" : 1
|
||||
},
|
||||
"Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional" : {}
|
||||
},
|
||||
"name" : "@Git::VersionManager/BumpVersionAfterRelease::Transitional",
|
||||
"version" : "0.009"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::NextRelease",
|
||||
"name" : "@Git::VersionManager/NextRelease",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Git::Commit",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Git::Commit" : {
|
||||
"add_files_in" : [],
|
||||
"commit_msg" : "increment $VERSION after %v release"
|
||||
},
|
||||
"Dist::Zilla::Role::Git::DirtyFiles" : {
|
||||
"allow_dirty" : [
|
||||
"Build.PL",
|
||||
"Changes",
|
||||
"Makefile.PL"
|
||||
],
|
||||
"allow_dirty_match" : [
|
||||
"(?^:^lib/.*\\.pm$)"
|
||||
],
|
||||
"changelog" : "Changes"
|
||||
},
|
||||
"Dist::Zilla::Role::Git::Repo" : {
|
||||
"git_version" : "2.20.1",
|
||||
"repo_root" : "."
|
||||
},
|
||||
"Dist::Zilla::Role::Git::StringFormatter" : {
|
||||
"time_zone" : "local"
|
||||
}
|
||||
},
|
||||
"name" : "@Git::VersionManager/post-release commit",
|
||||
"version" : "2.045"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::Git::Push",
|
||||
"config" : {
|
||||
"Dist::Zilla::Plugin::Git::Push" : {
|
||||
"push_to" : [
|
||||
"origin"
|
||||
],
|
||||
"remotes_must_exist" : 1
|
||||
},
|
||||
"Dist::Zilla::Role::Git::Repo" : {
|
||||
"git_version" : "2.20.1",
|
||||
"repo_root" : "."
|
||||
}
|
||||
},
|
||||
"name" : "Git::Push",
|
||||
"version" : "2.045"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::ConfirmRelease",
|
||||
"name" : "ConfirmRelease",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":InstallModules",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":IncModules",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":TestFiles",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":ExtraTestFiles",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":ExecFiles",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":PerlExecFiles",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":ShareFiles",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":MainModule",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":AllFiles",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : ":NoFiles",
|
||||
"version" : "6.012"
|
||||
},
|
||||
{
|
||||
"class" : "Dist::Zilla::Plugin::FinderCode",
|
||||
"name" : "MetaProvides::Package/AUTOVIV/:InstallModulesPM",
|
||||
"version" : "6.012"
|
||||
}
|
||||
],
|
||||
"zilla" : {
|
||||
"class" : "Dist::Zilla::Dist::Builder",
|
||||
"config" : {
|
||||
"is_trial" : 0
|
||||
},
|
||||
"version" : "6.012"
|
||||
}
|
||||
},
|
||||
"x_authority" : "cpan:LWWWP",
|
||||
"x_contributors" : [
|
||||
"Adam Kennedy <adamk@cpan.org>",
|
||||
"Adam Sjogren <asjo@koldfront.dk>",
|
||||
"Alexey Tourbin <at@altlinux.ru>",
|
||||
"Alex Kapranoff <ka@nadoby.ru>",
|
||||
"amire80 <amir.aharoni@gmail.com>",
|
||||
"Andreas J. Koenig <andreas.koenig@anima.de>",
|
||||
"Bill Mann <wfmann@alum.mit.edu>",
|
||||
"Bron Gondwana <brong@fastmail.fm>",
|
||||
"Daniel Hedlund <Daniel.Hedlund@eprize.com>",
|
||||
"David E. Wheeler <david@justatheory.com>",
|
||||
"DAVIDRW <davidrw@cpan.org>",
|
||||
"Father Chrysostomos <sprout@cpan.org>",
|
||||
"FWILES <FWILES@cpan.org>",
|
||||
"Gavin Peters <gpeters@deepsky.com>",
|
||||
"Gisle Aas <aas@oslonett.no>",
|
||||
"Gisle Aas <gisle.aas@it.uib.no>",
|
||||
"Gisle Aas <gisle@aas.no>",
|
||||
"Gisle Aas <gisle@baux-2.lan>",
|
||||
"Graeme Thompson <Graeme.Thompson@mobilecohesion.com>",
|
||||
"Hans-H. Froehlich <hfroehlich@co-de-co.de>",
|
||||
"Ian Kilgore <iank@cpan.org>",
|
||||
"Jacob J <waif@chaos2.org>",
|
||||
"jefflee <shaohua@gmail.com>",
|
||||
"john9art <john9art@yahoo.com>",
|
||||
"Karen Etheridge <ether@cpan.org>",
|
||||
"Mark Stosberg <mark@stosberg.com>",
|
||||
"Mark Stosberg <MARKSTOS@cpan.org>",
|
||||
"Mark Stosberg <mark@summersault.com>",
|
||||
"Mike Schilli <mschilli@yahoo-inc.com>",
|
||||
"mschilli <github@perlmeister.com>",
|
||||
"murphy <murphy@genome.chop.edu>",
|
||||
"Olaf Alders <olaf@wundersolutions.com>",
|
||||
"Ondrej Hanak <ondrej.hanak@ubs.com>",
|
||||
"Peter Rabbitson <ribasushi@cpan.org>",
|
||||
"phrstbrn <phrstbrn@gmail.com>",
|
||||
"Robert Stone <talby@trap.mtview.ca.us>",
|
||||
"Rolf Grossmann <rg@progtech.net>",
|
||||
"ruff <ruff@ukrpost.net>",
|
||||
"sasao <sasao@yugen.org>",
|
||||
"Sean M. Burke <sburke@cpan.org>",
|
||||
"Slaven Rezic <slaven@rezic.de>",
|
||||
"Slaven Rezic <srezic@iconmobile.com>",
|
||||
"Spiros Denaxas <s.denaxas@gmail.com>",
|
||||
"Steve Hay <SteveHay@planit.com>",
|
||||
"Todd Lipcon <todd@amiestreet.com>",
|
||||
"Tom Hukins <tom@eborcom.com>",
|
||||
"Tony Finch <dot@dotat.at>",
|
||||
"Toru Yamaguchi <zigorou@cpan.org>",
|
||||
"uid39246 <uid39246>",
|
||||
"Ville Skytta <ville.skytta@iki.fi>",
|
||||
"Wesley Schwengle <wesley@schwengle.net>",
|
||||
"Yuri Karaban <tech@askold.net>",
|
||||
"Zefram <zefram@fysh.org>"
|
||||
],
|
||||
"x_generated_by_perl" : "v5.26.1",
|
||||
"x_serialization_backend" : "Cpanel::JSON::XS version 4.04"
|
||||
}
|
||||
|
|
@ -0,0 +1,540 @@
|
|||
---
|
||||
abstract: 'guess media type for a file or a URL'
|
||||
author:
|
||||
- 'Gisle Aas <gisle@activestate.com>'
|
||||
build_requires:
|
||||
ExtUtils::MakeMaker: '0'
|
||||
File::Spec: '0'
|
||||
Test::Fatal: '0'
|
||||
Test::More: '0'
|
||||
overload: '0'
|
||||
warnings: '0'
|
||||
configure_requires:
|
||||
ExtUtils::MakeMaker: '0'
|
||||
dynamic_config: 0
|
||||
generated_by: 'Dist::Zilla version 6.012, CPAN::Meta::Converter version 2.150010'
|
||||
license: perl
|
||||
meta-spec:
|
||||
url: http://module-build.sourceforge.net/META-spec-v1.4.html
|
||||
version: '1.4'
|
||||
name: LWP-MediaTypes
|
||||
no_index:
|
||||
directory:
|
||||
- t
|
||||
- xt
|
||||
provides:
|
||||
LWP::MediaTypes:
|
||||
file: lib/LWP/MediaTypes.pm
|
||||
version: '6.04'
|
||||
requires:
|
||||
Carp: '0'
|
||||
Exporter: '0'
|
||||
File::Basename: '0'
|
||||
Scalar::Util: '0'
|
||||
perl: '5.006002'
|
||||
strict: '0'
|
||||
resources:
|
||||
IRC: irc://irc.perl.org/#lwp
|
||||
MailingList: mailto:libwww@perl.org
|
||||
bugtracker: https://github.com/libwww-perl/lwp-mediatypes/issues
|
||||
homepage: https://github.com/libwww-perl/lwp-mediatypes
|
||||
repository: https://github.com/libwww-perl/lwp-mediatypes.git
|
||||
version: '6.04'
|
||||
x_Dist_Zilla:
|
||||
perl:
|
||||
version: '5.026001'
|
||||
plugins:
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Git::GatherDir
|
||||
config:
|
||||
Dist::Zilla::Plugin::GatherDir:
|
||||
exclude_filename:
|
||||
- LICENSE
|
||||
- META.json
|
||||
- README.md
|
||||
- cpanfile
|
||||
exclude_match: []
|
||||
follow_symlinks: 0
|
||||
include_dotfiles: 0
|
||||
prefix: ''
|
||||
prune_directory: []
|
||||
root: .
|
||||
Dist::Zilla::Plugin::Git::GatherDir:
|
||||
include_untracked: 0
|
||||
name: Git::GatherDir
|
||||
version: '2.045'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::MetaConfig
|
||||
name: MetaConfig
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::MetaProvides::Package
|
||||
config:
|
||||
Dist::Zilla::Plugin::MetaProvides::Package:
|
||||
finder_objects:
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: MetaProvides::Package/AUTOVIV/:InstallModulesPM
|
||||
version: '6.012'
|
||||
include_underscores: 0
|
||||
Dist::Zilla::Role::MetaProvider::Provider:
|
||||
$Dist::Zilla::Role::MetaProvider::Provider::VERSION: '2.002004'
|
||||
inherit_missing: '1'
|
||||
inherit_version: '1'
|
||||
meta_noindex: '1'
|
||||
Dist::Zilla::Role::ModuleMetadata:
|
||||
Module::Metadata: '1.000033'
|
||||
version: '0.004'
|
||||
name: MetaProvides::Package
|
||||
version: '2.004003'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::MetaNoIndex
|
||||
name: MetaNoIndex
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::MetaYAML
|
||||
name: MetaYAML
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::MetaJSON
|
||||
name: MetaJSON
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::MetaResources
|
||||
name: MetaResources
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Git::Contributors
|
||||
config:
|
||||
Dist::Zilla::Plugin::Git::Contributors:
|
||||
git_version: 2.20.1
|
||||
include_authors: 0
|
||||
include_releaser: 1
|
||||
order_by: name
|
||||
paths: []
|
||||
name: Git::Contributors
|
||||
version: '0.035'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::GithubMeta
|
||||
name: GithubMeta
|
||||
version: '0.58'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Authority
|
||||
name: Authority
|
||||
version: '1.009'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Manifest
|
||||
name: Manifest
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::License
|
||||
name: License
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::InstallGuide
|
||||
name: InstallGuide
|
||||
version: '1.200012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::ExecDir
|
||||
name: ExecDir
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Prereqs
|
||||
config:
|
||||
Dist::Zilla::Plugin::Prereqs:
|
||||
phase: runtime
|
||||
type: requires
|
||||
name: Prereqs
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::AutoPrereqs
|
||||
name: AutoPrereqs
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::CPANFile
|
||||
name: CPANFile
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::MakeMaker
|
||||
config:
|
||||
Dist::Zilla::Role::TestRunner:
|
||||
default_jobs: 1
|
||||
name: MakeMaker
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::MojibakeTests
|
||||
name: MojibakeTests
|
||||
version: '0.8'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Test::Version
|
||||
name: Test::Version
|
||||
version: '1.09'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Test::ReportPrereqs
|
||||
name: Test::ReportPrereqs
|
||||
version: '0.027'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Test::Compile
|
||||
config:
|
||||
Dist::Zilla::Plugin::Test::Compile:
|
||||
bail_out_on_fail: '1'
|
||||
fail_on_warning: author
|
||||
fake_home: 0
|
||||
filename: xt/author/00-compile.t
|
||||
module_finder:
|
||||
- ':InstallModules'
|
||||
needs_display: 0
|
||||
phase: develop
|
||||
script_finder:
|
||||
- ':PerlExecFiles'
|
||||
skips: []
|
||||
switch: []
|
||||
name: Test::Compile
|
||||
version: '2.058'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Substitute
|
||||
name: 00-compile.t
|
||||
version: '0.006'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Test::Portability
|
||||
config:
|
||||
Dist::Zilla::Plugin::Test::Portability:
|
||||
options: ''
|
||||
name: Test::Portability
|
||||
version: '2.001000'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Test::EOL
|
||||
config:
|
||||
Dist::Zilla::Plugin::Test::EOL:
|
||||
filename: xt/author/eol.t
|
||||
finder:
|
||||
- ':ExecFiles'
|
||||
- ':InstallModules'
|
||||
- ':TestFiles'
|
||||
trailing_whitespace: 1
|
||||
name: Test::EOL
|
||||
version: '0.19'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Test::ChangesHasContent
|
||||
name: Test::ChangesHasContent
|
||||
version: '0.011'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Substitute
|
||||
name: changes_has_content.t
|
||||
version: '0.006'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Test::MinimumVersion
|
||||
name: Test::MinimumVersion
|
||||
version: '2.000008'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::PodSyntaxTests
|
||||
name: PodSyntaxTests
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Test::Pod::Coverage::Configurable
|
||||
name: Test::Pod::Coverage::Configurable
|
||||
version: '0.07'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Test::PodSpelling
|
||||
config:
|
||||
Dist::Zilla::Plugin::Test::PodSpelling:
|
||||
directories:
|
||||
- bin
|
||||
- lib
|
||||
spell_cmd: 'aspell list'
|
||||
stopwords:
|
||||
- eg
|
||||
wordlist: Pod::Wordlist
|
||||
name: Test::PodSpelling
|
||||
version: '2.007005'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Git::Check
|
||||
config:
|
||||
Dist::Zilla::Plugin::Git::Check:
|
||||
untracked_files: die
|
||||
Dist::Zilla::Role::Git::DirtyFiles:
|
||||
allow_dirty: []
|
||||
allow_dirty_match: []
|
||||
changelog: Changes
|
||||
Dist::Zilla::Role::Git::Repo:
|
||||
git_version: 2.20.1
|
||||
repo_root: .
|
||||
name: Git::Check
|
||||
version: '2.045'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::CheckStrictVersion
|
||||
name: CheckStrictVersion
|
||||
version: '0.001'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::RunExtraTests
|
||||
config:
|
||||
Dist::Zilla::Role::TestRunner:
|
||||
default_jobs: 1
|
||||
name: RunExtraTests
|
||||
version: '0.029'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::CheckChangeLog
|
||||
name: CheckChangeLog
|
||||
version: '0.05'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::CheckChangesHasContent
|
||||
name: CheckChangesHasContent
|
||||
version: '0.011'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::TestRelease
|
||||
name: TestRelease
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::UploadToCPAN
|
||||
name: UploadToCPAN
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::ReadmeAnyFromPod
|
||||
config:
|
||||
Dist::Zilla::Role::FileWatcher:
|
||||
version: '0.006'
|
||||
name: Markdown_Readme
|
||||
version: '0.163250'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::CopyFilesFromRelease
|
||||
config:
|
||||
Dist::Zilla::Plugin::CopyFilesFromRelease:
|
||||
filename:
|
||||
- LICENSE
|
||||
- META.json
|
||||
- cpanfile
|
||||
match: []
|
||||
name: CopyFilesFromRelease
|
||||
version: '0.006'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Prereqs
|
||||
config:
|
||||
Dist::Zilla::Plugin::Prereqs:
|
||||
phase: develop
|
||||
type: recommends
|
||||
name: '@Git::VersionManager/pluginbundle version'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::RewriteVersion::Transitional
|
||||
config:
|
||||
Dist::Zilla::Plugin::RewriteVersion:
|
||||
add_tarball_name: 0
|
||||
finders:
|
||||
- ':ExecFiles'
|
||||
- ':InstallModules'
|
||||
global: 0
|
||||
skip_version_provider: 0
|
||||
Dist::Zilla::Plugin::RewriteVersion::Transitional: {}
|
||||
name: '@Git::VersionManager/RewriteVersion::Transitional'
|
||||
version: '0.009'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::MetaProvides::Update
|
||||
name: '@Git::VersionManager/MetaProvides::Update'
|
||||
version: '0.007'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::CopyFilesFromRelease
|
||||
config:
|
||||
Dist::Zilla::Plugin::CopyFilesFromRelease:
|
||||
filename:
|
||||
- Changes
|
||||
match: []
|
||||
name: '@Git::VersionManager/CopyFilesFromRelease'
|
||||
version: '0.006'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Git::Commit
|
||||
config:
|
||||
Dist::Zilla::Plugin::Git::Commit:
|
||||
add_files_in: []
|
||||
commit_msg: v%v%n%n%c
|
||||
Dist::Zilla::Role::Git::DirtyFiles:
|
||||
allow_dirty:
|
||||
- Changes
|
||||
- LICENSE
|
||||
- META.json
|
||||
- README.md
|
||||
- cpanfile
|
||||
allow_dirty_match: []
|
||||
changelog: Changes
|
||||
Dist::Zilla::Role::Git::Repo:
|
||||
git_version: 2.20.1
|
||||
repo_root: .
|
||||
Dist::Zilla::Role::Git::StringFormatter:
|
||||
time_zone: local
|
||||
name: '@Git::VersionManager/release snapshot'
|
||||
version: '2.045'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Git::Tag
|
||||
config:
|
||||
Dist::Zilla::Plugin::Git::Tag:
|
||||
branch: ~
|
||||
changelog: Changes
|
||||
signed: 0
|
||||
tag: v6.04
|
||||
tag_format: v%v
|
||||
tag_message: v%v
|
||||
Dist::Zilla::Role::Git::Repo:
|
||||
git_version: 2.20.1
|
||||
repo_root: .
|
||||
Dist::Zilla::Role::Git::StringFormatter:
|
||||
time_zone: local
|
||||
name: '@Git::VersionManager/Git::Tag'
|
||||
version: '2.045'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional
|
||||
config:
|
||||
Dist::Zilla::Plugin::BumpVersionAfterRelease:
|
||||
finders:
|
||||
- ':ExecFiles'
|
||||
- ':InstallModules'
|
||||
global: 0
|
||||
munge_makefile_pl: 1
|
||||
Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional: {}
|
||||
name: '@Git::VersionManager/BumpVersionAfterRelease::Transitional'
|
||||
version: '0.009'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::NextRelease
|
||||
name: '@Git::VersionManager/NextRelease'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Git::Commit
|
||||
config:
|
||||
Dist::Zilla::Plugin::Git::Commit:
|
||||
add_files_in: []
|
||||
commit_msg: 'increment $VERSION after %v release'
|
||||
Dist::Zilla::Role::Git::DirtyFiles:
|
||||
allow_dirty:
|
||||
- Build.PL
|
||||
- Changes
|
||||
- Makefile.PL
|
||||
allow_dirty_match:
|
||||
- (?^:^lib/.*\.pm$)
|
||||
changelog: Changes
|
||||
Dist::Zilla::Role::Git::Repo:
|
||||
git_version: 2.20.1
|
||||
repo_root: .
|
||||
Dist::Zilla::Role::Git::StringFormatter:
|
||||
time_zone: local
|
||||
name: '@Git::VersionManager/post-release commit'
|
||||
version: '2.045'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::Git::Push
|
||||
config:
|
||||
Dist::Zilla::Plugin::Git::Push:
|
||||
push_to:
|
||||
- origin
|
||||
remotes_must_exist: 1
|
||||
Dist::Zilla::Role::Git::Repo:
|
||||
git_version: 2.20.1
|
||||
repo_root: .
|
||||
name: Git::Push
|
||||
version: '2.045'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::ConfirmRelease
|
||||
name: ConfirmRelease
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':InstallModules'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':IncModules'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':TestFiles'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':ExtraTestFiles'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':ExecFiles'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':PerlExecFiles'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':ShareFiles'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':MainModule'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':AllFiles'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: ':NoFiles'
|
||||
version: '6.012'
|
||||
-
|
||||
class: Dist::Zilla::Plugin::FinderCode
|
||||
name: MetaProvides::Package/AUTOVIV/:InstallModulesPM
|
||||
version: '6.012'
|
||||
zilla:
|
||||
class: Dist::Zilla::Dist::Builder
|
||||
config:
|
||||
is_trial: '0'
|
||||
version: '6.012'
|
||||
x_authority: cpan:LWWWP
|
||||
x_contributors:
|
||||
- 'Adam Kennedy <adamk@cpan.org>'
|
||||
- 'Adam Sjogren <asjo@koldfront.dk>'
|
||||
- 'Alexey Tourbin <at@altlinux.ru>'
|
||||
- 'Alex Kapranoff <ka@nadoby.ru>'
|
||||
- 'amire80 <amir.aharoni@gmail.com>'
|
||||
- 'Andreas J. Koenig <andreas.koenig@anima.de>'
|
||||
- 'Bill Mann <wfmann@alum.mit.edu>'
|
||||
- 'Bron Gondwana <brong@fastmail.fm>'
|
||||
- 'Daniel Hedlund <Daniel.Hedlund@eprize.com>'
|
||||
- 'David E. Wheeler <david@justatheory.com>'
|
||||
- 'DAVIDRW <davidrw@cpan.org>'
|
||||
- 'Father Chrysostomos <sprout@cpan.org>'
|
||||
- 'FWILES <FWILES@cpan.org>'
|
||||
- 'Gavin Peters <gpeters@deepsky.com>'
|
||||
- 'Gisle Aas <aas@oslonett.no>'
|
||||
- 'Gisle Aas <gisle.aas@it.uib.no>'
|
||||
- 'Gisle Aas <gisle@aas.no>'
|
||||
- 'Gisle Aas <gisle@baux-2.lan>'
|
||||
- 'Graeme Thompson <Graeme.Thompson@mobilecohesion.com>'
|
||||
- 'Hans-H. Froehlich <hfroehlich@co-de-co.de>'
|
||||
- 'Ian Kilgore <iank@cpan.org>'
|
||||
- 'Jacob J <waif@chaos2.org>'
|
||||
- 'jefflee <shaohua@gmail.com>'
|
||||
- 'john9art <john9art@yahoo.com>'
|
||||
- 'Karen Etheridge <ether@cpan.org>'
|
||||
- 'Mark Stosberg <mark@stosberg.com>'
|
||||
- 'Mark Stosberg <MARKSTOS@cpan.org>'
|
||||
- 'Mark Stosberg <mark@summersault.com>'
|
||||
- 'Mike Schilli <mschilli@yahoo-inc.com>'
|
||||
- 'mschilli <github@perlmeister.com>'
|
||||
- 'murphy <murphy@genome.chop.edu>'
|
||||
- 'Olaf Alders <olaf@wundersolutions.com>'
|
||||
- 'Ondrej Hanak <ondrej.hanak@ubs.com>'
|
||||
- 'Peter Rabbitson <ribasushi@cpan.org>'
|
||||
- 'phrstbrn <phrstbrn@gmail.com>'
|
||||
- 'Robert Stone <talby@trap.mtview.ca.us>'
|
||||
- 'Rolf Grossmann <rg@progtech.net>'
|
||||
- 'ruff <ruff@ukrpost.net>'
|
||||
- 'sasao <sasao@yugen.org>'
|
||||
- 'Sean M. Burke <sburke@cpan.org>'
|
||||
- 'Slaven Rezic <slaven@rezic.de>'
|
||||
- 'Slaven Rezic <srezic@iconmobile.com>'
|
||||
- 'Spiros Denaxas <s.denaxas@gmail.com>'
|
||||
- 'Steve Hay <SteveHay@planit.com>'
|
||||
- 'Todd Lipcon <todd@amiestreet.com>'
|
||||
- 'Tom Hukins <tom@eborcom.com>'
|
||||
- 'Tony Finch <dot@dotat.at>'
|
||||
- 'Toru Yamaguchi <zigorou@cpan.org>'
|
||||
- 'uid39246 <uid39246>'
|
||||
- 'Ville Skytta <ville.skytta@iki.fi>'
|
||||
- 'Wesley Schwengle <wesley@schwengle.net>'
|
||||
- 'Yuri Karaban <tech@askold.net>'
|
||||
- 'Zefram <zefram@fysh.org>'
|
||||
x_generated_by_perl: v5.26.1
|
||||
x_serialization_backend: 'YAML::Tiny version 1.70'
|
|
@ -0,0 +1,65 @@
|
|||
# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.012.
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
use 5.006002;
|
||||
|
||||
use ExtUtils::MakeMaker;
|
||||
|
||||
my %WriteMakefileArgs = (
|
||||
"ABSTRACT" => "guess media type for a file or a URL",
|
||||
"AUTHOR" => "Gisle Aas <gisle\@activestate.com>",
|
||||
"CONFIGURE_REQUIRES" => {
|
||||
"ExtUtils::MakeMaker" => 0
|
||||
},
|
||||
"DISTNAME" => "LWP-MediaTypes",
|
||||
"LICENSE" => "perl",
|
||||
"MIN_PERL_VERSION" => "5.006002",
|
||||
"NAME" => "LWP::MediaTypes",
|
||||
"PREREQ_PM" => {
|
||||
"Carp" => 0,
|
||||
"Exporter" => 0,
|
||||
"File::Basename" => 0,
|
||||
"Scalar::Util" => 0,
|
||||
"strict" => 0
|
||||
},
|
||||
"TEST_REQUIRES" => {
|
||||
"ExtUtils::MakeMaker" => 0,
|
||||
"File::Spec" => 0,
|
||||
"Test::Fatal" => 0,
|
||||
"Test::More" => 0,
|
||||
"overload" => 0,
|
||||
"warnings" => 0
|
||||
},
|
||||
"VERSION" => "6.04",
|
||||
"test" => {
|
||||
"TESTS" => "t/*.t"
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
my %FallbackPrereqs = (
|
||||
"Carp" => 0,
|
||||
"Exporter" => 0,
|
||||
"ExtUtils::MakeMaker" => 0,
|
||||
"File::Basename" => 0,
|
||||
"File::Spec" => 0,
|
||||
"Scalar::Util" => 0,
|
||||
"Test::Fatal" => 0,
|
||||
"Test::More" => 0,
|
||||
"overload" => 0,
|
||||
"strict" => 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);
|
|
@ -0,0 +1,69 @@
|
|||
NAME
|
||||
LWP::MediaTypes - guess media type for a file or a URL
|
||||
|
||||
SYNOPSIS
|
||||
use LWP::MediaTypes qw(guess_media_type);
|
||||
$type = guess_media_type("/tmp/foo.gif");
|
||||
|
||||
DESCRIPTION
|
||||
This module provides functions for handling media (also known as MIME)
|
||||
types and encodings. The mapping from file extensions to media types is
|
||||
defined by the media.types file. If the ~/.media.types file exists it is
|
||||
used instead. For backwards compatibility we will also look for
|
||||
~/.mime.types.
|
||||
|
||||
The following functions are exported by default:
|
||||
|
||||
guess_media_type( $filename )
|
||||
guess_media_type( $uri )
|
||||
guess_media_type( $filename_or_uri, $header_to_modify )
|
||||
This function tries to guess media type and encoding for a file or a
|
||||
URI. It returns the content type, which is a string like
|
||||
`"text/html"'. In array context it also returns any content
|
||||
encodings applied (in the order used to encode the file). You can
|
||||
pass a URI object reference, instead of the file name.
|
||||
|
||||
If the type can not be deduced from looking at the file name, then
|
||||
guess_media_type() will let the `-T' Perl operator take a look. If
|
||||
this works (and `-T' returns a TRUE value) then we return
|
||||
*text/plain* as the type, otherwise we return
|
||||
*application/octet-stream* as the type.
|
||||
|
||||
The optional second argument should be a reference to a
|
||||
HTTP::Headers object or any object that implements the $obj->header
|
||||
method in a similar way. When it is present the values of the
|
||||
'Content-Type' and 'Content-Encoding' will be set for this header.
|
||||
|
||||
media_suffix( $type, ... )
|
||||
This function will return all suffixes that can be used to denote
|
||||
the specified media type(s). Wildcard types can be used. In a scalar
|
||||
context it will return the first suffix found. Examples:
|
||||
|
||||
@suffixes = media_suffix('image/*', 'audio/basic');
|
||||
$suffix = media_suffix('text/html');
|
||||
|
||||
The following functions are only exported by explicit request:
|
||||
|
||||
add_type( $type, @exts )
|
||||
Associate a list of file extensions with the given media type.
|
||||
Example:
|
||||
|
||||
add_type("x-world/x-vrml" => qw(wrl vrml));
|
||||
|
||||
add_encoding( $type, @ext )
|
||||
Associate a list of file extensions with an encoding type. Example:
|
||||
|
||||
add_encoding("x-gzip" => "gz");
|
||||
|
||||
read_media_types( @files )
|
||||
Parse media types files and add the type mappings found there.
|
||||
Example:
|
||||
|
||||
read_media_types("conf/mime.types");
|
||||
|
||||
COPYRIGHT
|
||||
Copyright 1995-1999 Gisle Aas.
|
||||
|
||||
This library is free software; you can redistribute it and/or modify it
|
||||
under the same terms as Perl itself.
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
requires "Carp" => "0";
|
||||
requires "Exporter" => "0";
|
||||
requires "File::Basename" => "0";
|
||||
requires "Scalar::Util" => "0";
|
||||
requires "perl" => "5.006002";
|
||||
requires "strict" => "0";
|
||||
|
||||
on 'test' => sub {
|
||||
requires "ExtUtils::MakeMaker" => "0";
|
||||
requires "File::Spec" => "0";
|
||||
requires "Test::Fatal" => "0";
|
||||
requires "Test::More" => "0";
|
||||
requires "overload" => "0";
|
||||
requires "warnings" => "0";
|
||||
};
|
||||
|
||||
on 'test' => sub {
|
||||
recommends "CPAN::Meta" => "2.120900";
|
||||
};
|
||||
|
||||
on 'configure' => sub {
|
||||
requires "ExtUtils::MakeMaker" => "0";
|
||||
};
|
||||
|
||||
on 'develop' => sub {
|
||||
requires "Encode" => "0";
|
||||
requires "File::Spec" => "0";
|
||||
requires "IO::Handle" => "0";
|
||||
requires "IPC::Open3" => "0";
|
||||
requires "Pod::Coverage::TrustPod" => "0";
|
||||
requires "Pod::Wordlist" => "0";
|
||||
requires "Test::EOL" => "0";
|
||||
requires "Test::MinimumVersion" => "0";
|
||||
requires "Test::Mojibake" => "0";
|
||||
requires "Test::More" => "0.94";
|
||||
requires "Test::Pod" => "1.41";
|
||||
requires "Test::Pod::Coverage" => "1.08";
|
||||
requires "Test::Portability::Files" => "0";
|
||||
requires "Test::Spelling" => "0.12";
|
||||
requires "Test::Version" => "1";
|
||||
requires "perl" => "5.006";
|
||||
requires "warnings" => "0";
|
||||
};
|
||||
|
||||
on 'develop' => sub {
|
||||
recommends "Dist::Zilla::PluginBundle::Git::VersionManager" => "0.007";
|
||||
};
|
|
@ -0,0 +1,126 @@
|
|||
name = LWP-MediaTypes
|
||||
author = Gisle Aas <gisle@activestate.com>
|
||||
license = Perl_5
|
||||
copyright_holder = Gisle Aas
|
||||
copyright_year = 1995
|
||||
|
||||
[Git::GatherDir]
|
||||
exclude_filename = cpanfile
|
||||
exclude_filename = LICENSE
|
||||
exclude_filename = META.json
|
||||
exclude_filename = README.md
|
||||
|
||||
[MetaConfig]
|
||||
[MetaProvides::Package]
|
||||
[MetaNoIndex]
|
||||
directory = t
|
||||
directory = xt
|
||||
[MetaYAML]
|
||||
[MetaJSON]
|
||||
[MetaResources]
|
||||
x_IRC = irc://irc.perl.org/#lwp
|
||||
x_MailingList = mailto:libwww@perl.org
|
||||
|
||||
[Git::Contributors]
|
||||
[GithubMeta]
|
||||
issues = 1
|
||||
user = libwww-perl
|
||||
[Authority]
|
||||
do_munging = 0
|
||||
authority = cpan:LWWWP
|
||||
[Manifest]
|
||||
[License]
|
||||
[InstallGuide]
|
||||
|
||||
; make the bin dir executables
|
||||
[ExecDir]
|
||||
; [ShareDir]
|
||||
|
||||
[Prereqs]
|
||||
perl = 5.006002
|
||||
[AutoPrereqs]
|
||||
[CPANFile]
|
||||
|
||||
[MakeMaker]
|
||||
|
||||
; TODO strict and warnings to quiet the kwalitee tests
|
||||
; [Test::Kwalitee]
|
||||
; filename = xt/author/kwalitee.t
|
||||
[MojibakeTests]
|
||||
[Test::Version]
|
||||
[Test::ReportPrereqs]
|
||||
|
||||
[Test::Compile]
|
||||
bail_out_on_fail = 1
|
||||
xt_mode = 1
|
||||
; avoid failing on 5.8: Warning: Use of "keys" without parentheses is ambiguous at Data/Dump/Trace.pm line 262.
|
||||
[Substitute / 00-compile.t]
|
||||
file = xt/author/00-compile.t
|
||||
code = s{(is\(scalar\(\@warnings\), 0, 'no warnings found'\))}{TODO: \{\nlocal \$TODO = 'Data::Dump::Trace warns on 5.8' if \$\] < '5.009';\n$1};
|
||||
code = s{(^\s+or diag 'got warnings: ', explain\(\\\@warnings\);)}{$1\n\}};
|
||||
|
||||
[Test::Portability]
|
||||
; TODO perltidy for NoTabs and namespace::autoclean
|
||||
; [Test::CleanNamespaces] ; TODO
|
||||
; [Test::NoTabs] ; TODO
|
||||
[Test::EOL]
|
||||
|
||||
; We run release tests in travis. but make the changes-has-content test TODO only for master.
|
||||
; This will prod pull request submitters to add a Changes entry.
|
||||
[Test::ChangesHasContent]
|
||||
[Substitute / changes_has_content.t]
|
||||
file = xt/release/changes_has_content.t
|
||||
code = s{^(note 'Checking Changes')}{if \(\(\$ENV\{TRAVIS_PULL_REQUEST\} \|\| '') eq 'false'\) \{\n chomp\(my \$branch_name = \(\$ENV\{TRAVIS_BRANCH\} || \`git rev-parse --abbrev-ref HEAD\`\)\);\n \$TODO = 'Changes need not have content for this release yet if this is only the master branch'\n if \(\$branch_name \|\| ''\) eq 'master';\n\}\n\n$1}
|
||||
|
||||
[Test::MinimumVersion]
|
||||
[PodSyntaxTests]
|
||||
|
||||
; Not 100% clear why file_exts() is undocumented. Maybe meant to be private.
|
||||
[Test::Pod::Coverage::Configurable]
|
||||
trustme = LWP::MediaTypes => qr/^(?:file_exts)$/
|
||||
|
||||
[Test::PodSpelling]
|
||||
wordlist = Pod::Wordlist
|
||||
spell_cmd = aspell list
|
||||
stopword = eg
|
||||
|
||||
[Git::Check]
|
||||
allow_dirty =
|
||||
|
||||
[CheckStrictVersion]
|
||||
decimal_only = 1
|
||||
|
||||
[RunExtraTests]
|
||||
[CheckChangeLog]
|
||||
[CheckChangesHasContent]
|
||||
[TestRelease]
|
||||
|
||||
[UploadToCPAN]
|
||||
|
||||
; Create Readme
|
||||
[ReadmeAnyFromPod / Markdown_Readme]
|
||||
source_filename = lib/LWP/MediaTypes.pm
|
||||
type = markdown
|
||||
filename = README.md
|
||||
location = root
|
||||
phase = release
|
||||
|
||||
[CopyFilesFromRelease]
|
||||
filename = cpanfile
|
||||
filename = META.json
|
||||
filename = LICENSE
|
||||
|
||||
; The distribution version is read from lib/LWP.pm's $VERSION.
|
||||
; At release, all versions are bumped.
|
||||
; To change the version at release time, you can either edit LWP.pm's
|
||||
; $VERSION, or set the V environment variable, e.g. V=1.23 dzil release
|
||||
[@Git::VersionManager]
|
||||
commit_files_after_release = cpanfile
|
||||
commit_files_after_release = META.json
|
||||
commit_files_after_release = LICENSE
|
||||
commit_files_after_release = README.md
|
||||
|
||||
[Git::Push]
|
||||
|
||||
; listed late, to allow all other plugins which do BeforeRelease checks to run first.
|
||||
[ConfirmRelease]
|
|
@ -0,0 +1,292 @@
|
|||
package LWP::MediaTypes;
|
||||
|
||||
require Exporter;
|
||||
@ISA = qw(Exporter);
|
||||
@EXPORT = qw(guess_media_type media_suffix);
|
||||
@EXPORT_OK = qw(add_type add_encoding read_media_types);
|
||||
our $VERSION = '6.04';
|
||||
|
||||
use strict;
|
||||
use Scalar::Util qw(blessed);
|
||||
use Carp qw(croak);
|
||||
|
||||
# note: These hashes will also be filled with the entries found in
|
||||
# the 'media.types' file.
|
||||
|
||||
my %suffixType = (
|
||||
'txt' => 'text/plain',
|
||||
'html' => 'text/html',
|
||||
'gif' => 'image/gif',
|
||||
'jpg' => 'image/jpeg',
|
||||
'xml' => 'text/xml',
|
||||
);
|
||||
|
||||
my %suffixExt = (
|
||||
'text/plain' => 'txt',
|
||||
'text/html' => 'html',
|
||||
'image/gif' => 'gif',
|
||||
'image/jpeg' => 'jpg',
|
||||
'text/xml' => 'xml',
|
||||
);
|
||||
|
||||
#XXX: there should be some way to define this in the media.types files.
|
||||
my %suffixEncoding = (
|
||||
'Z' => 'compress',
|
||||
'gz' => 'gzip',
|
||||
'hqx' => 'x-hqx',
|
||||
'uu' => 'x-uuencode',
|
||||
'z' => 'x-pack',
|
||||
'bz2' => 'x-bzip2',
|
||||
);
|
||||
|
||||
read_media_types();
|
||||
|
||||
|
||||
|
||||
sub guess_media_type
|
||||
{
|
||||
my($file, $header) = @_;
|
||||
return undef unless defined $file;
|
||||
|
||||
my $fullname;
|
||||
if (ref $file) {
|
||||
croak("Unable to determine filetype on unblessed refs") unless blessed($file);
|
||||
if ($file->can('path')) {
|
||||
$file = $file->path;
|
||||
}
|
||||
elsif ($file->can('filename')) {
|
||||
$fullname = $file->filename;
|
||||
}
|
||||
else {
|
||||
$fullname = "" . $file;
|
||||
}
|
||||
}
|
||||
else {
|
||||
$fullname = $file; # enable peek at actual file
|
||||
}
|
||||
|
||||
my @encoding = ();
|
||||
my $ct = undef;
|
||||
for (file_exts($file)) {
|
||||
# first check this dot part as encoding spec
|
||||
if (exists $suffixEncoding{$_}) {
|
||||
unshift(@encoding, $suffixEncoding{$_});
|
||||
next;
|
||||
}
|
||||
if (exists $suffixEncoding{lc $_}) {
|
||||
unshift(@encoding, $suffixEncoding{lc $_});
|
||||
next;
|
||||
}
|
||||
|
||||
# check content-type
|
||||
if (exists $suffixType{$_}) {
|
||||
$ct = $suffixType{$_};
|
||||
last;
|
||||
}
|
||||
if (exists $suffixType{lc $_}) {
|
||||
$ct = $suffixType{lc $_};
|
||||
last;
|
||||
}
|
||||
|
||||
# don't know nothing about this dot part, bail out
|
||||
last;
|
||||
}
|
||||
unless (defined $ct) {
|
||||
# Take a look at the file
|
||||
if (defined $fullname) {
|
||||
$ct = (-T $fullname) ? "text/plain" : "application/octet-stream";
|
||||
}
|
||||
else {
|
||||
$ct = "application/octet-stream";
|
||||
}
|
||||
}
|
||||
|
||||
if ($header) {
|
||||
$header->header('Content-Type' => $ct);
|
||||
$header->header('Content-Encoding' => \@encoding) if @encoding;
|
||||
}
|
||||
|
||||
wantarray ? ($ct, @encoding) : $ct;
|
||||
}
|
||||
|
||||
|
||||
sub media_suffix {
|
||||
if (!wantarray && @_ == 1 && $_[0] !~ /\*/) {
|
||||
return $suffixExt{lc $_[0]};
|
||||
}
|
||||
my(@type) = @_;
|
||||
my(@suffix, $ext, $type);
|
||||
foreach (@type) {
|
||||
if (s/\*/.*/) {
|
||||
while(($ext,$type) = each(%suffixType)) {
|
||||
push(@suffix, $ext) if $type =~ /^$_$/i;
|
||||
}
|
||||
}
|
||||
else {
|
||||
my $ltype = lc $_;
|
||||
while(($ext,$type) = each(%suffixType)) {
|
||||
push(@suffix, $ext) if lc $type eq $ltype;
|
||||
}
|
||||
}
|
||||
}
|
||||
wantarray ? @suffix : $suffix[0];
|
||||
}
|
||||
|
||||
|
||||
sub file_exts
|
||||
{
|
||||
require File::Basename;
|
||||
my @parts = reverse split(/\./, File::Basename::basename($_[0]));
|
||||
pop(@parts); # never consider first part
|
||||
@parts;
|
||||
}
|
||||
|
||||
|
||||
sub add_type
|
||||
{
|
||||
my($type, @exts) = @_;
|
||||
for my $ext (@exts) {
|
||||
$ext =~ s/^\.//;
|
||||
$suffixType{$ext} = $type;
|
||||
}
|
||||
$suffixExt{lc $type} = $exts[0] if @exts;
|
||||
}
|
||||
|
||||
|
||||
sub add_encoding
|
||||
{
|
||||
my($type, @exts) = @_;
|
||||
for my $ext (@exts) {
|
||||
$ext =~ s/^\.//;
|
||||
$suffixEncoding{$ext} = $type;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
sub read_media_types
|
||||
{
|
||||
my(@files) = @_;
|
||||
|
||||
local($/, $_) = ("\n", undef); # ensure correct $INPUT_RECORD_SEPARATOR
|
||||
|
||||
my @priv_files = ();
|
||||
push(@priv_files, "$ENV{HOME}/.media.types", "$ENV{HOME}/.mime.types")
|
||||
if defined $ENV{HOME}; # Some doesn't have a home (for instance Win32)
|
||||
|
||||
# Try to locate "media.types" file, and initialize %suffixType from it
|
||||
my $typefile;
|
||||
unless (@files) {
|
||||
@files = map {"$_/LWP/media.types"} @INC;
|
||||
push @files, @priv_files;
|
||||
}
|
||||
for $typefile (@files) {
|
||||
local(*TYPE);
|
||||
open(TYPE, $typefile) || next;
|
||||
while (<TYPE>) {
|
||||
next if /^\s*#/; # comment line
|
||||
next if /^\s*$/; # blank line
|
||||
s/#.*//; # remove end-of-line comments
|
||||
my($type, @exts) = split(' ', $_);
|
||||
add_type($type, @exts);
|
||||
}
|
||||
close(TYPE);
|
||||
}
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
|
||||
__END__
|
||||
|
||||
=head1 NAME
|
||||
|
||||
LWP::MediaTypes - guess media type for a file or a URL
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
use LWP::MediaTypes qw(guess_media_type);
|
||||
$type = guess_media_type("/tmp/foo.gif");
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
This module provides functions for handling media (also known as
|
||||
MIME) types and encodings. The mapping from file extensions to media
|
||||
types is defined by the F<media.types> file. If the F<~/.media.types>
|
||||
file exists it is used instead.
|
||||
For backwards compatibility we will also look for F<~/.mime.types>.
|
||||
|
||||
The following functions are exported by default:
|
||||
|
||||
=over 4
|
||||
|
||||
=item guess_media_type( $filename )
|
||||
|
||||
=item guess_media_type( $uri )
|
||||
|
||||
=item guess_media_type( $filename_or_object, $header_to_modify )
|
||||
|
||||
This function tries to guess media type and encoding for a file or objects that
|
||||
support the a C<path> or C<filename> method, eg, L<URI> or L<File::Temp> objects.
|
||||
When an object does not support either method, it will be stringified to
|
||||
determine the filename.
|
||||
It returns the content type, which is a string like C<"text/html">.
|
||||
In array context it also returns any content encodings applied (in the
|
||||
order used to encode the file). You can pass a URI object
|
||||
reference, instead of the file name.
|
||||
|
||||
If the type can not be deduced from looking at the file name,
|
||||
then guess_media_type() will let the C<-T> Perl operator take a look.
|
||||
If this works (and C<-T> returns a TRUE value) then we return
|
||||
I<text/plain> as the type, otherwise we return
|
||||
I<application/octet-stream> as the type.
|
||||
|
||||
The optional second argument should be a reference to a HTTP::Headers
|
||||
object or any object that implements the $obj->header method in a
|
||||
similar way. When it is present the values of the
|
||||
'Content-Type' and 'Content-Encoding' will be set for this header.
|
||||
|
||||
=item media_suffix( $type, ... )
|
||||
|
||||
This function will return all suffixes that can be used to denote the
|
||||
specified media type(s). Wildcard types can be used. In a scalar
|
||||
context it will return the first suffix found. Examples:
|
||||
|
||||
@suffixes = media_suffix('image/*', 'audio/basic');
|
||||
$suffix = media_suffix('text/html');
|
||||
|
||||
=back
|
||||
|
||||
The following functions are only exported by explicit request:
|
||||
|
||||
=over 4
|
||||
|
||||
=item add_type( $type, @exts )
|
||||
|
||||
Associate a list of file extensions with the given media type.
|
||||
Example:
|
||||
|
||||
add_type("x-world/x-vrml" => qw(wrl vrml));
|
||||
|
||||
=item add_encoding( $type, @ext )
|
||||
|
||||
Associate a list of file extensions with an encoding type.
|
||||
Example:
|
||||
|
||||
add_encoding("x-gzip" => "gz");
|
||||
|
||||
=item read_media_types( @files )
|
||||
|
||||
Parse media types files and add the type mappings found there.
|
||||
Example:
|
||||
|
||||
read_media_types("conf/mime.types");
|
||||
|
||||
=back
|
||||
|
||||
=head1 COPYRIGHT
|
||||
|
||||
Copyright 1995-1999 Gisle Aas.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the same terms as Perl itself.
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,56 @@
|
|||
do { my $x = {
|
||||
'configure' => {
|
||||
'requires' => {
|
||||
'ExtUtils::MakeMaker' => '0'
|
||||
}
|
||||
},
|
||||
'develop' => {
|
||||
'recommends' => {
|
||||
'Dist::Zilla::PluginBundle::Git::VersionManager' => '0.007'
|
||||
},
|
||||
'requires' => {
|
||||
'Encode' => '0',
|
||||
'File::Spec' => '0',
|
||||
'IO::Handle' => '0',
|
||||
'IPC::Open3' => '0',
|
||||
'Pod::Coverage::TrustPod' => '0',
|
||||
'Pod::Wordlist' => '0',
|
||||
'Test::EOL' => '0',
|
||||
'Test::MinimumVersion' => '0',
|
||||
'Test::Mojibake' => '0',
|
||||
'Test::More' => '0.94',
|
||||
'Test::Pod' => '1.41',
|
||||
'Test::Pod::Coverage' => '1.08',
|
||||
'Test::Portability::Files' => '0',
|
||||
'Test::Spelling' => '0.12',
|
||||
'Test::Version' => '1',
|
||||
'perl' => '5.006',
|
||||
'warnings' => '0'
|
||||
}
|
||||
},
|
||||
'runtime' => {
|
||||
'requires' => {
|
||||
'Carp' => '0',
|
||||
'Exporter' => '0',
|
||||
'File::Basename' => '0',
|
||||
'Scalar::Util' => '0',
|
||||
'perl' => '5.006002',
|
||||
'strict' => '0'
|
||||
}
|
||||
},
|
||||
'test' => {
|
||||
'recommends' => {
|
||||
'CPAN::Meta' => '2.120900'
|
||||
},
|
||||
'requires' => {
|
||||
'ExtUtils::MakeMaker' => '0',
|
||||
'File::Spec' => '0',
|
||||
'Test::Fatal' => '0',
|
||||
'Test::More' => '0',
|
||||
'overload' => '0',
|
||||
'warnings' => '0'
|
||||
}
|
||||
}
|
||||
};
|
||||
$x;
|
||||
}
|
|
@ -0,0 +1,193 @@
|
|||
#!perl
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.027
|
||||
|
||||
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';
|
||||
my $cpan_meta_error;
|
||||
if ( $source && $HAS_CPAN_META
|
||||
&& (my $meta = eval { CPAN::Meta->load_file($source) } )
|
||||
) {
|
||||
$full_prereqs = _merge_prereqs($full_prereqs, $meta->prereqs);
|
||||
}
|
||||
else {
|
||||
$cpan_meta_error = $@; # capture error from CPAN::Meta->load_file($source)
|
||||
$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 );
|
||||
|
||||
if ($type eq 'modules') {
|
||||
splice @reports, 1, 0, ["-" x $ml, "", "-" x $hl];
|
||||
push @full_reports, map { sprintf(" %*s %*s\n", -$ml, $_->[0], $hl, $_->[2]) } @reports;
|
||||
}
|
||||
else {
|
||||
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 ( $cpan_meta_error || @dep_errors ) {
|
||||
diag "\n*** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING ***\n";
|
||||
}
|
||||
|
||||
if ( $cpan_meta_error ) {
|
||||
my ($orig_source) = grep { -f } 'MYMETA.json', 'MYMETA.yml';
|
||||
diag "\nCPAN::Meta->load_file('$orig_source') failed with: $cpan_meta_error\n";
|
||||
}
|
||||
|
||||
if ( @dep_errors ) {
|
||||
diag join("\n",
|
||||
"\nThe following REQUIRED prerequisites were not satisfied:\n",
|
||||
@dep_errors,
|
||||
"\n"
|
||||
);
|
||||
}
|
||||
|
||||
pass;
|
||||
|
||||
# vim: ts=4 sts=4 sw=4 et:
|
|
@ -0,0 +1,148 @@
|
|||
#!perl -w
|
||||
|
||||
use strict;
|
||||
use Test::More;
|
||||
use Test::Fatal;
|
||||
|
||||
use LWP::MediaTypes;
|
||||
|
||||
my $url1 = URI->new('http://www/foo/test.gif?search+x#frag');
|
||||
my $url2 = URI->new('http:test');
|
||||
|
||||
my $file = "./README";
|
||||
|
||||
my $nocando = TestNoCanDo->new();
|
||||
my $fh = TestFileTemp->new();
|
||||
|
||||
my @tests = (
|
||||
["/this.dir/file.html" => "text/html",],
|
||||
["test.gif.htm" => "text/html",],
|
||||
["test.txt.gz" => "text/plain", "gzip"],
|
||||
["gif.foo" => "application/octet-stream",],
|
||||
["lwp-0.03.tar.Z" => "application/x-tar", "compress"],
|
||||
[$file => "text/plain",],
|
||||
["/random/file" => "application/octet-stream",],
|
||||
[($^O eq 'VMS' ? "nl:" : "/dev/null") => "text/plain",],
|
||||
[$url1 => "image/gif",],
|
||||
[$url2 => "application/octet-stream",],
|
||||
["x.ppm.Z.UU" => "image/x-portable-pixmap", "compress", "x-uuencode",],
|
||||
[$fh => "text/plain",],
|
||||
[$nocando => "text/plain",],
|
||||
);
|
||||
|
||||
if ($ENV{HOME} and -f "$ENV{HOME}/.mime.types") {
|
||||
warn "
|
||||
The MediaTypes test might fail because you have a private ~/.mime.types file
|
||||
If you get a failed test, try to move it away while testing.
|
||||
";
|
||||
}
|
||||
|
||||
|
||||
for (@tests) {
|
||||
my($file, $expectedtype, @expectedEnc) = @$_;
|
||||
my $type1 = guess_media_type($file);
|
||||
my($type, @enc) = guess_media_type($file);
|
||||
is($type1, $type);
|
||||
is($type, $expectedtype);
|
||||
is("@enc", "@expectedEnc");
|
||||
}
|
||||
|
||||
like(
|
||||
exception {
|
||||
guess_media_type({});
|
||||
},
|
||||
qr/Unable to determine filetype on unblessed refs/,
|
||||
"Cannot pass unblessed refs"
|
||||
);
|
||||
|
||||
my @imgSuffix = media_suffix('image/*');
|
||||
note "Image suffixes: @imgSuffix";
|
||||
ok(grep $_ eq "gif", @imgSuffix);
|
||||
|
||||
my @audioSuffix = media_suffix('AUDIO/*');
|
||||
note "Audio suffixes: @audioSuffix";
|
||||
ok(grep $_ eq 'oga', @audioSuffix);
|
||||
is(media_suffix('audio/OGG'), 'oga');
|
||||
|
||||
my $r = Headers->new;
|
||||
guess_media_type("file.tar.gz.uu", $r);
|
||||
is($r->header("Content-Type"), "application/x-tar");
|
||||
|
||||
my @enc = $r->header("Content-Encoding");
|
||||
is("@enc", "gzip x-uuencode");
|
||||
|
||||
#
|
||||
use LWP::MediaTypes qw(add_type add_encoding);
|
||||
add_type("x-world/x-vrml", qw(wrl vrml));
|
||||
add_encoding("x-gzip" => "gz");
|
||||
add_encoding(rot13 => "r13");
|
||||
|
||||
my @x = guess_media_type("foo.vrml.r13.gz");
|
||||
#print "@x\n";
|
||||
is("@x", "x-world/x-vrml rot13 x-gzip");
|
||||
|
||||
#print LWP::MediaTypes::_dump();
|
||||
|
||||
done_testing();
|
||||
|
||||
BEGIN {
|
||||
# mockups
|
||||
package URI;
|
||||
sub new {
|
||||
my($class, $str) = @_;
|
||||
bless \$str, $class;
|
||||
}
|
||||
|
||||
sub path {
|
||||
my $self = shift;
|
||||
my $p = $$self;
|
||||
$p =~ s/[\?\#].*//;
|
||||
return $p;
|
||||
}
|
||||
|
||||
package Headers;
|
||||
sub new {
|
||||
my $class = shift;
|
||||
return bless {}, $class;
|
||||
}
|
||||
|
||||
sub header {
|
||||
my $self = shift;
|
||||
my $k = lc(shift);
|
||||
my $old = $self->{$k};
|
||||
if (@_) {
|
||||
$self->{$k} = shift;
|
||||
}
|
||||
if (ref($old) eq "ARRAY") {
|
||||
return @$old if wantarray;
|
||||
return join(", ", @$old)
|
||||
}
|
||||
return $old;
|
||||
}
|
||||
|
||||
package TestNoCanDo;
|
||||
|
||||
sub new {
|
||||
my $class = shift;
|
||||
return bless {}, $class;
|
||||
}
|
||||
|
||||
sub to_string {
|
||||
return "./README"
|
||||
}
|
||||
|
||||
use overload '""' => 'to_string';
|
||||
|
||||
package TestFileTemp;
|
||||
|
||||
sub new {
|
||||
my $class = shift;
|
||||
return bless {}, $class;
|
||||
}
|
||||
|
||||
sub filename {
|
||||
return "./README"
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
use 5.006;
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.058
|
||||
|
||||
use Test::More 0.94;
|
||||
|
||||
plan tests => 2;
|
||||
|
||||
my @module_files = (
|
||||
'LWP/MediaTypes.pm'
|
||||
);
|
||||
|
||||
|
||||
|
||||
# no fake home requested
|
||||
|
||||
my @switches = (
|
||||
-d 'blib' ? '-Mblib' : '-Ilib',
|
||||
);
|
||||
|
||||
use File::Spec;
|
||||
use IPC::Open3;
|
||||
use IO::Handle;
|
||||
|
||||
open my $stdin, '<', File::Spec->devnull or die "can't open devnull: $!";
|
||||
|
||||
my @warnings;
|
||||
for my $lib (@module_files)
|
||||
{
|
||||
# see L<perlfaq8/How can I capture STDERR from an external command?>
|
||||
my $stderr = IO::Handle->new;
|
||||
|
||||
diag('Running: ', join(', ', map { my $str = $_; $str =~ s/'/\\'/g; q{'} . $str . q{'} }
|
||||
$^X, @switches, '-e', "require q[$lib]"))
|
||||
if $ENV{PERL_COMPILE_TEST_DEBUG};
|
||||
|
||||
my $pid = open3($stdin, '>&STDERR', $stderr, $^X, @switches, '-e', "require q[$lib]");
|
||||
binmode $stderr, ':crlf' if $^O eq 'MSWin32';
|
||||
my @_warnings = <$stderr>;
|
||||
waitpid($pid, 0);
|
||||
is($?, 0, "$lib loaded ok");
|
||||
|
||||
shift @_warnings if @_warnings and $_warnings[0] =~ /^Using .*\bblib/
|
||||
and not eval { +require blib; blib->VERSION('1.01') };
|
||||
|
||||
if (@_warnings)
|
||||
{
|
||||
warn @_warnings;
|
||||
push @warnings, @_warnings;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
TODO: {
|
||||
local $TODO = 'Data::Dump::Trace warns on 5.8' if $] < '5.009';
|
||||
is(scalar(@warnings), 0, 'no warnings found')
|
||||
or diag 'got warnings: ', explain(\@warnings);
|
||||
}
|
||||
|
||||
BAIL_OUT("Compilation problems") if !Test::More->builder->is_passing;
|
|
@ -0,0 +1,17 @@
|
|||
use strict;
|
||||
use warnings;
|
||||
|
||||
# this test was generated with Dist::Zilla::Plugin::Test::EOL 0.19
|
||||
|
||||
use Test::More 0.88;
|
||||
use Test::EOL;
|
||||
|
||||
my @files = (
|
||||
'lib/LWP/MediaTypes.pm',
|
||||
't/00-report-prereqs.dd',
|
||||
't/00-report-prereqs.t',
|
||||
't/mediatypes.t'
|
||||
);
|
||||
|
||||
eol_unix_ok($_, { trailing_whitespace => 1 }) foreach @files;
|
||||
done_testing;
|
|
@ -0,0 +1,6 @@
|
|||
#!perl
|
||||
|
||||
use Test::More;
|
||||
|
||||
use Test::MinimumVersion;
|
||||
all_minimum_version_from_metayml_ok();
|
|
@ -0,0 +1,9 @@
|
|||
#!perl
|
||||
|
||||
use strict;
|
||||
use warnings qw(all);
|
||||
|
||||
use Test::More;
|
||||
use Test::Mojibake;
|
||||
|
||||
all_files_encoding_ok();
|
|
@ -0,0 +1,48 @@
|
|||
#!perl
|
||||
# This file was automatically generated by Dist::Zilla::Plugin::Test::Pod::Coverage::Configurable 0.07.
|
||||
|
||||
use Test::Pod::Coverage 1.08;
|
||||
use Test::More 0.88;
|
||||
|
||||
BEGIN {
|
||||
if ( $] <= 5.008008 ) {
|
||||
plan skip_all => 'These tests require Pod::Coverage::TrustPod, which only works with Perl 5.8.9+';
|
||||
}
|
||||
}
|
||||
use Pod::Coverage::TrustPod;
|
||||
|
||||
my %skip = map { $_ => 1 } qw( );
|
||||
|
||||
my @modules;
|
||||
for my $module ( all_modules() ) {
|
||||
next if $skip{$module};
|
||||
|
||||
push @modules, $module;
|
||||
}
|
||||
|
||||
plan skip_all => 'All the modules we found were excluded from POD coverage test.'
|
||||
unless @modules;
|
||||
|
||||
plan tests => scalar @modules;
|
||||
|
||||
my %trustme = (
|
||||
'LWP::MediaTypes' => [
|
||||
qr/^(?:file_exts)$/
|
||||
]
|
||||
);
|
||||
|
||||
my @also_private;
|
||||
|
||||
for my $module ( sort @modules ) {
|
||||
pod_coverage_ok(
|
||||
$module,
|
||||
{
|
||||
coverage_class => 'Pod::Coverage::TrustPod',
|
||||
also_private => \@also_private,
|
||||
trustme => $trustme{$module} || [],
|
||||
},
|
||||
"pod coverage for $module"
|
||||
);
|
||||
}
|
||||
|
||||
done_testing();
|
|
@ -0,0 +1,136 @@
|
|||
use strict;
|
||||
use warnings;
|
||||
use Test::More;
|
||||
|
||||
# generated by Dist::Zilla::Plugin::Test::PodSpelling 2.007005
|
||||
use Test::Spelling 0.12;
|
||||
use Pod::Wordlist;
|
||||
|
||||
set_spell_cmd('aspell list');
|
||||
add_stopwords(<DATA>);
|
||||
all_pod_files_spelling_ok( qw( bin lib ) );
|
||||
__DATA__
|
||||
Aas
|
||||
Adam
|
||||
Alders
|
||||
Alex
|
||||
Alexey
|
||||
Andreas
|
||||
Bill
|
||||
Bron
|
||||
Burke
|
||||
Chrysostomos
|
||||
DAVIDRW
|
||||
Daniel
|
||||
David
|
||||
Denaxas
|
||||
Etheridge
|
||||
FWILES
|
||||
Father
|
||||
Finch
|
||||
Froehlich
|
||||
Gavin
|
||||
Gisle
|
||||
Gondwana
|
||||
Graeme
|
||||
Grossmann
|
||||
Hanak
|
||||
Hans
|
||||
Hay
|
||||
Hedlund
|
||||
Hukins
|
||||
Ian
|
||||
Jacob
|
||||
Kapranoff
|
||||
Karaban
|
||||
Karen
|
||||
Kennedy
|
||||
Kilgore
|
||||
Koenig
|
||||
LWP
|
||||
Lipcon
|
||||
MARKSTOS
|
||||
Mann
|
||||
Mark
|
||||
MediaTypes
|
||||
Mike
|
||||
Olaf
|
||||
Ondrej
|
||||
Peter
|
||||
Peters
|
||||
Rabbitson
|
||||
Rezic
|
||||
Robert
|
||||
Rolf
|
||||
Schilli
|
||||
Schwengle
|
||||
Sean
|
||||
Sjogren
|
||||
Skytta
|
||||
Slaven
|
||||
Spiros
|
||||
Steve
|
||||
SteveHay
|
||||
Stone
|
||||
Stosberg
|
||||
Thompson
|
||||
Todd
|
||||
Tom
|
||||
Tony
|
||||
Toru
|
||||
Tourbin
|
||||
Ville
|
||||
Wesley
|
||||
Wheeler
|
||||
Yamaguchi
|
||||
Yuri
|
||||
Zefram
|
||||
aas
|
||||
adamk
|
||||
amir
|
||||
amire80
|
||||
andreas
|
||||
asjo
|
||||
at
|
||||
brong
|
||||
david
|
||||
davidrw
|
||||
denaxas
|
||||
dot
|
||||
eg
|
||||
ether
|
||||
gisle
|
||||
github
|
||||
gpeters
|
||||
hfroehlich
|
||||
iank
|
||||
jefflee
|
||||
john9art
|
||||
ka
|
||||
lib
|
||||
mark
|
||||
mschilli
|
||||
murphy
|
||||
olaf
|
||||
ondrej
|
||||
phrstbrn
|
||||
rg
|
||||
ribasushi
|
||||
ruff
|
||||
sasao
|
||||
sburke
|
||||
shaohua
|
||||
slaven
|
||||
sprout
|
||||
srezic
|
||||
talby
|
||||
tech
|
||||
todd
|
||||
tom
|
||||
uid39246
|
||||
ville
|
||||
waif
|
||||
wesley
|
||||
wfmann
|
||||
zefram
|
||||
zigorou
|
|
@ -0,0 +1,7 @@
|
|||
#!perl
|
||||
# This file was automatically generated by Dist::Zilla::Plugin::PodSyntaxTests.
|
||||
use strict; use warnings;
|
||||
use Test::More;
|
||||
use Test::Pod 1.41;
|
||||
|
||||
all_pod_files_ok();
|
|
@ -0,0 +1,10 @@
|
|||
use strict;
|
||||
use warnings;
|
||||
|
||||
use Test::More;
|
||||
|
||||
eval 'use Test::Portability::Files';
|
||||
plan skip_all => 'Test::Portability::Files required for testing portability'
|
||||
if $@;
|
||||
|
||||
run_tests();
|
|
@ -0,0 +1,23 @@
|
|||
use strict;
|
||||
use warnings;
|
||||
use Test::More;
|
||||
|
||||
# generated by Dist::Zilla::Plugin::Test::Version 1.09
|
||||
use Test::Version;
|
||||
|
||||
my @imports = qw( version_all_ok );
|
||||
|
||||
my $params = {
|
||||
is_strict => 0,
|
||||
has_version => 1,
|
||||
multiple => 0,
|
||||
|
||||
};
|
||||
|
||||
push @imports, $params
|
||||
if version->parse( $Test::Version::VERSION ) >= version->parse('1.002');
|
||||
|
||||
Test::Version->import(@imports);
|
||||
|
||||
version_all_ok;
|
||||
done_testing;
|
|
@ -0,0 +1,48 @@
|
|||
use Test::More tests => 2;
|
||||
|
||||
if (($ENV{TRAVIS_PULL_REQUEST} || '') eq 'false') {
|
||||
chomp(my $branch_name = ($ENV{TRAVIS_BRANCH} || `git rev-parse --abbrev-ref HEAD`));
|
||||
$TODO = 'Changes need not have content for this release yet if this is only the master branch'
|
||||
if ($branch_name || '') eq 'master';
|
||||
}
|
||||
|
||||
note 'Checking Changes';
|
||||
my $changes_file = 'Changes';
|
||||
my $newver = '6.04';
|
||||
my $trial_token = '-TRIAL';
|
||||
my $encoding = 'UTF-8';
|
||||
|
||||
SKIP: {
|
||||
ok(-e $changes_file, "$changes_file file exists")
|
||||
or skip 'Changes is missing', 1;
|
||||
|
||||
ok(_get_changes($newver), "$changes_file has content for $newver");
|
||||
}
|
||||
|
||||
done_testing;
|
||||
|
||||
sub _get_changes
|
||||
{
|
||||
my $newver = shift;
|
||||
|
||||
# parse changelog to find commit message
|
||||
open(my $fh, '<', $changes_file) or die "cannot open $changes_file: $!";
|
||||
my $changelog = join('', <$fh>);
|
||||
if ($encoding) {
|
||||
require Encode;
|
||||
$changelog = Encode::decode($encoding, $changelog, Encode::FB_CROAK());
|
||||
}
|
||||
close $fh;
|
||||
|
||||
my @content =
|
||||
grep { /^$newver(?:$trial_token)?(?:\s+|$)/ ... /^\S/ } # from newver to un-indented
|
||||
split /\n/, $changelog;
|
||||
shift @content; # drop the version line
|
||||
|
||||
# drop unindented last line and trailing blank lines
|
||||
pop @content while ( @content && $content[-1] =~ /^(?:\S|\s*$)/ );
|
||||
|
||||
# return number of non-blank lines
|
||||
return scalar @content;
|
||||
}
|
||||
|
Loading…
Reference in New Issue