Skip to content

Commit e7651dd

Browse files
committed
Added arm64 jobs for Travis-CI
Signed-off-by: odidev <odidev@puresoftware.com>
1 parent 52761de commit e7651dd

File tree

3 files changed

+35
-2
lines changed

3 files changed

+35
-2
lines changed

.travis.yml

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,19 +70,39 @@ env:
7070
- NO_AT_BRIDGE=1 # Necessary for GTK3 interactive test.
7171
- OPENBLAS_NUM_THREADS=1
7272
- PYTHONFAULTHANDLER=1
73+
- XVFB=""
7374

7475
matrix:
7576
include:
7677
- python: 3.7
7778
env:
7879
- PINNEDVERS='-c requirements/testing/minver.txt'
7980
- DELETE_FONT_CACHE=1
81+
- python: 3.7
82+
arch: arm64
83+
env:
84+
- PINNEDVERS='-c requirements/testing/minver.txt'
85+
- DELETE_FONT_CACHE=1
86+
- PIP_NO_CACHE_DIR=off
87+
- XVFB=xvfb-run
8088
- python: 3.7
8189
env:
8290
- EXTRAREQS='-r requirements/testing/travis_extra.txt'
91+
- python: 3.7
92+
arch: arm64
93+
env:
94+
- EXTRAREQS='-r requirements/testing/travis_arm64_extra.txt'
95+
- PIP_NO_CACHE_DIR=off
96+
- XVFB=xvfb-run
8397
- python: 3.8
8498
env:
8599
- EXTRAREQS='-r requirements/testing/travis_extra.txt'
100+
- python: 3.8
101+
arch: arm64
102+
env:
103+
- EXTRAREQS='-r requirements/testing/travis_arm64_extra.txt'
104+
- PIP_NO_CACHE_DIR=off
105+
- XVFB=xvfb-run
86106
- python: "nightly"
87107
env:
88108
- PRE=--pre
@@ -121,6 +141,10 @@ install:
121141
git describe
122142
# Upgrade pip and setuptools and wheel to get as clean an install as possible.
123143
python -mpip install --upgrade pip setuptools wheel
144+
- |
145+
if [[ "${TRAVIS_CPU_ARCH}" == "arm64" ]]; then
146+
sudo apt-get install -y xvfb python3-tk imagemagick;
147+
fi
124148
- |
125149
# Install dependencies from PyPI.
126150
python -mpip install --upgrade $PRE -r requirements/testing/travis_all.txt $EXTRAREQS $PINNEDVERS
@@ -174,10 +198,10 @@ script:
174198
# Each script we want to run need to go in its own section and the program
175199
# you want to fail travis needs to be the last thing called.
176200
- |
177-
# The number of processes is hardcoded (-n2), because using too many
201+
# The number of processes is hardcoded (-n4), because using too many
178202
# causes the Travis VM to run out of memory (since so many copies of
179203
# inkscape and ghostscript are running at the same time).
180-
python -mpytest -raR --maxfail=50 --timeout=300 --durations=25 --cov-report= --cov=lib -n2 --log-level=DEBUG
204+
$XVFB python -mpytest -raR --maxfail=50 --timeout=300 --durations=25 --cov-report= --cov=lib -n4 --log-level=DEBUG
181205
182206
before_cache: |
183207
rm -rf $HOME/.cache/matplotlib/tex.cache

lib/matplotlib/tests/test_backends_interactive.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import sys
88
import time
99
import urllib.request
10+
import platform
1011

1112
import pytest
1213

@@ -154,6 +155,8 @@ def check_alt_backend(alt_backend):
154155
@pytest.mark.parametrize("toolbar", ["toolbar2", "toolmanager"])
155156
@pytest.mark.flaky(reruns=3)
156157
def test_interactive_backend(backend, toolbar):
158+
if platform.machine() == 'aarch64':
159+
pytest.skip("Skipping for aarch64 architecture")
157160
if backend == "macosx" and toolbar == "toolmanager":
158161
pytest.skip("toolmanager is not implemented for macosx.")
159162
proc = subprocess.run(
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Extra pip requirements of the travis python 3.7+ builds for Arm64 platform
2+
3+
ipykernel
4+
nbconvert[execute]
5+
nbformat!=5.0.0,!=5.0.1
6+
pytz

0 commit comments

Comments
 (0)