https://github.com/astropy/astropy
Raw File
Tip revision: 7c6752495d1320efc7b1994e15cbcccd6e6d0b16 authored by Brigitta Sipocz on 29 May 2017, 20:35:20 UTC
Preparing release v1.3.3
Tip revision: 7c67524
.travis.yml
# We set the language to c because python isn't supported on the MacOS X nodes
# on Travis. However, the language ends up being irrelevant anyway, since we
# install Python ourselves using conda.
language: c

os:
    - linux

# Setting sudo to false opts in to Travis-CI container-based builds.
sudo: false

# The apt packages below are needed for sphinx builds, which can no longer
# be installed with sudo apt-get.
addons:
    apt:
        packages:
            - graphviz
            - texlive-latex-extra
            - dvipng
            - language-pack-de
env:
    global:
        # Set defaults to avoid repeating in most cases
        - PYTHON_VERSION=3.6
        - NUMPY_VERSION=stable
        - MAIN_CMD='python setup.py'
        - CONDA_DEPENDENCIES='Cython jinja2'
        - CONDA_ALL_DEPENDENCIES='Cython jinja2 scipy h5py matplotlib pyyaml scikit-image pandas pytz beautifulsoup4 ipython mpmath'
        - PIP_DEPENDENCIES=''
        - SETUP_XVFB=True
        - EVENT_TYPE='push pull_request'

    matrix:
        - PYTHON_VERSION=2.7 SETUP_CMD='egg_info'
        - PYTHON_VERSION=3.3 SETUP_CMD='egg_info'
        - PYTHON_VERSION=3.4 SETUP_CMD='egg_info'
        - PYTHON_VERSION=3.5 SETUP_CMD='egg_info'
        - PYTHON_VERSION=3.6 SETUP_CMD='egg_info'

matrix:

    # Don't wait for allowed failures
    fast_finish: true

    include:

        # Try MacOS X
        - os: osx
          env: SETUP_CMD='test --remote-data=astropy'
               CONDA_DEPENDENCIES=$CONDA_ALL_DEPENDENCIES
               PIP_DEPENDENCIES='jplephem'

        # Check for sphinx doc build warnings - we do this first because it
        # runs for a long time. The sphinx build also has some additional
        # dependencies.
        - os: linux
          env: SETUP_CMD='build_docs -w'
               CONDA_DEPENDENCIES=$CONDA_ALL_DEPENDENCIES
               PIP_DEPENDENCIES='sphinx-gallery>=0.1.9 pillow --no-deps jplephem'

        # Try all python versions and Numpy versions. Since we can assume that
        # the Numpy developers have taken care of testing Numpy with different
        # versions of Python, we can vary Python and Numpy versions at the same
        # time. Since we test the latest Numpy as part of the builds with all
        # optional dependencies below, we can focus on older builds here.
        # Numpy 1.10 is tested below in the image tests.

        - os: linux
          env: PYTHON_VERSION=2.7 NUMPY_VERSION=1.7
               SETUP_CMD='test --open-files'
        - os: linux
          env: PYTHON_VERSION=3.3 NUMPY_VERSION=1.8
               SETUP_CMD='test --open-files'
        - os: linux
          env: PYTHON_VERSION=3.4 NUMPY_VERSION=1.9
               SETUP_CMD='test --open-files'
        - os: linux
          env: PYTHON_VERSION=3.5 NUMPY_VERSION=1.11
               SETUP_CMD='test --open-files'

        # Now try with all optional dependencies the latest 3.x and on 2.7.
        # (with latest numpy). We also test the two latest matplotlib versions
        # for the image tests, and with the system rather than build-in pytest.
        - os: linux
          env: PYTHON_VERSION=2.7 SETUP_CMD='test --remote-data=astropy -a "--mpl"'
               CONDA_DEPENDENCIES=$CONDA_ALL_DEPENDENCIES
               PIP_DEPENDENCIES='jplephem mock pytest-mpl'
               LC_CTYPE=C.ascii LC_ALL=C
               NUMPY_VERSION=1.10
               MATPLOTLIB_VERSION=1.5
               ASTROPY_USE_SYSTEM_PYTEST=1
               EVENT_TYPE='push pull_request cron'

        - os: linux
          env: SETUP_CMD='test --coverage --remote-data=astropy -a "--mpl"'
               CONDA_DEPENDENCIES=$CONDA_ALL_DEPENDENCIES
               PIP_DEPENDENCIES='cpp-coveralls objgraph jplephem pytest-mpl'
               LC_CTYPE=C.ascii LC_ALL=C
               CFLAGS='-ftest-coverage -fprofile-arcs -fno-inline-functions -O0'
               MATPLOTLIB_VERSION=2.0
               ASTROPY_USE_SYSTEM_PYTEST=1
               EVENT_TYPE='push pull_request cron'

        # Try pre-release version of Numpy without optional dependencies
        - os: linux
          env: NUMPY_VERSION=prerelease SETUP_CMD='test'
               EVENT_TYPE='push pull_request cron'

        # Do a PEP8/pyflakes test with flake8
        - os: linux
          env: MAIN_CMD='flake8 astropy --count' SETUP_CMD=''

        # Try developer version of Numpy with optional dependencies and also
        # run all remote tests. Since both cases will be potentially unstable, we
        # combine them into a single unstable build that we can mark as an
        # allowed failure below.
        - os: linux
          env: NUMPY_VERSION=dev SETUP_CMD='test --remote-data'
               CONDA_DEPENDENCIES=$CONDA_ALL_DEPENDENCIES
               EVENT_TYPE='push pull_request cron'

    allow_failures:
      - env: NUMPY_VERSION=dev SETUP_CMD='test --remote-data'
             CONDA_DEPENDENCIES=$CONDA_ALL_DEPENDENCIES
             EVENT_TYPE='push pull_request cron'

install:
    - git clone git://github.com/astropy/ci-helpers.git
    - source ci-helpers/travis/setup_conda_$TRAVIS_OS_NAME.sh

script:
    - $MAIN_CMD $SETUP_CMD

after_success:
    - if [[ $SETUP_CMD == *--coverage* ]]; then
        cpp-coveralls -E ".*convolution.*" -E ".*_erfa.*" -E ".*\.l" -E ".*\.y" -E ".*flexed.*" -E ".*cextern.*" -E ".*_np_utils.*" -E ".*cparser.*" -E ".*cython_impl.*" --dump c-coveralls.json;
        coveralls --merge=c-coveralls.json --rcfile='astropy/tests/coveragerc';
      fi
back to top