@@ -15,13 +15,13 @@ defaults:
1515
1616jobs :
1717
18- lint :
18+ static :
1919 runs-on : ubuntu-latest
2020 steps :
2121 - uses : actions/checkout@v4
2222 - uses : actions/setup-python@v5
2323 with :
24- python-version : 3.8
24+ python-version : " 3.8"
2525 cache : ' pip'
2626 cache-dependency-path : ' pyproject.toml'
2727 - name : Install Python dependencies
3030 - name : Run linters
3131 run : |
3232 tox -m lint-manual
33+ - name : Check Manifest
34+ run : |
3335 tox -m manifest
36+ - name : Run compilation
37+ run : |
38+ pip install -e .
39+ python tools/fail_if_no_c.py
40+ - name : Run typecheck
41+ run : |
42+ tox -m typecheck
43+ - run : |
44+ sudo apt-get install -y cppcheck
45+ - run : |
46+ cppcheck --force bson
47+ cppcheck pymongo
3448
3549 build :
3650 # supercharge/mongodb-github-action requires containers so we don't test other platforms
@@ -81,28 +95,29 @@ jobs:
8195 run : |
8296 tox -m doc-test
8397
84- typing :
85- name : Typing Tests
98+ docs :
99+ name : Docs Checks
86100 runs-on : ubuntu-latest
87- strategy :
88- matrix :
89- python : ["3.7", "3.11"]
90101 steps :
91102 - uses : actions/checkout@v4
92103 - uses : actions/setup-python@v5
93104 with :
94- python-version : " ${{matrix.python}}"
95105 cache : ' pip'
96106 cache-dependency-path : ' pyproject.toml'
107+ # Build docs on lowest supported Python for furo
108+ python-version : ' 3.8'
97109 - name : Install dependencies
98110 run : |
99111 pip install -q tox
100- - name : Run typecheck
112+ - name : Check links
101113 run : |
102- tox -m typecheck
114+ tox -m linkcheck
115+ - name : Build docs
116+ run : |
117+ tox -m doc
103118
104- docs :
105- name : Docs Checks
119+ linkcheck :
120+ name : Link Check
106121 runs-on : ubuntu-latest
107122 steps :
108123 - uses : actions/checkout@v4
@@ -115,12 +130,29 @@ jobs:
115130 - name : Install dependencies
116131 run : |
117132 pip install -q tox
118- - name : Check links
133+ - name : Build docs
119134 run : |
120135 tox -m linkcheck
121- - name : Build docs
136+
137+ typing :
138+ name : Typing Tests
139+ runs-on : ubuntu-latest
140+ strategy :
141+ matrix :
142+ python : ["3.7", "3.11"]
143+ steps :
144+ - uses : actions/checkout@v4
145+ - uses : actions/setup-python@v5
146+ with :
147+ python-version : " ${{matrix.python}}"
148+ cache : ' pip'
149+ cache-dependency-path : ' pyproject.toml'
150+ - name : Install dependencies
122151 run : |
123- tox -m doc
152+ pip install -q tox
153+ - name : Run typecheck
154+ run : |
155+ tox -m typecheck
124156
125157 make_sdist :
126158 runs-on : ubuntu-latest
0 commit comments