cpan Module-Build 0.20

latest releases: 2.232012, 0.1.11, 0.5...
20 years ago
  • Separated the 'build' action into two separate actions, 'code' and
    'docs'. This is similar to MakeMaker's separation of the 'all'
    target into 'pure_all' and 'manifypods'. This fixes a permissions
    hassle in which doing 'sudo Build install' would often create local
    doc files that needed superuser permissions to delete.

  • Enhanced the 'help' action - 'Build help foo' will now show the POD
    documentation for the 'foo' action.

  • Added a notes() feature, which helps share data transparently
    between the Build.PL and t/*.t scripts.

  • The installation process will now create man(1) and man(3) pages
    from POD in modules & scripts, and install them. We don't build
    man pages when there's nowhere to install them, such as on some
    Win32 or most Mac systems. [large patch by Steve Purkis, 5.005 fix
    by Mathieu Arnold]

  • The 'distdir' action now copies files to the distribution
    directory, rather than making them hard links to the original
    files. This allows authors to do last-minute alterations of the
    files without affecting the originals. [Dave Rolsky]

  • If the author uses XS files in nonstandard locations, the copied
    versions of those files will now be cleaned up properly.

  • In invoking the 'test' action or invoking 'xsubpp', we now use the
    same perl executable as we use everywhere else, rather than blindly
    using $^X or $Config{perlpath} (neither of which are very
    reliable).

  • Fixed a problem with the 'install_path' parameter given to
    'Build.PL' being lost in subsequent actions. [Reported by Mathieu
    Arnold]

  • Fixed yet another bug with installation directories, in which the
    'install_base' parameter wasn't being respected on the command
    line. [Spotted by Jonathan Swartz]

  • Changed the way the depends_on() method works inside action
    subroutines - now each action will only run once per dispatch()
    invocation (similar to how perl's require() function works). This
    helps avoid some difficult problems with dependency loops.

  • Changed the documentation for the 'autosplit' parameter to give
    reasons why it may not be a good idea to use, but no longer
    threaten to remove it. [Suggested by Martyn J. Pearce]

  • Improved the formatting of the 'traditional' Makefile.PL generated
    by Module::Build::Compat->create_makefile_pl. [Michael Schwern]

  • The 'traditional' Makefile.PL will now use the 'module_name'
    parameter (as NAME) if it's available, otherwise it will continue
    to use the 'dist_name' (as DISTNAME). [Michael Schwern]

  • Created read/write accessor methods for all our 'properties'.
    [Michael Schwern]

  • The 'test_files' parameter can now be specified using glob() syntax
    (i.e. 't/*.t'), and the corresponding test_files() method is now a
    read/write accessor.

  • The location of the 'blib' directory is now a property of the Build
    object - nobody is likely to notice this change, with any luck, but
    it makes the design and code cleaner.

  • The 'disttest' and 'distsign' methods now chdir() back to the
    directory where they started, rather than to the base_dir of the
    build.

  • Improved comparisons of version strings containing underscore
    characters (indicating "beta" status). [Steve Purkis]

  • Added documentation for the 'dist_author', 'dist_abstract', and
    'codebase' parameters to new(), and for the 'ppd' action. [Dave
    Rolsky]

  • Added documentation for the up_to_date() and contains_pod()
    methods. [Dave Rolsky]

  • 'traditional' pass-through Makefile.PLs will now contain an
    INSTALLDIRS parameter matching the Build.PL's 'installdirs'
    setting.

  • version_from_file() now ignores $VERSION variables that are defined
    in POD or comments. It can still be tricked by $VERSIONs in string
    literals, though. [Steve Purkis]

  • The code to find packages in module files now uses Steve's scanning
    method (above) to skip package-declaration-lookalikes in POD or
    comments.

  • The 'disttest' action will now propagate its @INC settings to its
    subprocesses.

Don't miss a new Module-Build release

NewReleases is sending notifications on new releases.