Changes for Perl programming language extension Module-Install

1.21  2023-04-28
  - fix tests broken by Module::Install::DSL removal

1.20  2023-04-27
  - Module::Install::DSL has been removed, as its use is highly discouraged.

1.19  2017-12-19
  - remove use of INIT phase in Module::Install::DSL, to fix issues on perl
    5.27.7 (see cpan RT#123867 and perl RT#132577)

1.18  2017-04-04
  - fix tests to no longer rely on . being in @INC (Graham Ollis, PR#58)

1.17  2016-10-24
  - fix issue with mkpath with empty path
  - removed irrelevant code for Perl < v5.6
  - VMS fixes (RT#79858, Craig A. Berry)
  - documentation updated to reflect current discouraged state

1.16 Sat 2 May 2015
  - add missing test prereq on autodie

1.15 Thu 16 Apr 2015
  - respect the 'urllist' option when using the CPAN backend (Dan Brook)
  - fixes for newlines on MSWin32 (Christian Walde)

1.14 Sat 25 Oct 2014
  - Newlines should be consistently UNIX-stylee now in generated files (MITHALDU)
  - Mark two tests as TODO if EUMM > 6.98 until utf8 gets fixed (BINGOS)

1.12 Fri 29 Aug 2014
  - Revert license behaviour (TSIBLEY)
  - Documentation also mentioning (LLAP)

1.10 Fri 11 Jul 2014
  - Minimum perl version is now v5.6.0 (BOWTIE)
  - Update license tables (BOWTIE)
  - Prereqs and recommends adjusted (BOWTIE)
  - Typo fixes (BOWTIE)
  - Pod fixes (GREGOA)
  - Fix make upgradedeps work with bundles (JNWHITLEY)
  - Fix name_from regex to work with recent package syntax (BOWTIE)
  - Performance enhancements when running Makefile.PL (GFUJI)
  - Removed use of sub prototypes (BOWTIE)

1.08 Thu 6 Mar 2014
  - Remove LWP::UserAgent from the prereqs (TOKUHIROM)
  - Require a more recent version of Module::ScanDeps (CHORNY)
  - Fix failing test case with recent Parse::CPAN::Meta (BINGOS)

1.06 Thu 1 Mar 2012
	- Adding can_xs command, imported from Params::Util (ADAMK)
	- Adding requires_xs command, wrapping around can_xs (ADAMK)

1.05 Thu 28 Feb 2012
	- Use Module::Metadata instead of require to check versions for
	  modules that we don't need to subsequently use (MSTROUT/MIYAGAWA)
	  Use EU:MM instead of Module::Metadata to check versions for
	  modules that we don't need to subsequently use (ADAMK)
	- Removed automatic EU:MM version detection as it was using versions
	  in the future, change to a fixed version, unf (ADAMK)

1.04 Thu 20 Oct 2011
	- Fixed _cmp to compare properly (MIYAGAWA)
	- Fixed the automated MakeMaker dependency addition (MIYAGAWA)
	- Last Perl 5.5 compatible MakeMaker was actually 6.36 (ADAMK)

1.03 Wed 19 Oct 2011
	- META.yml flag dynamic_config is now always generated (ADAMK)
	- Added the convenience command static_config, as the default is to be
	  dynamic (ADAMK)
	- Module::Install::DSL will automatically set static_config unless it
	  can see an 'if' or 'unless' suffix (ADAMK)

1.02 Thu 29 Sep 2011
	- Support for installdeps_target in Module::Install::AutoInstall and
	  Module::AutoInstall (Caelum)
	- Support for installdeps_notest, upgradedeps and upgradedeps_notest,
	  listdeps and listalldeps targets in Module::AutoInstall (Caelum)

1.01 Wed 27 Apr 2011
	- Better error message in install_share (CHORNY)
	- Compatibility with MYMETA.yml support in EUMM (CHORNY)
	- Support for extraction of Artistic 2.0 license (CHORNY)
	- Support https links when searching for bug trackers (CHORNY)

1.00 Tue 22 Jun 2010
	- Remove obsolete text warning about nonexistent auto_install()
	- auto_install() wrongly merged build_requires entries into
	  requires; note that it's correct build_requires entries
	  are merged into requires if you use older versions of
	  EUMM, which didn't support build_requires. (ISHIGAKI)

0.99 Tue  1 Jun 2010
	- FindBin->again only works on 5.8.3

0.98 Mon 21 May 2010
	- Resolved #57326: Tests fail when being run in parallel
	  (by Florian Ragwitz) (ISHIGAKI)
	- Resolved #57335: Re: Problem with Module::Install + Fix
	  (by Paul Makepeace) (ISHIGAKI)
	- Added "add_metadata" to add extra (experimental) metadata to
	  META.yml (requested by Florian Ragwitz) (ISHIGAKI)
	- Fixed a test to check EU::MM version as only newer EUMM has
	- Made fixup_makefile a bit robust, not to be interfered by
	  antivirus etc (ISHIGAKI)

0.97 Mon 10 May 2010
	- Added missing LWP dependency, starting with 2 year old version (ADAMK)

0.96 Tue 10 May 2010
	- Stop pointlessly calling import() of bundled modules
	- Resolved #55464: Wrong license detection (by Jens Rehsack)
	- Resolved #55594: Missing license (by Salve J. Nilsen) (ISHIGAKI)
	- Resolved #5849 (load_extensions() causes "Subroutine %s
	  redefined" warnings) (by Steve Hay) (ISHIGAKI)
	- Resolved #19445: unknown functions in Makefile.PL should fail.
	  and #19449: license is not found if unknown function is present
	  (both are the same issue) (ISHIGAKI)
	- Resolved #54890: MYMETA.yml creation doesn't work (by miyagawa)
	- Resolved #55974: FakeAdmin does not define (by Francesc Guasch)
	- Resolved #40230: test_requires and include (by Alexandr Ciornii)
	- Resolved #56460: Bundle documentation error? (by Florent Angly)
	- Resolved #56459: Cannot find bundle source for modules that
	  contain sub-modules (patch by Florent Angly) (ISHIGAKI)
	- Resolved #56474: Dependency check error fails to be triggered
	  (by Florent Angly) (ISHIGAKI)
	- Resolved #5528: Sub-directory builds don't work (by Steve Hay)
	- Resolved #56531: New patches for M::I::Bundle (patch by Florent
	  Angly) (ISHIGAKI)
	- Resolved #56589 for Module-Install: Bundle's refactor
	  (patch by Florent Angly) (ISHIGAKI)
	- Pass VERSION_FROM to EU::MM in the background to let it check
	  version integrity (ISHIGAKI)
	- Improved tests and removed unnecessary directories/files
	- Added API.pod and FAQ.pod (ISHIGAKI)

0.95 Wed 10 Mar 2010
	- Resolved #51614: POD nits (by Frank Wiegand) (ISHIGAKI)
	- Resolved #51077: auto_include_deps would mention the
	  (test|build)_requires version. (by Tokuhiro Matsuno) (ISHIGAKI)
	- Resolved #51267: Consider moving load checks to import so
	  require M::I will succeed (by David Golden) (ISHIGAKI)
	- Resolved #55050: Module::Install::AuthorTests is broken with
	  M::I 0.93 and 0.94 (by AEvar Arnfjord Bjarmason) (ISHIGAKI)
	- Resolved #16569: author should take array to match META.yml
	  spec and Module::Build (by MARKSTOS) (ISHIGAKI)
	- Resolved #53984: Don't use ExtUtils::Install to copy into blib
	  (by Michael G Schwern) (ISHIGAKI)
	- Resolved #17893: Module::Install::Share ignores MANIFEST
	- Resolved #24194: Error msg: Your installer Makefile.PL has
	  a modification time in the future (by RSAVAGE) (ISHIGAKI)
	- Resolved #33976: cc_inc_paths replaces INC provided on command
	  line (by David Golden) (ISHIGAKI)
	- Resolved #25972: makemaker_args INSTALLDIRS => 'perl'; doesn't
	  work (by TELS) (ISHIGAKI)
	- Resolved #45978: .pm.PL runs in wrong order for WriteMakefile
	  (by Hilary Holz) (ISHIGAKI)
	- Resolved #19783: Query CPAN for new versions of Module::Install
	  during "make dist" (by Steffen Mueller) (ISHIGAKI)
	- Resolved #27242: Bug(s) in license_from() (by Steve Hay)
	- Now license is properly passed to the EU::MM in the
	  background (ISHIGAKI)
	- Added non-interactive session support, part of which was
	  there some time before (ISHIGAKI)

0.94 Tue 23 Feb 2010
	- Fixed critical author/xt bug (ADAMK)

0.93 Sun  7 Feb 2010
	- Better search for 'Perl' license (CHORNY)
	- Added automatic executing of xt tests during either author()
	  mode or when RELEASE_TESTING is enabled (ADAMK)

0.92 Thu 21 Jan 2010
	- Support bugtracker (CHORNY)
	- Made the matching phrase for the perl license a bit shorter
	  to allow "the same terms as Perl 5.10" etc (ISHIGAKI)
	- Refactor part of license_from to separate sub, tests for a new
	  sub (CHORNY)
	- Refactor part of perl_version_from to separate sub, tests for
	  a new sub (CHORNY)
	- Allow spaces at the start of string when using
	  perl_version_from (CHORNY)
	- The all_from command now stores the filename in the 'all_from'
	  key for later reuse (MARCEL)
	- Support bugtracker (CHORNY)
	- If the DSL code fails, say why (ADAMK)
	- Now autoinstall doesn't die on CPAN-1.81 (JJORE)
	- Check 'copyrights' section for license also (CHORNY)
	- Test passing correct params to EU::MM (CHORNY)
	- Use BUILD_REQUIRES EU::MM param for better OS packages (CHORNY)
	- Bundled prereqs will be removed from build prereqs only (CHORNY)
	- Better search for 'Perl' license (CHORNY)
	- Adding 'makemaker' command to make EU:MM version conditionals
	  easier (ADAMK)
	- Removed a variety of Perl::MinimumVersion complaints (ADAMK)

0.91 Thu 28 May 2009
	- Add missing dependency on Parse::CPAN::Meta

0.90 Fri 22 May 2009
	- Adding a first implementation of MYMETA

0.89 Wed 20 May 2009
	- _load_cpan now also checks for $CPAN::Config before assuming that
	  CPAN and its config are properly loaded (HDP)
	- Changes file is now TIOBE compatible (ADAMK)
	- license_from now support a TIOBE-compatible declaration (ADAMK)
	  (...under the same terms as the Perl programming language itself)

0.88 Thu 14 May 2009
	- Show what version is currently installed when deps are not new
	  enough (patch by RIBASUSHI, applied by MSTROUT)
	- Tweak _check_lock to not load CPAN when new enough -and- no env
	  vars present - otherwise we still accidentally configure the thing
	  for no good reason (MSTROUT, feeling particularly dumb)
	- Module::Install::Admin::Include now had a '=head1 NAME',
	  which should avoid problems when generating man pages.
	  Many thanks to Simon Bertrang for the patch.  (PJF, RT #45811)

0.87 Thu  7 May 2009
	- The other half of MSTROUT's changes
	- A note mentioning to bug MSTROUT if you run into problems

0.86 Sat  2 May 2009
	- Add --alldeps option to say yes to optional dependencies (MSTROUT)
	- Alter _check_lock to test the CPAN version and use
	  PERL5_CPAN_IS_RUNNING if new enough so we don't accidentally
	  configure CPAN unless it's so old we have no choice (MSTROUT)
	- Tweak the SkipInstall logic so --skipdeps bypasses everything
	  again including any loading of CPAN, no matter how old (MSTROUT)
	- Adding ./example, ./test and ./xt to the no_index list (ADAMK)
	- Removed $VERSION from the tests (ADAMK)
	- Various POD fixes (ADAMK)

0.85 Sun 19 Apr 2009 - Adam Kennedy
	- All files no use strict to satisfy Kwalitee (ADAMK)

0.84 Tue 14 Apr 2009 - Adam Kennedy
	- Fix incorrect if => unless conversion (CHORNY)

0.83 Tue 14 Apr 2009 - Adam Kennedy
	- Module::Install::DSL wasn't correctly loading the main
	  Module::Install package when trying to install on a host
	  that didn't have M:I installed locally (CSJEWELL)
	- Module::Install no longer supports Perl versions less than
	  5.005, so we can now safely just "require" File::Spec (ADAMK)

0.82 Wed  9 Apr 2009 - Adam Kennedy
	- If configure_requires has ExtUtils::MakeMaker and it's version
	  requires perl 5.6, require perl 5.6 for dist in META.yml (CHORNY)
	- Fixes to Module/ (MSTROUT)
	  - don't prompt for required dependencies under CPAN/CPANPLUS
	  - allow PERL_AUTOINSTALL_PREFER_CPAN env var to disable cpanp use
	- Module::Install::DSL now correctly installs itself into the
	  generated tarball (ADAMK)
	- Preferentially dispatch leading-underscore methods used in plugins
	  to the main Module::Install object (ADAMK)

0.81 Tue 24 Mar 2009 - Adam Kennedy
	- Use 3-argument open when Perl >= 5.006 (ADAMK)
	- Support for 'keywords' key in META.yml (CHORNY)
	- More URLs for licenses, test for this (CHORNY)
	- tests for extracting link to bugtracker,
	  will more correctly extract them (CHORNY)
	- Adding version-normalising Module::Install::_cmp
	  (for <=> equivalent on versions) (ADAMK)
	- If the Makefile.PL time is in the future by only a few seconds
	  (probably due to 2-second filesystem time rounding on Win32)
	  sleep for 5 seconds to avoid the problem. (ADAMK)
	- Moving from Module::Install::DSL to inc::Module::Install::DSL
	  (to reduce the Makefile.PL header for DSL mode to one line) (ADAMK)
	- Adding convenience pod reading Module::Install::_readpod (ADAMK)
	- Adding convenience pod stripping Module::Install::_readperl (ADAMK)
	- Adding experimental requires_from command to auto-detect requires (ADAMK)
	- Add a "Writing MYMETA.yml" status message (ADAMK)
	- Generalising boolean commands (ADAMK)
	- Cleaner removal of files during realclean (ADAMK)
	- Write META.yml and MYMETA.yml after Makefile to pick up a couple
	  of extra implicit dependencies. (ADAMK)
	- Set a high configure_requires on ExtUtils::MakeMaker for any client
	  that supports configure_requires. (ADAMK)
	- Add a full resolution test for Module::Install::DSL (ADAMK)
	- If we write MYMETA.yml, remove it at realclean time (ADAMK)
	- Removed the 'Removing META.yml' warning

0.80 Tue 17 Mar 2009 - Adam Kennedy
	- Don't generate MYMETA.yml if we don't have YAML::Tiny, even if
	  we've said we need it. This was breaking Catalyst. (ADAMK)
	- Will not ask about auto-installing mandatory dependencies, if

0.79 Wed  4 Feb 2009 - Adam Kennedy
	- Upgrading (and testing) Perl version normalisation
	- Adding an experimental-grade implementation of MYMETA.yml

0.78 Sun 25 Jan 2009 - Adam Kennedy
	- Much more aggressive dependencies, except PAR::Dist (ADAMK)
	- Adding inc::Module::Install::DSL for simple installs (ADAMK)
	- We now avoid poking references in @INC in case they
	  have strange overload behaviours.  (PJF, RT #39929)
	- installdirs and install_as_* are now documented in
	  Module/Install.pod (PJF, RT #25111)
	- Applied patch RT #38443 from Oleg Kostyuk for two-part
	  version numbers being passed to perl_version.  Calling
	  'perl_version 5.8' should now work the same as
	  'perl_version 5.008'.  Additional tests added to
	  t/07_perl_version.t to check this.  (PJF, RT #38443)
	- Module::Install no longer complains about the phrase
	  "All rights reserved" in association with open source
	  licenses.  (PJF, RT #41268)

0.77 Fri  8 Aug 2008 - Adam Kennedy
	- Don't break directories starting with inc(oming) (ADAMK, RT #30637)
	- Adding more phrases to recognise GPL variants (ADAMK, RT #35195)
	- Skip 03_autoinstall.t except at release, as it can hang in some
	  situations (ADAMK, #29448)
	- Add a file check to the all_from param (ADAMK, #24586)
	- Fixed bug in can_run when PATH starts with a sep (ADAMK, #29866)
	- Don't overwrite dist args if there is a preop (ADAMK, #36831)
	- Bug fix in the command dispatcher (ADAMK, #27327)
	- perl_version now understands three-part Perl versions like
	  5.8.1 (PJF, RT #38317)
	- Numify objects when generating YAML (ADAMK)

0.76 Thu 17 Jul 2008 - Adam Kennedy
	- ExtUtils::MakeMaker no longer complains when its version
	  contains an underscore. (PJF, RT #35800)
	- Documentation patches to Module::Install::Admin and
	  Module::Install::Base. (Adriano Ferreira, RT #27696)
	- Corrected broken internal link in Module/Install.pod. (PJF)
	- The 'examples' directory will no longer be included
	  twice in META.yml/no_index/directory. (PJF)
	- Move to the new 1.4 version of the META.yml specification (ADAMK)
	- Automatically provide resources:license for
	  license('perl') (ADAMK)
	- Implemented the bugtracker_from command (ADAMK)
	- Added bugtracker_from to the all_from command
	  (Although we don't warn if not provided) (ADAMK)
	- Shifting minimum perl version for Module::Install to 5.005
	  (Anything older should use ExtUtils::MakeMaker) (ADAMK)
	- perl_version errors if it gets a value less that 5.005 (ADAMK)
	- Created the new install_share implementation (ADAMK)
	- Added the ppport function for adding ppport.h (ADAMK)
	- Bumped File::Remove from test_requires to requires (ADAMK)
	- Added dependency on Devel::PPPort for ppport (ADAMK)

0.75 Mon  2 Jun 2008 - Adam Kennedy
	- Documenting the smaller post Module::Build core package
	  Module::Install::With and removed experimental warning (ADAMK)
	- Disabled the broken install_share error check (CLACO)
	- Disabled "pointless version 0" warning, as it encourages less
	  metadata (ADAMK)
	- Adding an experimental undocumented implementation of a
	  "resources" and "repository" command (ADAMK)
	- Don't dump "tests" and "installdirs" to META.yml (ADAMK)

0.74 Mon 26 May 2008 - Adam Kennedy
	- Fix incorrect comparison of module and distribution names (RJBS)
	- Allow "require" instead of "use" when finding required perl version (RJBS)
	- Remove the -f Build.PL check, as it was breaking for people trying to
	  convert from M:B to M:I or vice versa (MSTROUT)

0.73 Wed 14 May 2008 - Adam Kennedy
	- Aggressively increase dependencies for authors to make sure
	  all the latest release-time tricks will work properly. (ADAMK)
	- When generating META.yml where there is an overall Perl version
	  dependency, add a test for unversioned core dependencies that
	  MUST already be satified by the Perl dependency. (ADAMK)
	- Merged Module::Install MANIFEST.SKIP into the repository
	  default MANIFEST.SKIP file, and deleted the M:I one (ADAMK)

0.72 Tue 15 Apr 2008 - Adam Kennedy
	- exit(0) on requires_external_bin to make it a real NA (ADAMK)
	- Change docs to recommend the use of test_requires instead
	  of build_requires. They do the same thing now, but this may
	  change in the future and in that case better people use
	  test_requires now as it is a more accurate description of
	  intent. Also, it reads clearer. (ADAMK)
	- Removed the command prompt_script, it did some unusual magic
	  and it easy enough to replace with 2 lines of code in the
	  Makefile.PL of anyone using it anyway (ADAMK)
	- Merged the remaining install_script into (ADAMK)
	- Adding documentation about the configure_requires command (ADAMK)
	- Automatically add any install_share directory to no_index (ADAMK)
	- Check scripts passed to install_script actually exist (ADAMK)
	- Allow install_script('foo') to be shorthand for
	  install_script('script/foo') if no root 'foo' file exists.
	  This should allow for yet more typing reduction (ADAMK)
	- For even more typing reduction, "use inc::Module::Install"
	  now acts as an implicit "use strict", so you don't need to
	  use strict in Makefile.PL (ADAMK)
	- Fixed a regex bug in name_from (and thus all_from) (ADAMK)

0.71 Mon 24 Mar 2008 - Adam Kennedy
	- YAML::Tiny is now good enough to use exclusively (ADAMK)
	- Converted Changes file to my normal format, so that my release
	  automation can deal with it properly (ADAMK)
	- Added name_from to auto-detect name, and include name_from in
	  all_from, so now no name line is needed at all in the
	  Makefile.PL (ADAMK)
	- Removed the redundant Module::Install::Makefile::Name and
	  Module::Install::Makefile::Version, they were almost never
	  used and were a bit too magic. (ADAMK)
	- Adding a "wrote" flag to the M:I object in preparation for
	  making WriteAll implicit by default (ADAMK)
	- Correcting 01_compile.t to check for 5.004 instead of 5.005
	- Added Module::Install::_version to numify CPAN-like versions
	  properly (ADAMK)
	- Split TestHelper out as it's own t/lib/Test module (ADAMK)
	- Upgrade from File::Path::rmtree to File::Remove::remove in the
	  test scripts. (ADAMK)
	- Various documentation clean ups (ADAMK)
	- If building in author mode, make sure that auto-generated META.yml
	  files are deleted properly during 'make clean' (ADAMK)

0.70 Tue 18 Mar 2008 - Adam Kennedy
	- Temporarily restoring auto_install until Matt Trout can craft a
	  replacement for their installdeps needs, and for feature support

0.69 Sat 15 Mar 2008 - Adam Kennedy
	- Removing auto_install support (ADAMK)
	- Removing Build.PL support (ADAMK)
	- Enabling configure_requires support (ADAMK)
	- Automatically set a configure_requires for the version of
	  ExtUtils::MakeMaker that the author is running (ADAMK)
	- Refactoring a number of modules for reduced size (ADAMK)
	- Add 'share' to the list of directories automatically no_index'ed (ADAMK)
	- license_from correctly marks "GNU lesser public license" as lgpl,
	  not gpl [ 24635] (AVAR)
	- set author mode ($Module::Install::AUTHOR) when first creating
	  ./inc (RJBS)
	- Don't write perl into PREREQ_PM when using perl_version (ADAMK)

0.68 - Ricardo Signes
	- The author entry in META.yml is now a sequence, as required

0.67 - Adam Kennedy
	- Tweaked the license detection code a bit
	- Previous changes working well, going production

0.66_02 - Adam Kennedy
	- Adding detection of 'proprietary' license.
	- "All rights reserved" clashes with or can invalidate most Open Source
	  licenses. Adding a warning to this effect.

0.66_01 Thu 15 Mar 2007 - Adam Kennedy
	- Adding tests_recursive to have M:I search for and explicitly list
	  all test scripts recursively.
	- Adding configure_requires, test_requires and install_requires.
	  These are currently aliases for build_requires but will later result
	  in alternative consequences internally (ADAMK)
	- Reorganising Module::Install::With on the assumption that will
	  be implementing PERL5_CPAN_IS_EXECUTING.

0.65 Tue 6 Mar 2007 - Adam Kennedy
	- Add install_as_core, install_as_cpan, install_as_vendor
	  commands to control the "installdirs" metadata field.
	  Requested by: Tels (renamed by ADAMK and AUDREYT)
	- Add the preop command for users to customize the PREOP rule. (BINGOS) 
	- Implement support for $ENV{PERL5_CPANPLUS_IS_EXECUTING} in the
	  experimental Module::Install::With. (ADAMK)
	- Remove the use of features in the Module::Install Makefile.PL.
	  Developers should be quite capable of installing them all. (ADAMK)
	- Remove the use of auto_provides in Module::Install Makefile.PL
	  until we fix it to not break without a pre-existing MANIFEST. (ADAMK)
	- YAML::Tiny is now used as a fallback for generating META.yml. The
	  order of precedence is now YAML::Syck, YAML::Tiny, then YAML.
	- META.yml output is now conformant to spec 1.3.
	- Add MIT license to those detectable by license_from() (GAAL)

0.64 Thu 24 Aug 2006 - Adam Kennedy
	- auto_install() will no longer invoke or CPANPLUS
	  recursively when running under CPANPLUS (i.e., when 
	  $ENV{PERL5_CPANPLUS_IS_RUNNING} is set to a true value.)
	- auto_install() would not follow prerequisites of requires() when
	  the module is installed from the command line and only is
	  installed. [ 21139] (MSCHWERN)

0.63 Mon 5 Jun 2006 - Adam Kennedy
	- "make" gets confused if the Makefile.PL time is in the future, but there
	  is no universal fix for this. As an initial solution, catch the error
	  situation and die with an error to the user. (ADAMK)
	- Adding additional notes on no_index package (ADAMK)
	- Removing hashbang from Makefile.PL and using a $^W = 1 instead (ADAMK)

0.62 Wed 3 May 2006 - Adam Kennedy
	- Various small back-compatibility bugs squashed, since we advertise
	  that a M:I installer should run back to 5.004 (AUDREYT)
	- Allow non-admin installs to do so without the need for (AUDREYT)
	- Adding an initial implementation of Module::Install::With, containing
	  code to detect the existance of other members of the Perl toolchain,
	  and how we are related to them in any given install run.
	  Initial experimental implementation of and CPANPLUS detection,
	  based on code extracted from Module::AutoInstall, and other code
	  recommended by the relevant authors.
	  Leaving the new commands undocumented for now, and recommend NOT making
	  general use of them until tested. (ADAMK)
	- In order to implement any form of version locking, which need to know
	  which extensions are in the core (and thus version-locked) and which
	  are custom extensions with legally out-of-sync versions.
	  Added $ISCORE = 1 global to every potentially-bundled core extention,
	  for when we start to do version locking. (ADAMK)
	- The install_share Makefile fragment fails on older ExtUtils::Install
	  versions. When we install_share, add an explicit EU::MakeMaker dependency.
	  Would have done on just ExtUtils::Install, but it isn't
	- Some/many versions of MakeMaker incorrectly set PERL_LIB and PERL_ARCHLIB,
	  which is only supposed to be used for building the core Perl. Since we'll
	  never be doing that, make the Makefile munger blank them if they exist.
	  This lets PREFIX + PERL5LIB for installing private modules work again.
	  (except not PERL_ARCHLIB for now, it's not getting in the way, and for
	  some reason it's used for something else) (ADAMK)

0.61 Sat 15 Mar 2006 - Adam Kennedy
	- ActivePerl::Config on case-insensitive filesystems interacts
	  erroneously with Module::Install's (outdated) @INC hack, so remove it.
	  (Patch from Gisle Aas)
	- Improve compatibility with ExtUtils::MakeMaker 5.x by not relying
	  on FIRST_MAKEFILE being set in the MM instance.
	- Remove optional dependency on CPANPLUS. (INGY)
	- Add "realclean_files" command to add files to be cleaned on
	  "make realclean", instead of "make clean". (INGY)
	- Add $VERSION back to inc::Module::Install so we can implement
	  workarounds and back-compatibility code later on. (ADAMK)

0.60 Tue 11 Mar 2006 - Adam Kennedy
	- Cleaned up the 0.59 fix a bit and added a bunch of comments explaining
	  the bootup mechanism. A misunderstanding of this on my part led to
	  the 0.58 bug. Sorry folks (ADAMK)
	- Resolved #18040: bundled Module::Install leaks private information
	  Debugging information in Module::Install::Admin was leaking potentially
	  sensitive information. Removed just the files, left the lines (TELS)
	- Fixed a smaller part of the problem with 0.58 that still hurts people if
	  that are an installer AND an author as well. (Reported by dha)

0.59 Fri 7 Mar 2006 - Adam Kennedy
	- Resolved #18020: 0.58 was broken; inc::Module::Install's @ISA
	  and $VERSION needs to be set by Module::Install on its behalf.

0.58 Tue 4 Mar 2006 - Adam Kennedy
	- Made Module::AutoInstall generally aware of AUTOMATED_TESTING
	- Added compatibility with 5.9.3 proxy constants
	- Resolved #11169: problems on VMS.
	  This doesn't mean there won't be problems on VMS though,
	  as this path is oldish and their may be more problems.
	- Added AUTOMATED_TESTING support to prompt() to force the
	  selection of the default (via PERL_MM_USE_DEFAULT) when it
	  is enabled.
	- Added infinite loop protection to prompt() just in case automated
	  and/or shortcutted responses to prompts go badly and leave us
	  looping over the same question.
	- Fixed #17961 Use of uninitialized value in array dereference at
	  Module/Install/ line 163. (TELS)
0.57 Thu 23 Feb 2006 - Adam Kennedy
	- Fixed a bug where a misnamed hash key was making the extensions
	  fruitlessly reload (or at least try to reload) every command call.
	- Fixed a pod bug for the requires_external_bin head2
	- Because external deps will need versioning eventually, we can
	  never provide a hash to requires_external, and so it's really
	  just supurfluous and invites more bugs. Removed.
	- Experimentally added support for the META.yaml dynamic_config flag.
	  We don't set ANY default value, because of a lack of clarity. It is 
	  undocumented in the META.yaml spec, but false in Module::Build, which
	  is really really bad, as it leads to falsely assuming dynamic
	  Makefile.PLs are static when no dynamic_config is provided.
	  Personally, I think it should be static_config anyway, and we may well
	  change it to be that anyway.
	- Added support for requires_external_cc (requires a C compiler) that will
	  integrate with whatever central method we use later to signal to
	  whatever is calling Makefile.PL that there is a missing external
	  dependency. This will also be called by other methods if there is an
	  implicit dependency.
	- Synchronised all the module versions to all be 0.57.
	  This will be used a few versions down the line to add integrity testing
	  of Module::Install's own extension loading process.
	- Added a $VERSION and C<use strict> to the extensions that didn't have
	  one or both of the two already.
	- Fixed a number of minor bugs discovered after turning on C<use strict>.
	- Very carefully beginning to clean up some of the code so it's much more
	  boring (i.e. maintainable).
	- Changed recursion to always preference the installer we are currently
	  running under. So use in, and CPANPLUS in CPANPLUS.
	  This simplifies anti-dupe recursion algorithms, and dramatically
	  reduces memory use under
	- Documented the install_script command
	- Caught _install_cpanplus happily passing completely illegal
	  config params to CPANPLUS, and worse, eval-wrapping the set_conf so
	  it could happily ignore errors.
	  Added _cpanplus_config to try and auto-convert CPAN config params to
	  CPANPLUS, and die if we can't. Add more translators as needed.
	- Moved the deprecated commands into their own module
	  Module::Install::Deprecated to stop them being included and reduce
	  package bloat.

0.56 Sun 12 Feb 2006 - Adam Kennedy
	- Added experimental support for requires_external_bin to forcefully
	  require the installation of a script or command.
	- Removed a warning in Module::Install::Admin::MetaData when
	  perl_version doesn't have a third part.

0.55 Fri 27 Jan 2006 - Adam Kennedy
	- This release only not signed (Released by ADAMK who has no keys)
	- Another pass over the POD to clean up and remove mistaked (ADAMK)
	- Module::Install::Share installs to blib/lib rather than blib/arch.
	  Most files will be non-arch-specific, and it was causing problems
	  down the road with File::ShareDir.
	  All existing working install_share/File::ShareDir continues to work.
	- New command auto_include_dependent_dists() to recursively include
	  dependent CPAN distributions for modules declared with
	  This differs from auto_include_deps() because it works with whole
	  distribution source trees, not just single modules.
	- Fix POD syntax so t/2-pod.t passes.
	  Contributed by: Ishigaki Kenichi
	- Disable 5.00503-specific qr// construct in t/3-autoinstall.t so
	  Perl 5.004 can build this module again.
	- YAML::Syck 0.27+ is now a preferred dependency over YAML 0.35+ for
	  platforms with a C compiler and without either one available.

0.54 Wed 11 Jan 2006
	- Fix can_run() on Cygwin for real.
	  Contributed by: Mark Grimes

0.53 Wed 11 Jan 2006
	- Fix can_run() on Cygwin for paths beginning with /cygdrive/.
	  Reported by: Mark Staggs
	- If YAML::Syck is present on the system, use it instead of
	  to write out META.yml.

0.52 Tue 3 Jan 2006
	- Module::AutoInstall - disable "sudo" prompting for CPANPLUS 0.050
	  and 1.80+ which already has "sudo" support.
	  Reported by: Andreas Koenig

0.51 - 2005-12-31
	- An additional 100+ lines of documentations in the Module::Install POD file.
	- all_from() with no args now attempts to decude the "from" file
	  from the "name" property.
	- On Cygwin, sometimes AUTOLOAD is called with a gensym'ed package
	  that does not define _top.  Try to accomodate for this.
	- Do not ever attempt "sudo" without interactive consent from the user;
	  make the _prompt() in Module::AutoInstall default to 'n' if we are
	  not running in an interactive terminal.
	- Add lib_paths and lib_links commands to Module::Install::Compiler for
	  setting LIBS flags.

0.50 Mon 26 Dec 2005
	- Fixed the bug where cpan signing was set forcibly to true instead
	  of defaulting to false.
	  Reported by: Martin Thurn and Randal Schwartz
	- Module::Install::Admin's copy() subroutine was using a lot of CPU
	  on inefficient regex matches, where a simple passthrough while()
	  line-processing loop would do.
	- The t/ directory is now listed in META.yml's no_index entries by
	  default, along with inc/.
	- is now listed as an explicit dependency.

0.48 Mon 26 Dec 2005
	- New Module::Install::Compiler extension with commands:
	  c_files(), inc_paths(), optimize_flags().

0.47 Sun 25 Dec 2005
	- Slight documentation cleanup and update Module::Install::Admin
	  version to 0.47; no functional changes.

0.46 Thu 22 Dec 2005
	- tests() should always take effect even if auto_install() or
	  makemaker_args() had set it before.
	  Reported by: Jesse Vincent.

0.45 Fri 16 Dec 2005
	- Improved detection for author_from() based on the copyright line
	  in addition to =head1 AUTHORS.
	- Bump version of Module::Install::Admin to match Module::Install.
	  Reported by: Sebastian Riedel

0.44 Tue 13 Dec 2005
	- Module::Install::Bundle now extract files correctly again;
	  this was a regression since 0.40.
	  Reported by: Randal Schwartz
	- Add support to Module::Includes::Bundle so each subdirectory
	  can use Module::Install for bundling. 
	- The "bundles:" key in META.yml is now populated even if the
	  bundled modules already exist on the system.

0.43 Mon 12 Dec 2005
	- Better documentation to install_share().
	- New author_from() command to guess the author name from POD.
	- all_from() no longer probes for metadata that has been set before.

0.42 Sun 11 Dec 2005
	- auto_provides() was broken due to a typo.
	- New command install_share() to put a directory's content into the
	  per-distribution auto/ directory.

0.41 Sun 11 Dec 2005
	- Only query '$self->tests' if we haven't been given an explicit list
	  (From Paul Fenwick)
	- New command auto_provides() to calculate "provides:" information using
	  Module::Build.  Requested by Chia-Liang Kao.

0.40 Wed 7 Dec 2005
	- Massively updated documentation (more to come later).
	- Parentheses are now optional in Makefile.PL.
	- Includes Module::AutoInstall, a cleaned-up version of ExtUtils::AutoInstall.
	- New command all_from() to combine all *_from() tests into one.
	- New command test() to Support specifying test files.
	- New command feature() to list individual features easily.

0.37 Thu 4 Aug 2005
	- Always include ExtUtils::AutoInstall in inc/ if auto_install() is called.
	- Fixed a bug where modules having shared libraries would sometimes
	  be included in inc/.
	- The needs shared library message will now only be printed if the module
	  version indicates that it would otherwise be included. The module name has
	  also been corrected so that "::" is used everywhere instead of "/".

0.36 Thu 9 Sep 2004
	- First version under SVK management.
	- install_scripts() now takes multiple scripts to install.

0.35 Tue 13 Jul 2004
	- Jos Boumans reported that "use inc::Module::Install 0.34"
	  was failing because Module::Install does not assign VERSION
	  to inc::Module::Install.
	- Implemented auto_include_deps() for real.

0.34 Thu 1 Jul 2004
	- auto_include() will not include recursive dependencies now;
	  that functionality is refactored into auto_include_deps().

0.33 Thu 11 Mar 2004
	- abstract_from() was broken; it works now thanks to SHAY.
	- WriteAll() now takes (inline => 1) to support
	  Inline-based modules.

0.31 Wed 31 Dec 2003
	- Allow auto_install() to take -core-specific options like
	  (-default => 0).
	- No longer use inc/SCRIPT but simply modify the scripts to install.
	- Make can_cc() to probe the program part of $Config{cc}
	- Bundled M::I-using modules (or subdirs) used to break up
	  spectacularly by overriding ::AUTOLOAD and reusing their
	  parents' inc/*.  Now the namespaces are keyed by cwd and
	  more readily unregistered.

0.29 Sun 14 Dec 2003
	- Introducing &WriteAll, a combination of &Meta->write,
	  &check_nmake, &Makefile->write, and if a Build.PL is
	  present (which should read "require 'Makefile.PL'"),
	  also supports transparent &Build->write.
	- Real Module::Build support in WriteAll and in this module.
	- Transparent Build.PL, as promised in README, is back.
	- WriteAll now takes three non-metadata flags:
	  check_nmake (default 1), meta (default 1) and
	  sign (default 0).
	- The "private" key in META.yml is officially obsoleted by "no_index".
	- Now warns if the user did not specify a license.
	- "requires( perl => $version )" is now supported.
	- include_deps() now no longer takes its second argument;
	  it must be separately supplied with the syntax above.
	- "&WriteAll" now officially replaces "&Build->write",
	  "&Makefile->write", "&Meta->write" and "check_nmake()".
	- Implemented auto_include() and bundle_deps().
	- Add "#defaults" to MANIFEST.SKIP.

0.28 Thu 11 Dec 2003
	- Module::Install::Bundle now works, thanks to Adam Foxson!
	- Unbreak against newer EU::MM.
	- Let "inc" work with "make test" on 5.6.x too.
	- mcdavis pointed out that Microsoft now wants
	  "Nmake15.exe", not "nmake15.exe".

0.27 Mon 27 Oct 2003
	- Make the include'd modules actually work during
	  "make" and "make test", by adding "inc" to the
	  Makefile targets.
	- Graham's patch for 5.004 backcompat.
	- Graham Barr points out that readdir() can return 0.
	- Do not sign the distribution if we are not the admin.

0.26 Fri 17 Oct 2003
	- sign(1) support for automatic digital signing.
	- no_index(directory => 'example') support, for telling
	  PAUSE and search to skip indexing modules.

0.25 Mon 13 Oct 2003
	- Add no_index as an alias to private in META.yml.
	- Support for YAML::Parser::Syck.
	- No point in supporting Build.PL now.

0.24 Mon 1 Sep 2003
	- 0.17 is simply too old as it scans in POD sections.
	- Kingpin <mthurn@carbon> notes that we are using "next"
	  outside a loop block in ScanDeps.
	- and should be exempted too.

0.23 Mon 18 Aug 2003
	- Implemented $self->is_admin to properly test if it's running
	  on the admin side.
	- Andreas Koenig reports that we are writing META.yml
	  even on the user side, because of this bug.
	- Switch to PAR::Dist to do make_par().

0.22 Wed 16 Jul 2003
	- Turns out that MakeMaker's NAME corresponds to
	  META.yml's module_name, and DISTNAME corresponds
	  to name.  Reflect this in the relevant files.
	- Introduce a new module_name metadata key that may
	  be automatically generated from name.
	- /\.pm/i should be /\.pm$/i.
	- Iain Truskett wants us to not overwrite alien META.yml files.
	- PREREQ_PM wasn't being filled out.
	- Should be including YAML dependencies too.
	- POD cleanups.

0.21 Sun 15 Jun 2003
	- Lindsay Morris pointed out that include_deps()
	  does not work with non-core modules; fixed.

0.20 Thu 5 Jun 2003
	- Add pointer to ingy's TPJ article.
	- Eliminated warnings on 5.005.
	- Added the "package inc::Module::Install;" line at
	  request by Graham Barr, for
	- Close META.yml before zipping; otherwise trips on win32.
	- requires(), build_requires(), recommends() etc can now take
	  multiple pairs in addition to a single pair.
	- Add standard MANIFEST and META.yml to generated PAR file.
	- Implemented the &Meta->read mentioned in the main docs.
	- Our version of WriteMakefile was failing to fine Meta
	  object; fixed.
	- 'make reset' now just an author side alias for 'make purge'.
	- The whole #! business is unneeded since MakeMaker does that.
	- Don't skip other non-pm inc/ stuff when checking MANIFEST.
	- The hashbang line should be the first, not last, in scripts.
	- Also people may not always like -w.
	- We reall want to rmtree() the distdir so that 'make manifest'
	  won't include clobbered files after an aborted 'make dist'.
	- Fix consistency: ->prompt() should only take one line of
	  prompt and expects y/n.