forked from scipy/scipy
-
Notifications
You must be signed in to change notification settings - Fork 5
100 lines (89 loc) · 3.57 KB
/
linux.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
name: Linux Tests
on:
push:
branches:
- main
- maintenance/**
pull_request:
branches:
- main
- maintenance/**
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
Python-38-dbg:
name: Python 3.8-dbg
if: "github.repository == 'scipy/scipy' || github.repository == ''"
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Configuring Test Environment
run: |
sudo apt-get update
sudo apt install python3.8-dbg python3.8-dev libatlas-base-dev liblapack-dev gfortran libgmp-dev libmpfr-dev ccache swig libmpc-dev
free -m
python3.8-dbg --version # just to check
export NPY_NUM_BUILD_JOBS=2
uname -a
df -h
ulimit -a
set -e -o pipefail
mkdir builds
cd builds
- name: Installing packages
run: |
python3.8-dbg -c 'import sys; print("Python debug build:", hasattr(sys, "gettotalrefcount"))'
python3.8-dbg -m pip install --upgrade pip "setuptools<60.0" wheel
python3.8-dbg -m pip install --upgrade numpy cython pytest pytest-xdist pytest-timeout pybind11
python3.8-dbg -m pip install --upgrade mpmath gmpy2 pythran threadpoolctl
python3.8-dbg -m pip uninstall -y nose
cd ..
- name: Building SciPy
run: python3.8-dbg -u runtests.py -g -j2 --build-only
- name: Testing SciPy
if: ${{ github.event_name == 'pull_request' }}
run: |
python3.8-dbg -u runtests.py -n -g -j2 -m fast -- -rfEX --durations=10 --timeout=60 2>&1 | tee runtests.log
python3.8-dbg tools/validate_runtests_log.py fast < runtests.log
- name: Dynamic symbol hiding check on Linux
if: ${{ github.event_name == 'pull_request' }}
run: ./tools/check_pyext_symbol_hiding.sh build
test_numpy_main:
name: NumPy main ${{ matrix.python-version }}
if: "github.repository == 'scipy/scipy' && !contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]') && !contains(github.event.head_commit.message, '[skip github]') && !contains(github.ref, 'maintenance/') && !contains(github.base_ref, 'maintenance/')"
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.11-dev"]
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
architecture: x64
cache: 'pip'
cache-dependency-path: 'environment.yml'
- name: Install other build dependencies
run: |
sudo apt-get install libopenblas-dev gfortran libgmp-dev libmpfr-dev ccache libmpc-dev
- name: Install packages
run: |
python -m pip install git+https://github.com/numpy/numpy.git
python -m pip install ninja cython pytest pybind11 pytest-xdist pytest-timeout click rich-click doit pydevtool
python -m pip install git+https://github.com/serge-sans-paille/pythran.git
python -m pip install git+https://github.com/mesonbuild/meson.git
python -m pip install -r mypy_requirements.txt
# Packages that are only needed for their annotations
python -m pip install types-psutil pybind11 sphinx
- name: Mypy
run: |
python -u dev.py mypy
- name: Test SciPy
run: |
python -u dev.py -n test -- --durations=10 --timeout=60