forked from ipython/ipython
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
118 lines (106 loc) · 3.06 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# http://travis-ci.org/#!/ipython/ipython
language: python
os: linux
addons:
apt:
packages:
- graphviz
python:
- 3.6
sudo: false
env:
global:
- PATH=$TRAVIS_BUILD_DIR/pandoc:$PATH
group: edge
before_install:
- |
# install Python on macOS
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
env | sort
if ! which python$TRAVIS_PYTHON_VERSION; then
HOMEBREW_NO_AUTO_UPDATE=1 brew tap minrk/homebrew-python-frameworks
HOMEBREW_NO_AUTO_UPDATE=1 brew cask install python-framework-${TRAVIS_PYTHON_VERSION/./}
fi
python3 -m pip install virtualenv
python3 -m virtualenv -p $(which python$TRAVIS_PYTHON_VERSION) ~/travis-env
source ~/travis-env/bin/activate
fi
- python --version
install:
- pip install pip --upgrade
- pip install setuptools --upgrade
- pip install -e file://$PWD#egg=ipython[test] --upgrade
- pip install trio curio --upgrade --upgrade-strategy eager
- pip install pytest 'matplotlib !=3.2.0'
- pip install codecov check-manifest --upgrade
script:
- check-manifest
- |
if [[ "$TRAVIS_PYTHON_VERSION" == "nightly" ]]; then
# on nightly fake parso known the grammar
cp /home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/parso/python/grammar37.txt /home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/parso/python/grammar38.txt
fi
- cd /tmp && iptest --coverage xml && cd -
- pytest IPython
# On the latest Python (on Linux) only, make sure that the docs build.
- |
if [[ "$TRAVIS_PYTHON_VERSION" == "3.7" ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
pip install -r docs/requirements.txt
python tools/fixup_whats_new_pr.py
make -C docs/ html SPHINXOPTS="-W"
fi
after_success:
- cp /tmp/ipy_coverage.xml ./
- cp /tmp/.coverage ./
- codecov
matrix:
include:
- arch: amd64
python: "3.7"
dist: xenial
sudo: true
- arch: arm64
python: "3.7"
dist: xenial
env: ARM64=True IPYTHON_TESTING_TIMEOUT_SCALE=2
sudo: true
- arch: amd64
python: "3.8"
dist: xenial
sudo: true
- arch: amd64
python: "nightly"
dist: xenial
sudo: true
- arch: arm64
python: "nightly"
dist: bionic
env: ARM64=True
sudo: true
- os: osx
language: generic
python: 3.6
env: TRAVIS_PYTHON_VERSION=3.6
- os: osx
language: generic
python: 3.7
env: TRAVIS_PYTHON_VERSION=3.7
allow_failures:
- python: nightly
before_deploy:
- rm -rf dist/
- python setup.py sdist
- python setup.py bdist_wheel
deploy:
provider: releases
api_key:
secure: Y/Ae9tYs5aoBU8bDjN2YrwGG6tCbezj/h3Lcmtx8HQavSbBgXnhnZVRb2snOKD7auqnqjfT/7QMm4ZyKvaOEgyggGktKqEKYHC8KOZ7yp8I5/UMDtk6j9TnXpSqqBxPiud4MDV76SfRYEQiaDoG4tGGvSfPJ9KcNjKrNvSyyxns=
file: dist/*
file_glob: true
skip_cleanup: true
on:
repo: ipython/ipython
all_branches: true # Backports are released from e.g. 5.x branch
tags: true
python: 3.6 # Any version should work, but we only need one
condition: $TRAVIS_OS_NAME = "linux"