Travis: preliminary reverse dependency testing
Henry Van Styn [Sun, 10 Aug 2014 10:30:09 +0000 (06:30 -0400)]
The travis config will now run the test suites for some of the more
well-known reverse dependencies (i.e. for which Catalyst is a
dependency) after the main test suite is ran. This is meant to catch
potential breakage of these downstream packages for which Catalyst
should maintain proper support. These include standard plugins such as
Catalyst::Plugin::Authentication and Catalyst::Plugin::Static::Simple.
Modules in Task::Catalyst were used to compile this list, which is still
preliminary. We should add more as we go (however, we do need to be
selective to keep the travis run time below 50 mins at which point it
will timeout)

Note:

As of this commit and after the 5.90070 release, we already expect the
reverse deps for the following to fail:

 Catalyst-Plugin-Static-Simple-0.32
 Catalyst-Plugin-Session-0.39

Catalyst-Plugin-Authentication-0.10023 was also failing as of 5.90070,
but has already been fixed in 52af51596

.travis.yml

index b04ea0e..a239757 100644 (file)
@@ -32,3 +32,28 @@ 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 --metacpan Catalyst::Plugin::Static::Simple
+   - cpanm --test-only --metacpan Catalyst::Plugin::ConfigLoader
+
+   # 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