@@ -16,52 +16,56 @@ jobs:
1616 pre-commit :
1717 runs-on : ubuntu-latest
1818 steps :
19- - uses : actions/checkout@v3
19+ - uses : actions/checkout@v4
2020 - uses : actions/setup-python@v4
2121 with :
22- python-version : 3.9
22+ python-version : 3.11
2323 - uses : pre-commit/action@v3.0.0
2424
2525 tests :
26+ continue-on-error : ${{ matrix.experimental || false }}
2627 strategy :
28+ fail-fast : false
2729 matrix :
2830 os : [ubuntu-latest]
29- python-version : [3.7, 3.8, 3.9 ]
31+ python-version : ["3.9", "3.10", "3.11" ]
3032 # Only test the latest major release of Sphinx because otherwise we need to
3133 # keep multiple versions of regression tests on file and this creates lots of
3234 # noise in the tests.
33- sphinx : [">=6,<7 "]
35+ sphinx : ["~=5.0","~=6.0","~=7.0 "]
3436 include :
3537 - os : windows-latest
36- python-version : 3.9
37- sphinx : " >=6,<7"
38+ # Python 3.12 is broken on windows builds until the following PR is released:
39+ # https://github.com/pradyunsg/sphinx-theme-builder/pull/47
40+ python-version : 3.11
41+ # Windows pulling in dependencies fails
42+ experimental : true
3843 - os : macos-latest
39- python-version : 3.9
40- sphinx : " >=6,<7"
44+ python-version : 3.x
4145 runs-on : ${{ matrix.os }}
4246
4347 steps :
44- - uses : actions/checkout@v3
45- - name : Set up Python ${{ matrix.python-version }} and Sphinx ${{ matrix.sphinx }}
48+ - uses : actions/checkout@v4
49+ - name : Set up Python ${{ matrix.python-version }}
4650 uses : actions/setup-python@v4
4751 with :
4852 python-version : ${{ matrix.python-version }}
4953 cache : " pip"
5054 cache-dependency-path : " pyproject.toml"
5155
52- - name : Install dependencies
56+ - name : Install dependencies with Sphinx ${{ matrix.sphinx }}
5357 run : |
5458 python -m pip install --upgrade pip
55- python -m pip install -e .[test]
59+ python -m pip install --upgrade "sphinx${{matrix.sphinx}}" - e .[test] --pre
5660
5761 - name : Run pytest
5862 run : >
5963 pytest --durations=10 --cov=sphinx_book_theme --cov-report=xml --cov-report=term-missing
6064
6165 # Only upload to codecov on pull requests so that we don't trigger rate limit blocks
6266 - name : Upload to Codecov
63- if : matrix.os == 'ubuntu-latest' && matrix.python-version == 3.7 && github.repository == 'executablebooks/sphinx-book-theme' && github.event_name == 'pull_request'
64- uses : codecov/codecov-action@v3.1.1
67+ if : matrix.os == 'ubuntu-latest' && matrix.python-version == 3.9 && github.repository == 'executablebooks/sphinx-book-theme' && github.event_name == 'pull_request'
68+ uses : codecov/codecov-action@v3.1.4
6569 with :
6670 name : ebp-sbt-pytests-py3.7
6771 flags : pytests
@@ -73,11 +77,11 @@ jobs:
7377 runs-on : ubuntu-latest
7478 name : Build and Audit Documentation
7579 steps :
76- - uses : actions/checkout@v3
80+ - uses : actions/checkout@v4
7781 - name : Set up Python
7882 uses : actions/setup-python@v4
7983 with :
80- python-version : ' 3.7 '
84+ python-version : ' 3.9 '
8185 cache : " pip"
8286 cache-dependency-path : " pyproject.toml"
8387 - name : Install dependencies
@@ -106,7 +110,7 @@ jobs:
106110 assert len(unexpected) == 0
107111
108112 - name : Audit with Lighthouse
109- uses : treosh/lighthouse-ci-action@9.3.1
113+ uses : treosh/lighthouse-ci-action@10.1.0
110114 with :
111115 configPath : " .github/workflows/lighthouserc.json"
112116 temporaryPublicStorage : true
0 commit comments