try and get more info from travis
[catagits/Catalyst-Runtime.git] / .travis.yml
index d6db868..e0580f5 100644 (file)
@@ -1,23 +1,29 @@
 language: perl
+sudo: false
 perl:
+   - "5.26"
+   - "5.24"
+   - "5.22"
+   - "5.20"
    - "5.18"
    - "5.16"
    - "5.14"
    - "5.12"
    - "5.10"
+   - "5.8"
 
 install:
-   # for testing
-   - cpanm --notest --metacpan --skip-satisfied YAML
+   - cpanm --notest --metacpan --skip-satisfied --with-develop --installdeps .
+   - perl Makefile.PL
 
-   # M::I deps
-   - 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 --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
+   # 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 .
-   - echo y | perl Makefile.PL
 
    # enable various test options, including parallel testing
    - export AUTOMATED_TESTING=1 HARNESS_OPTIONS=j10:c HARNESS_TIMER=1
@@ -30,3 +36,30 @@ install:
 
 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 --verbose --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