Skip to content

Commit 7207843

Browse files
authored
Drop Python 3.7, use cibuildwheel v3 for Python 3.14 support
1 parent 8e27c66 commit 7207843

File tree

2 files changed

+32
-41
lines changed

2 files changed

+32
-41
lines changed

.github/workflows/ci.yml

Lines changed: 31 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ jobs:
55
lint:
66
runs-on: ubuntu-latest
77
steps:
8-
- uses: actions/checkout@v2
8+
- uses: actions/checkout@v5
99
with:
1010
submodules: recursive
11-
- uses: actions/setup-python@v1
11+
- uses: actions/setup-python@v6
1212
with:
13-
python-version: 3.8
13+
python-version: 3.x
1414
- name: Run lint
1515
run: |
1616
python -m pip install tox
@@ -22,17 +22,17 @@ jobs:
2222
fail-fast: false
2323
matrix:
2424
os: [ubuntu-latest, macos-latest, windows-latest]
25-
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
25+
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
2626
steps:
2727
- name: Set git to use LF on Windows
2828
if: runner.os == 'Windows'
2929
run: |
3030
git config --global core.autocrlf false
3131
git config --global core.eol lf
32-
- uses: actions/checkout@v2
32+
- uses: actions/checkout@v5
3333
with:
3434
submodules: recursive
35-
- uses: actions/setup-python@v4
35+
- uses: actions/setup-python@v6
3636
with:
3737
python-version: ${{ matrix.python-version }}
3838
allow-prereleases: true
@@ -44,16 +44,18 @@ jobs:
4444
package-sdist:
4545
runs-on: ubuntu-latest
4646
steps:
47-
- uses: actions/checkout@v2
47+
- uses: actions/checkout@v5
4848
with:
4949
submodules: recursive
50-
- uses: actions/setup-python@v1
50+
- uses: actions/setup-python@v6
5151
with:
5252
python-version: 3.x
5353
- name: Build source package
54-
run: python setup.py sdist
54+
run: |
55+
pip install build
56+
python -m build --sdist
5557
- name: Upload source package
56-
uses: actions/upload-artifact@v1
58+
uses: actions/upload-artifact@v5
5759
with:
5860
name: sdist
5961
path: dist/
@@ -62,20 +64,15 @@ jobs:
6264
runs-on: ${{ matrix.os }}
6365
strategy:
6466
matrix:
65-
include:
66-
- name: manylinux
67-
os: ubuntu-latest
68-
- name: macos
69-
os: macos-latest
70-
- name: win
71-
os: windows-latest
67+
os: [ubuntu-latest, macos-latest, windows-latest]
7268

7369
steps:
74-
- uses: actions/checkout@v2
70+
- uses: actions/checkout@v5
7571
with:
7672
submodules: recursive
77-
- uses: actions/setup-python@v2
78-
73+
- uses: actions/setup-python@v6
74+
with:
75+
python-version: 3.x
7976
- name: Install cibuildwheel
8077
run: python -m pip install cibuildwheel
8178
# - name: Install Visual C++ for Python 2.7
@@ -87,44 +84,39 @@ jobs:
8784
with:
8885
platforms: all
8986

90-
- name: Build wheels for Windows # see issue #174
91-
if: runner.os == 'Windows'
92-
run: python -m cibuildwheel --output-dir wheelhouse
93-
env:
94-
CIBW_BUILD: cp37-${{ matrix.name }}* pp*-${{ matrix.name }}*
95-
96-
- name: Build wheels for Linux and macOS
97-
if: runner.os != 'Windows'
87+
- name: Build wheels
9888
run: python -m cibuildwheel --output-dir wheelhouse
9989
env:
100-
CIBW_BUILD: cp37-${{ matrix.name }}* pp*-${{ matrix.name }}*
90+
CIBW_BUILD: cp38-* pp*-*
91+
CIBW_SKIP: "*musllinux*"
92+
CIBW_ENABLE: pypy
10193
CIBW_ARCHS_LINUX: auto aarch64
10294
CIBW_BEFORE_BUILD_LINUX: yum install -y libffi-devel
103-
- uses: actions/upload-artifact@v2
95+
- uses: actions/upload-artifact@v4
10496
with:
105-
name: wheels-${{ matrix.name }}
97+
name: wheels-${{ matrix.os }}
10698
path: ./wheelhouse/*.whl
10799

108100
publish:
109101
runs-on: ubuntu-latest
110102
needs: [lint, test, package-sdist, package-wheel]
111103
steps:
112-
- uses: actions/checkout@v2
113-
- uses: actions/download-artifact@v1
104+
- uses: actions/checkout@v5
105+
- uses: actions/download-artifact@v6
114106
with:
115107
name: sdist
116108
path: dist/
117-
- uses: actions/download-artifact@v1
109+
- uses: actions/download-artifact@v6
118110
with:
119-
name: wheels-win
111+
name: wheels-windows-latest
120112
path: dist/
121-
- uses: actions/download-artifact@v1
113+
- uses: actions/download-artifact@v6
122114
with:
123-
name: wheels-macos
115+
name: wheels-macos-latest
124116
path: dist/
125-
- uses: actions/download-artifact@v1
117+
- uses: actions/download-artifact@v6
126118
with:
127-
name: wheels-manylinux
119+
name: wheels-ubuntu-latest
128120
path: dist/
129121
- name: Publish to PyPI
130122
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags/')

setup.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ def finalize_options(self):
9898
install_requires=[
9999
"cffi>=1.0.0",
100100
],
101-
python_requires=">=3.7",
101+
python_requires=">=3.8",
102102
cffi_modules=["src/brotlicffi/_build.py:ffi"],
103103
packages=find_packages('src'),
104104
package_dir={'': 'src'},
@@ -113,7 +113,6 @@ def finalize_options(self):
113113
"Programming Language :: Python :: Implementation :: CPython",
114114
"Programming Language :: Python :: Implementation :: PyPy",
115115
"Programming Language :: Python :: 3",
116-
"Programming Language :: Python :: 3.7",
117116
"Programming Language :: Python :: 3.8",
118117
"Programming Language :: Python :: 3.9",
119118
"Programming Language :: Python :: 3.10",

0 commit comments

Comments
 (0)