Trouble with Python build matrix being respected by jobs

include: jobs exist independently from the build matrix and are added on top of it.

So you get two jobs from the python: axis in the default test stage, accompanied with all the jobs you specified in include:, without a python: setting.

AFAICS from https://docs.travis-ci.com/user/build-stages/#how-to-define-build-stages , stages are not considered an axis so you cannot add jobs to more than one stage using the matrix.

As such, the way to go seems to be to either

  • specify all the jobs manually, using YAML aliases to reduce duplication, or
  • only manually duplicate jobs as above in stages with fewer jobs and specify python: for them manually.