@@ -6,7 +6,15 @@ name: Python package
6
6
on :
7
7
push :
8
8
pull_request :
9
- branches : ["master"]
9
+ schedule :
10
+ - cron : " 0 8 * * *"
11
+
12
+ concurrency :
13
+ group : >-
14
+ ${{ github.workflow }}-
15
+ ${{ github.ref_type }}-
16
+ ${{ github.event.pull_request.number || github.sha }}
17
+ cancel-in-progress : true
10
18
11
19
jobs :
12
20
build :
@@ -15,42 +23,76 @@ jobs:
15
23
fail-fast : false
16
24
matrix :
17
25
os : [ubuntu-latest, windows-latest, macos-latest]
18
- python-version : [3.7, 3.8, 3.9, "3.10", pypy-3.7]
19
- exclude :
20
- # pywin32 not available
26
+ python-version : ["3.7", "3.10"]
27
+ include :
21
28
- os : windows-latest
22
- python-version : " 3.10"
29
+ python-version : " 3.9"
30
+ - os : ubuntu-latest
31
+ python-version : " pypy-3.8"
32
+ - os : macos-latest
33
+ python-version : " 3.8"
23
34
steps :
24
35
- uses : actions/checkout@v2
25
- - name : Set up Python ${{ matrix.python-version }}
26
- uses : actions/setup-python@v2
27
- with :
28
- python-version : ${{ matrix.python-version }}
29
- - name : Get pip cache dir
30
- id : pip-cache
31
- run : |
32
- echo "::set-output name=dir::$(pip cache dir)"
33
- - name : pip cache
34
- uses : actions/cache@v2
35
- with :
36
- path : ${{ steps.pip-cache.outputs.dir }}
37
- key : |
38
- ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('dev-requirements.txt', 'setup.cfg') }}
39
- restore-keys : |
40
- ${{ runner.os }}-pip-${{ matrix.python-version }}-
41
- ${{ runner.os }}-pip-
36
+ - with : jupyterlab/maintainer-tools/.github/actions/base-action@v1
42
37
- name : Install dependencies
43
38
run : |
44
- python -m pip install --upgrade pip
45
- pip install --upgrade setuptools wheel
46
39
pip install -r dev-requirements.txt .
47
40
- name : Test with pytest
48
41
run : |
49
- pytest -vv jupyter_core --timeout 60 --cov jupyter_core --cov-report term-missing:skip-covered
50
- - name : Check manifest
42
+ python -m pytest -vv jupyter_core --timeout 60 --cov jupyter_core --cov-report term-missing:skip-covered
43
+
44
+ test_miniumum_versions :
45
+ name : Test Minimum Versions
46
+ runs-on : ubuntu-latest
47
+ timeout-minutes : 10
48
+ steps :
49
+ - uses : actions/checkout@v2
50
+ - name : Base Setup
51
+ uses : jupyterlab/maintainer-tools/.github/actions/base-setup@v1
52
+ with :
53
+ python_version : " 3.7"
54
+ - name : Install miniumum versions
55
+ uses : jupyterlab/maintainer-tools/.github/actions/install-minimums@v1
56
+ - name : Run the unit tests
57
+ run : pytest -vv -W default traitlets || pytest -vv -W default traitlets --lf
58
+
59
+ test_prereleases :
60
+ name : Test Prereleases
61
+ timeout-minutes : 10
62
+ runs-on : ubuntu-latest
63
+ steps :
64
+ - name : Checkout
65
+ uses : actions/checkout@v2
66
+ - name : Base Setup
67
+ uses : jupyterlab/maintainer-tools/.github/actions/base-setup@v1
68
+ - name : Install the Python dependencies
69
+ run : |
70
+ pip install --upgrade --upgrade-strategy eager --pre -e ".[test]"
71
+ - name : List installed packages
72
+ run : |
73
+ pip freeze
74
+ pip check
75
+ - name : Run the tests
51
76
run : |
52
- pip install check-manifest
53
- check-manifest -v
77
+ pytest -vv traitlets || pytest -vv traitlets --lf
78
+
79
+ make_sdist :
80
+ name : Make SDist
81
+ runs-on : ubuntu-latest
82
+ timeout-minutes : 10
83
+ steps :
84
+ - uses : actions/checkout@v2
85
+ - uses : jupyterlab/maintainer-tools/.github/actions/base-setup@v1
86
+ - uses : jupyterlab/maintainer-tools/.github/actions/make-sdist@v1
87
+
88
+ test_sdist :
89
+ runs-on : ubuntu-latest
90
+ needs : [make_sdist]
91
+ name : Install from SDist and Test
92
+ timeout-minutes : 20
93
+ steps :
94
+ - uses : jupyterlab/maintainer-tools/.github/actions/base-setup@v1
95
+ - uses : jupyterlab/maintainer-tools/.github/actions/test-sdist@v1
54
96
55
97
pre-commit :
56
98
name : pre-commit
0 commit comments