CPAN+changelog.pl ChangeLog
===========================
Date: 2007/10/08

Note: having revision names 0.x might have been more appropriate, but
      RCS started with 1.1 and I kept it that way.

# Revision 1.37  2007/10/08 09:25:11  mferd
# - use function &distparse (parse distribution file name) also for
#   "-history" and "-clone"
# - sub distparse: accept a "v" before version number
#   (e.g. D/DC/DCONWAY/Text-Balanced-v2.0.0.tar.gz)
#
# Revision 1.36  2007/06/05 10:54:44  mferd
# - somewhere around v1.90, CPAN switched to using temp dirs under
#   <cpan_home>/build/, with a few consequences:
#     * every time we called get() on a module, it would be extracted
#       into a new temp dir, even if we had called get() before
#       workaround: check if the dir() method returns a path, and
#                   skip calling get() if it does
#     * unless $CPAN::Config->{'build_dir_reuse'} was set (new config
#       option), each check with '-r' created a new unpacked temp dir
#       for every upgradeable module found
#       workaround: if called with '-r' or '-init', force build_dir_reuse
#                   to 1.
#                   No danger here, because all we want are the
#                   changelogs
# - suppress CPANs "CPAN: <module xy> loaded ok" message during
#   CPAN::HandleConfig() in cron job situations. Potential later
#   messages of the same type are already taken care of by
#   our conditional output redirection (-t STDIN)
#
# Revision 1.35  2007/04/11 14:02:48  mferd
#  (forgotten changelog entry for 1.34)
#  * for "-r", sort upgradeables-list according to release date
#    (approximated by mtime of the Changelog file)
#
# Revision 1.34  2007/04/11 13:53:39  mferd
#  * s/CPAN::expand/CPAN::Shell->expand/g
#    CPAN::expand methods not available anymore in CPAN 1.90
#
#  * Ignore list: try to ignore admin-configured list of distribution files.
#      works well for "-r"
#      does not help much with "-install", since we can't influence
#      automatic dependency resolution in CPAN.
#    switches: -addignore <module_or_distribution>
#              -delignore <module_or_distribution>
#              -showignore
#    useful e.g. to avoid broken libnet-1.20 for amavisd-new setups
#
#  * first attempt at "-clone"
#    produce a Bundle-file that generates the _exact_ same versions on another
#    Perl installation.
#    this shall (once really working) help with installing the exact same
#    module versions as you had in your tested setup
#
# Revision 1.33  2006/05/20 22:06:58  mferd
# (-r) corrected finding the build dir where to find a modules Changelog
#      (was broken e.g. for T/TK/TKISHEL/DBD-Multiplex-1.99-1.tar.gz)
#
# Revision 1.32  2006/04/01 18:20:49  mferd
# bug fix: create BuildLog-dir when needed (wrong condition)
#
# Revision 1.31  2006/03/30 14:07:07  mferd
# bug fix: '-shell' did not create BuildLog-dir if necessary
# bug fix: move loading of CPAN config after argument handling,
#          '-version' might otherwise not show version, but
#          start CPAN configuration dialog instead :-)
#
# Revision 1.30  2006/03/28 13:23:05  mferd
# add -shell (combine BuildLog, auto-autobundle and interactive features! :-)
# set $env{"COLUMNS"} and $env{"LINES"} for -shell and for -install,
#   otherwise Term::Readline fails to determine screen size
#   (output is not a tty, since we are redirected)
#
# Revision 1.29  2006/03/05 00:25:10  mferd
# incorporate disclaimer into output of -license
#
# Revision 1.28  2006/03/03 14:49:28  mferd
# beautify Usage message
#
# Revision 1.27  2006/03/03 14:34:51  mferd
# corrected RCS revision tag for -version
#
# Revision 1.26  2006/03/03 14:33:59  mferd
# added -license and -version options
#
# Revision 1.25  2006/03/02 16:38:09  mferd
# catch CPAN breaking in case of bad package checksum
# unknown cmd line args not beginning with "-" now also treated as error
#
# Revision 1.24  2006/02/02 13:25:13  mferd
# BuildLog file name erroneously truncated for -history
# workaround for zgrep anomaly on SuSE8.2 (additional '(standard input):' after filename)
#
# Revision 1.23  2006/01/23 17:09:55  mferd
# add ChangeLog.svn to @CHANGELOGNAMES
# support multiple changelog files per distribution
#
# Revision 1.22  2006/01/23 16:13:46  mferd
# give warnings when CPAN/CPANPLUS modules have changed, they might
#    require interactive reconfiguration
#
# Revision 1.21  2006/01/20 14:35:28  mferd
# support -force with -install
# abort if more than one mode of operation is given (-r/-init/-history/-install)
#
# Revision 1.20  2006/01/12 19:35:20  mferd
# prefix some warnings with '# '
# 'use CPAN::Config;' not sufficient, use CPAN::Config->load or CPAN::HandleConfig->load
#
# Revision 1.19  2006/01/11 17:35:23  mferd
# prefix ChangeLog-update message with "# "
#
# Revision 1.18  2006/01/10 17:35:27  mferd
# Prefix own output with "# " (except for "-history")
# "-history": shorten output using relative pathnames,
#                show $CPANHOME only once
#             abandon assigning BuildLogs to Snaphots, treat
#                 any of them as a separate entity
#             show modules that disappeared from one Snapshot to another
#                 as "!!!MISSING!!!"
#             support "all" Wildcard
#             remove -printf from call to find, not supported on NetBSD
# add EDRI support teaser
#
# Revision 1.17  2006/01/10 00:59:32  adminmf
# "-history": show "-install" argument from BuildLog
#             rearrange BuildLog output
#
# Revision 1.16  2006/01/10 00:02:02  mferd
# "-history": do not create ChangeLogs-Dir if missing
#
# Revision 1.15  2006/01/09 23:47:46  adminmf
# "-history": find distribution files even when maintainer has changed
#             improve readability when multiple modules are given
#
# Revision 1.14  2006/01/09 01:35:14  mferd
# suppress CPAN output while retrieving ChangLogs for "-r"
# show "-r" summary before _and_ after ChangeLog changes
#
# Revision 1.13  2005/12/24 00:56:10  mferd
# fixed changelog retrieval for distfile installs
# fixed -history to also show relevant BuildLogs where no Snapshot was created
# fixed -init to actually check every installed module
# added long comment about difficulty to find the distfile that produced current module version
# some general beautifying
#
# Revision 1.12  2005/12/20 01:46:05  mferd
# allow installation of Bundles and Distributions as well
# installing Distributions allows downgrading of modules, btw
#
# Revision 1.11  2005/12/19 18:32:05  mferd
# added history function
#
# Revision 1.10  2005/12/12 17:59:21  mferd
# show changelog changes for packages that had no changelog previously
# show changelog changes also in install mode so they are included in
#   buildlogs
# restrict changelog display to 300 lines
#
# Revision 1.8  2005/12/07 15:15:32  mferd
# SKIPPED_MODULES flag was missing for base distribution modules
#
# Revision 1.7  2005/12/06 20:30:59  mferd
# mode -r: start report with module overview
#
# Revision 1.6  2005/12/06 16:08:37  mferd
# show summary line with upgradeable modules at the top
# show diff against last autobundle()-generated Snapshot
# show warning for modules with unchanged version numbers after install
#
# Revision 1.5  2005/12/03 22:00:29  mferd
# mferd: add BuildLog funcionality for "-install" option
#
# Revision 1.4  2005/11/17 14:08:51  mferd
# mferd: extended handling of bogus htmlop from w3mir-1.0.10
#
# Revision 1.3  2005/11/16 19:37:20  mferd
# corrected multiple modules as arg to -install
#
# Revision 1.2  2005/11/16 17:52:34  mferd
# renamed program name and mode names;
# added 'install' mode
#
# Revision 1.1  2005/11/16 14:24:27  mferd
# Initial revision
