Skip to content

Commit 31d2895

Browse files
committed
Update Github Actions
1 parent 1bce9e9 commit 31d2895

2 files changed

Lines changed: 53 additions & 56 deletions

File tree

.github/workflows/make_release.yml

Lines changed: 34 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -7,66 +7,47 @@ on:
77

88
jobs:
99
build_wheels:
10-
name: Build wheels on ${{matrix.arch}} for ${{ matrix.os }}
11-
runs-on: ${{ matrix.os }}
12-
timeout-minutes: 1500
13-
env:
14-
CIBW_SKIP: "cp27-* cp34* cp35* cp36-* pp27-* cp37* pp3*"
15-
CIBW_BEFORE_BUILD: "pip install Cython==3.0.11 setuptools wheel"
10+
name: Build wheels for ${{ matrix.os }}
11+
runs-on: ${{ matrix.runs-on }}
1612
strategy:
1713
matrix:
18-
os: [ubuntu-24.04, windows-latest, macos-latest]
19-
arch: [auto]
2014
include:
21-
- os: ubuntu-24.04
22-
arch: aarch64
15+
- os: linux-intel
16+
runs-on: ubuntu-latest
17+
- os: linux-arm
18+
runs-on: ubuntu-24.04-arm
19+
- os: windows-intel
20+
runs-on: windows-latest
21+
- os: windows-arm
22+
runs-on: windows-11-arm
23+
- os: macos-intel
24+
runs-on: macos-13
25+
- os: macos-arm
26+
runs-on: macos-latest
2327

2428
steps:
2529
- uses: actions/checkout@v4
2630
with:
2731
submodules: true
28-
- uses: actions/setup-python@v5
29-
name: Install Python
30-
with:
31-
python-version: '3.13'
32-
33-
- uses: docker/setup-qemu-action@v3
34-
if: ${{ matrix.arch == 'aarch64' }}
35-
name: Set up QEMU
36-
37-
- name: Install cibuildwheel
38-
run: |
39-
python -m pip install cibuildwheel==2.21.3 Cython==3.0.11 setuptools wheel
4032

4133
- name: Build wheels
34+
uses: pypa/cibuildwheel@v3.0.0
4235
env:
43-
CIBW_ARCHS_MACOS: x86_64 universal2
44-
CIBW_ARCHS_LINUX: ${{matrix.arch}}
45-
run: |
46-
python -m cibuildwheel --output-dir wheelhouse
36+
CIBW_PLATFORM: ${{ matrix.platform || 'auto' }}
4737

4838
- uses: actions/upload-artifact@v4
4939
with:
40+
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
5041
path: ./wheelhouse/*.whl
51-
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}-${{matrix.arch}}
52-
retention-days: 1
42+
5343

5444
build_sdist:
5545
name: Build source distribution
5646
runs-on: ubuntu-latest
57-
timeout-minutes: 40
58-
env:
59-
CIBW_SKIP: "cp27-* cp34-* pp27-*"
60-
CIBW_BEFORE_BUILD: "pip install Cython==3.0.11 setuptools wheel"
6147
steps:
6248
- uses: actions/checkout@v4
6349
with:
6450
submodules: true
65-
- uses: actions/setup-python@v5
66-
name: Install Python
67-
with:
68-
python-version: '3.13'
69-
7051
- name: Build sdist
7152
run: |
7253
pip install Cython==3.0.11 setuptools wheel setuptools
@@ -79,19 +60,19 @@ jobs:
7960
retention-days: 1
8061
name: cibw-sdist
8162

82-
upload_pypi:
83-
needs: [build_wheels, build_sdist]
84-
runs-on: ubuntu-latest
85-
if: github.event_name == 'release' && github.event.action == 'published'
86-
steps:
87-
- uses: actions/download-artifact@v4
88-
with:
89-
pattern: cibw-*
90-
path: dist
91-
merge-multiple: true
92-
93-
- uses: pypa/gh-action-pypi-publish@release/v1
94-
with:
95-
user: __token__
96-
password: ${{ secrets.pypi_password }}
97-
# To test: repository_url: https://test.pypi.org/legacy/
63+
# upload_pypi:
64+
# needs: [build_wheels, build_sdist]
65+
# runs-on: ubuntu-latest
66+
# if: github.event_name == 'release' && github.event.action == 'published'
67+
# steps:
68+
# - uses: actions/download-artifact@v4
69+
# with:
70+
# pattern: cibw-*
71+
# path: dist
72+
# merge-multiple: true
73+
#
74+
# - uses: pypa/gh-action-pypi-publish@release/v1
75+
# with:
76+
# user: __token__
77+
# password: ${{ secrets.pypi_password }}
78+
# # To test: repository_url: https://test.pypi.org/legacy/

pyproject.toml

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
[build-system]
33
requires = [
44
"wheel",
5-
"Cython>=3.1.0",
5+
"Cython==3.0.11",
6+
"setuptools>=62.4",
67
]
78

89

@@ -12,10 +13,25 @@ version = '0.3.29'
1213
description = 'Fast HTML5 parser with CSS selectors.'
1314
readme = 'README.rst'
1415
requires-python = '>=3.8'
15-
license = {text = 'MIT'}
16+
license = {file = 'LICENSE'}
1617
authors = [
1718
{name = 'Artem Golubin', email = 'me@rushter.com'}
1819
]
1920
dependencies = [
20-
"Cython>=3.1.0",
21+
"Cython==3.0.11",
2122
]
23+
24+
[tool.cibuildwheel]
25+
build-frontend = "build"
26+
build-verbosity = 1
27+
28+
29+
skip = [
30+
"*-manylinux_i686",
31+
"*-musllinux_i686",
32+
"*-win32",
33+
"*-musllinux*",
34+
"pp*"
35+
]
36+
macos.archs = ["x86_64", "arm64"]
37+
test-skip = "*-macosx_arm64"

0 commit comments

Comments
 (0)