CPAN-Reporter-Smoker

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

         match:
             distribution: "/Win32"
         disabled: 1
         ---
         comment: "Skip distributions by Andy Lester"
         match:
             distribution: "^PETDANCE"
         disabled: 1

    Please note that disabling distributions like this will also disable
    them for normal, non-smoke usage of CPAN.pm.

    One distribution that I would recommend either installing up front or
    else disabling with distroprefs is mod_perl, as it is a common
    requirement for many Apache:: modules but does not (easily) build and
    test under automation.

         ---
         comment: "Don't build mod_perl if required by some other module"
         match:
             distribution: "/mod_perl-\d"
         disabled: 1

    Distroprefs are more powerful than this -- they can be used to automate
    responses to prompts in distributions, set environment variables,
    specify additional dependencies and so on. Read the docs for CPAN.pm for
    more and look in the "distroprefs" directory in the CPAN distribution
    tarball for examples.

  Using a local CPAN::Mini mirror
    Because distributions must be retrieved from a CPAN mirror, the smoker
    may cause heavy network load and will repetitively download common build
    prerequisites.

    An alternative is to use CPAN::Mini to create a local CPAN mirror and to
    point CPAN's "urllist" to the local mirror.

         $ cpan
         cpan> o conf urllist unshift file:///path/to/minicpan
         cpan> o conf commit

    However, CPAN::Reporter::Smoker needs the "find-ls.gz" file, which
    CPAN::Mini does not mirror by default. Add it to a .minicpanrc file in
    your home directory to include it in your local CPAN mirror.

         also_mirror: indices/find-ls.gz

    Note that CPAN::Mini does not mirror developer versions. Therefore, a
    live, network CPAN Mirror will be needed in the urllist to retrieve
    these.

    Note that CPAN requires the LWP module to be installed to use a local
    CPAN mirror.

    Alternatively, you might experiment with the alpha-quality release of
    CPAN::Mini::Devel, which subclasses CPAN::Mini to retrieve developer
    distributions (and find-ls.gz) using the same logic as
    CPAN::Reporter::Smoker.

  Timing out hanging tests
    CPAN::Reporter (since 1.08) supports a 'command_timeout' configuration
    option. Set this option in the CPAN::Reporter configuration file to time
    out tests that hang up or get stuck at a prompt. Set it to a high-value
    to avoid timing out a lengthy tests that are still running -- 1000 or
    more seconds is probably enough.

    Warning -- on Win32, terminating processes via the command_timeout is
    equivalent to SIGKILL and could cause system instability or later
    deadlocks

    This option is still considered experimental.

  Avoiding repetitive prerequisite testing
    Because CPAN::Reporter::Smoker satisfies all requirements from scratch,
    common dependencies (e.g. Class::Accessor) will be unpacked, built and
    tested repeatedly.

    As of version 1.92_56, CPAN supports the "trust_test_report_history"
    config option. When set, CPAN will check the last test report for a
    distribution. If one is found, the results of that test are used instead
    of running tests again.

         $ cpan
         cpan> o conf init trust_test_report_history
         cpan> o conf commit

  Avoiding repetitive prerequisite builds (EXPERIMENTAL)
    CPAN has a "build_dir_reuse" config option. When set (and if a YAML
    module is installed and configured), CPAN will attempt to make build
    directories persistent. This has the potential to save substantial time
    and space during smoke testing. CPAN::Reporter::Smoker will recognize if
    this option is set and make adjustments to the test process to keep
    PERL5LIB from growing uncontrollably as the number of persistent
    directories increases.

    NOTE: Support for "build_dir_reuse" is highly experimental. Wait for at
    least CPAN version 1.92_62 before trying this option.

         $ cpan
         cpan> o conf init build_dir_reuse
         cpan> o conf commit

  Stopping early if a prerequisite fails
    Normally, CPAN.pm continues testing a distribution even if a
    prerequisite fails to build or fails testing. Some distributions may
    pass their tests even without a listed prerequisite, but most just fail
    (and CPAN::Reporter discards failures if prerequisites are not met).

    As of version 1.92_57, CPAN supports the "halt_on_failure" config
    option. When set, a prerequisite failure stops further processing.

         $ cpan
         cpan> o conf init halt_on_failure
         cpan> o conf commit

    However, a disadvantage of halting early is that no DISCARD grade is
    recorded in the history. The next time CPAN::Reporter::Smoker runs, the
    distribution will be tested again from scratch. It may be better to let
    all prerequisites finish so the distribution can fail its test and be
    flagged with DISCARD so it will be skipped in the future.

  CPAN cache bloat
    CPAN will use a lot of scratch space to download, build and test
    modules. Use CPAN's built-in cache management configuration to let it
    purge the cache periodically if you don't want to do this manually. When
    configured, the cache will be purged on start and after a certain number
    of distributions have been tested as determined by the



( run in 1.992 second using v1.01-cache-2.11-cpan-9789f410c06 )