language: perl
+sudo: false
perl:
+ - "5.24"
+ - "5.22"
+ - "5.20"
- "5.18"
- "5.16"
- "5.14"
- "5.12"
- "5.10"
+ - "5.8"
install:
- # git bits sometimes needed...
- - git config user.name 'Travis-CI'
- - git config user.email 'travis@nowhere.dne'
-
- # ensure we have the latest cpanm
- - echo y | perlbrew install-cpanm
-
- # see if we can't speed things up a bit
- - rm -rf ~/.cpanm
- - mkdir ~/.cpanm
- - sudo mount tmpfs -t tmpfs ~/.cpanm
-
- # these fail on parallel test runs
- # Net::Server: https://rt.cpan.org/Ticket/Display.html?id=84126
- - cpanm --metacpan --skip-satisfied Net::Server Template File::Remove Filesys::Notify::Simple Config::Any CGI::Simple Plack
-
# for testing
- - cpanm --metacpan --skip-satisfied YAML
-
- # enable various test options, including parallel testing
- - export AUTOMATED_TESTING=1 HARNESS_OPTIONS=j10:c HARNESS_TIMER=1
+ - cpanm --notest --metacpan --skip-satisfied YAML
# M::I deps
- - cpanm --metacpan --skip-satisfied Module::Install Module::Install::AuthorRequires Module::Install::CheckConflicts Module::Install::AuthorTests Module::Install::Authority
+ - cpanm --notest --metacpan --skip-satisfied Module::Install Module::Install::AuthorRequires Module::Install::CheckConflicts Module::Install::AuthorTests Module::Install::Authority
# author deps -- wish there was a better way
- - cpanm --metacpan --skip-satisfied CatalystX::LeakChecker Catalyst::Devel Catalyst::Engine::PSGI Starman MooseX::Daemonize Test::WWW::Mechanize::Catalyst Catalyst::Plugin::Params::Nested
- - cpanm --metacpan --skip-satisfied Test::Without::Module Test::NoTabs Test::Pod Test::Pod::Coverage Test::Spelling Pod::Coverage::TrustPod
- - cpanm --metacpan --skip-satisfied --installdeps .
+ - cpanm --notest --metacpan --skip-satisfied CatalystX::LeakChecker Catalyst::Devel Catalyst::Engine::PSGI Starman MooseX::Daemonize Test::WWW::Mechanize::Catalyst Catalyst::Plugin::Params::Nested
+ - cpanm --notest --metacpan --skip-satisfied Test::Without::Module Test::NoTabs Test::Pod Test::Pod::Coverage Test::Spelling Pod::Coverage::TrustPod Type::Tiny
+ - cpanm --notest --metacpan --skip-satisfied --installdeps .
- echo y | perl Makefile.PL
+ # installing Catalyst::Devel above causes the latest release of
+ # Catalyst::Runtime to be installed, but the version we're testing might
+ # have additional deps that aren't yet satisfied. so we should try
+ # installing deps again now that the MYMETA has been created (and we'll also
+ # need to delete the now-unneeded cpanfile so that cpanm doesn't choose it
+ # in preference to the MYMETA)
+ - rm -f cpanfile
+ - cpanm --notest --metacpan --skip-satisfied --installdeps .
+
+ # enable various test options, including parallel testing
+ - export AUTOMATED_TESTING=1 HARNESS_OPTIONS=j10:c HARNESS_TIMER=1
+
# we want these for our tests, but not for any others
- export AUTHOR_TESTING=1
- export RELEASE_TESTING=1
script:
- make disttest
+
+ # Test reverse deps (high-profile modules, taken from from Task::Catalyst):
+ # (note: currently skipping DBIC deps for speed)
+ - make install
+
+ # pure author deps (of reverse deps):
+ - cpanm --notest --metacpan --skip-satisfied YAML::Syck
+
+ # both author deps & reverse deps:
+ - cpanm --metacpan --skip-satisfied Catalyst::View::TT
+ - cpanm --metacpan --skip-satisfied Catalyst::Plugin::Authentication
+
+ # pure reverse deps (call with --test-only):
+ - cpanm --test-only --metacpan Catalyst::Devel
+ - cpanm --test-only --metacpan Catalyst::Action::REST
+ - cpanm --test-only --metacpan Catalyst::Component::InstancePerContext
+ - cpanm --test-only --metacpan Catalyst::Plugin::Session
+ - cpanm --test-only --metacpan Catalyst::Plugin::Session::State::Cookie
+ - cpanm --test-only --verbose --metacpan Catalyst::Plugin::Static::Simple
+ - cpanm --test-only --metacpan Catalyst::Plugin::ConfigLoader
+ - cpanm --test-only --metacpan Catalyst::Plugin::ConfigLoader
+ - cpanm --test-only --metacpan Catalyst::Authentication::Credential::HTTP
+
+ # Still need to figure out why these fail in travis:
+ #- cpanm --test-only --metacpan -v Catalyst::View::Email
+ #- cpanm --test-only --metacpan -v Catalyst::Plugin::Session::Store::File
+ #- cpanm --test-only --metacpan -v Catalyst::Plugin::I18N