11name : ipykernel tests
22
3- on : [push, pull_request]
3+ on :
4+ push :
5+ branches : " master"
6+ pull_request :
7+ branches : " *"
48
59jobs :
610 build :
913 fail-fast : false
1014 matrix :
1115 os : [ubuntu, macos, windows]
12- python-version : [ '3.7', '3.8', '3.9' ]
16+ python-version : [ '3.7', '3.8', '3.9', '3.10', 'pypy-3.7' ]
1317 exclude :
1418 - os : windows
15- python-version : pypy3
19+ python-version : pypy-3.7
1620 steps :
1721 - name : Checkout
18- uses : actions/checkout@v1
19- - name : Install Python ${{ matrix.python-version }}
20- uses : actions/setup-python@v1
21- with :
22- python-version : ${{ matrix.python-version }}
23- architecture : ' x64'
24- - name : Upgrade packaging dependencies
25- run : |
26- pip install --upgrade pip setuptools wheel --user
27- - name : Get pip cache dir
28- id : pip-cache
29- run : |
30- echo "::set-output name=dir::$(pip cache dir)"
31- - name : Cache pip
32- uses : actions/cache@v1
33- with :
34- path : ${{ steps.pip-cache.outputs.dir }}
35- key : ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('setup.py') }}
36- restore-keys : |
37- ${{ runner.os }}-pip-${{ matrix.python-version }}-
38- ${{ runner.os }}-pip-
22+ uses : actions/checkout@v2
23+
24+ - name : Base Setup
25+ uses : jupyterlab/maintainer-tools/.github/actions/base-setup@v1
26+
3927 - name : Install the Python dependencies
4028 run : |
4129 pip install --pre --upgrade --upgrade-strategy=eager .[test] codecov
30+
4231 - name : Install matplotlib
4332 if : ${{ matrix.os != 'macos' && matrix.python-version != 'pypy3' }}
4433 run : |
45- pip install matplotlib || echo 'failed to install matplolib'
34+ pip install matplotlib || echo 'failed to install matplotlib'
35+
4636 - name : Install alternate event loops
4737 if : ${{ matrix.os != 'windows' }}
4838 run : |
4939 pip install curio || echo 'ignoring curio install failure'
5040 pip install trio || echo 'ignoring trio install failure'
41+
5142 - name : List installed packages
5243 run : |
5344 pip freeze
5445 pip check
46+
5547 - name : Run the tests
5648 timeout-minutes : 10
49+ if : ${{ !startsWith( matrix.python-version, 'pypy' ) }}
5750 run : |
5851 pytest ipykernel -vv -s --cov ipykernel --cov-branch --cov-report term-missing:skip-covered --durations 10
52+
53+ - name : Run the tests on pypy
54+ timeout-minutes : 15
55+ if : ${{ startsWith( matrix.python-version, 'pypy' ) }}
56+ run : |
57+ pytest -vv ipykernel
58+
5959 - name : Build the docs
6060 if : ${{ matrix.os == 'ubuntu' && matrix.python-version == '3.9'}}
6161 run : |
6262 cd docs
6363 pip install -r requirements.txt
6464 make html
65- - name : Build and check the dist files
66- run : |
67- pip install build twine
68- python -m build .
69- twine check dist/*
65+
7066 - name : Coverage
7167 run : |
7268 codecov
69+
7370 check_docstrings :
7471 runs-on : ${{ matrix.os }}-latest
7572 strategy :
@@ -82,34 +79,20 @@ jobs:
8279 python-version : pypy3
8380 steps :
8481 - name : Checkout
85- uses : actions/checkout@v1
86- - name : Install Python ${{ matrix.python-version }}
87- uses : actions/setup-python@v1
88- with :
89- python-version : ${{ matrix.python-version }}
90- architecture : ' x64'
91- - name : Upgrade packaging dependencies
92- run : |
93- pip install --upgrade pip setuptools wheel --user
94- - name : Get pip cache dir
95- id : pip-cache
96- run : |
97- echo "::set-output name=dir::$(pip cache dir)"
98- - name : Cache pip
99- uses : actions/cache@v1
100- with :
101- path : ${{ steps.pip-cache.outputs.dir }}
102- key : ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('setup.py') }}
103- restore-keys : |
104- ${{ runner.os }}-pip-${{ matrix.python-version }}-
105- ${{ runner.os }}-pip-
82+ uses : actions/checkout@v2
83+
84+ - name : Base Setup
85+ uses : jupyterlab/maintainer-tools/.github/actions/base-setup@v1
86+
10687 - name : Install the Python dependencies
10788 run : |
10889 pip install --pre --upgrade --upgrade-strategy=eager .
10990 pip install velin
91+
11092 - name : Check Docstrings
11193 run : |
11294 velin . --check --compact
95+
11396 test_without_debugpy :
11497 runs-on : ${{ matrix.os }}-latest
11598 strategy :
@@ -119,34 +102,20 @@ jobs:
119102 python-version : [ '3.9' ]
120103 steps :
121104 - name : Checkout
122- uses : actions/checkout@v1
123- - name : Install Python ${{ matrix.python-version }}
124- uses : actions/setup-python@v1
125- with :
126- python-version : ${{ matrix.python-version }}
127- architecture : ' x64'
128- - name : Upgrade packaging dependencies
129- run : |
130- pip install --upgrade pip setuptools wheel --user
131- - name : Get pip cache dir
132- id : pip-cache
133- run : |
134- echo "::set-output name=dir::$(pip cache dir)"
135- - name : Cache pip
136- uses : actions/cache@v1
137- with :
138- path : ${{ steps.pip-cache.outputs.dir }}
139- key : ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('setup.py') }}
140- restore-keys : |
141- ${{ runner.os }}-pip-${{ matrix.python-version }}-
142- ${{ runner.os }}-pip-
105+ uses : actions/checkout@v2
106+
107+ - name : Base Setup
108+ uses : jupyterlab/maintainer-tools/.github/actions/base-setup@v1
109+
143110 - name : Install the Python dependencies without debugpy
144111 run : |
145112 pip install --pre --upgrade --upgrade-strategy=eager .[test]
146113 pip uninstall --yes debugpy
114+
147115 - name : List installed packages
148116 run : |
149117 pip freeze
118+
150119 - name : Run the tests
151120 timeout-minutes : 10
152121 run : |
0 commit comments