From 9bd4e459a96d31f4cfa02cca89eb3d1576d66be6 Mon Sep 17 00:00:00 2001 From: Segev Finer Date: Mon, 28 Oct 2024 18:38:30 +0200 Subject: [PATCH 1/4] Work on Python 3.13 wheels --- .github/workflows/build-and-test.yml | 2 +- .github/workflows/docs.yml | 2 +- .github/workflows/wheels.yml | 11 ++++++----- CHANGELOG.rst | 6 ++++++ cypcap/__init__.py | 2 +- setup.py | 1 + 6 files changed, 16 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index ece5115..3e4a6d5 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.9', '3.11', '3.12'] + python-version: ['3.9', '3.11', '3.12', '3.13'] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index c0e89f9..07e7e82 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -13,7 +13,7 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: - python-version: '3.11' + python-version: '3.12' - name: Install dependencies run: | python -m pip install --upgrade pip setuptools wheel diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 39babfc..4778726 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -6,6 +6,7 @@ on: - main tags: - 'v[0-9].*' + workflow_dispatch: jobs: build_wheels: @@ -21,7 +22,7 @@ jobs: - uses: actions/setup-python@v5 with: - python-version: '3.11' + python-version: '3.12' - name: Install dependencies (Windows) if: runner.os == 'Windows' @@ -37,15 +38,15 @@ jobs: python setup.py sdist - name: Build wheels - uses: pypa/cibuildwheel@v2.17.0 + uses: pypa/cibuildwheel@v2.21.3 env: CIBW_SKIP: 'pp* *-musllinux*' CIBW_ARCHS_MACOS: universal2 CIBW_BEFORE_ALL_LINUX: > yum install -y flex bison libnl3-devel bluez-libs-devel && - curl https://www.tcpdump.org/release/libpcap-1.10.1.tar.gz -O && - tar xf libpcap-1.10.1.tar.gz && - cd libpcap-1.10.1 && + curl https://www.tcpdump.org/release/libpcap-1.10.5.tar.gz -O && + tar xf libpcap-1.10.5.tar.gz && + cd libpcap-1.10.5 && ./configure && make -j2 && make install diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 472dfe6..3daf923 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,6 +1,12 @@ Changelog ========= +Unreleased +---------- +Added +^^^^^ +* Python 3.13 wheels + v0.6.0 (2024-04-17) ------------------- Added diff --git a/cypcap/__init__.py b/cypcap/__init__.py index 19fc039..6365607 100644 --- a/cypcap/__init__.py +++ b/cypcap/__init__.py @@ -5,4 +5,4 @@ from ._cypcap import * -__version__ = u"0.6.0" +__version__ = u"0.6.1" diff --git a/setup.py b/setup.py index 513fc31..c0590c5 100644 --- a/setup.py +++ b/setup.py @@ -194,6 +194,7 @@ def run(self): "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ], keywords="libpcap pcap", zip_safe=False, From 722094c650c6a9fc71b57ba8147ebd89706a1512 Mon Sep 17 00:00:00 2001 From: Segev Finer Date: Mon, 28 Oct 2024 18:46:06 +0200 Subject: [PATCH 2/4] Fix for Python 3.12 removing setuptools --- .github/workflows/wheels.yml | 4 ++-- pyproject.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 4778726..5dbd747 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -34,8 +34,8 @@ jobs: - name: Build sdist if: matrix.os == 'ubuntu-20.04' run: | - pip install cython>=3.0.0 - python setup.py sdist + pip install build + python -m build --sdist - name: Build wheels uses: pypa/cibuildwheel@v2.21.3 diff --git a/pyproject.toml b/pyproject.toml index a29a9f1..263330e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,3 @@ [build-system] -requires = ["setuptools", "wheel", "cython>=0.29.24"] +requires = ["setuptools>=61.0", "cython>=0.29.24"] build-backend = "setuptools.build_meta" From fd93f6e5afcf6f354d9f5aa2c34b680708a86a81 Mon Sep 17 00:00:00 2001 From: Segev Finer Date: Mon, 28 Oct 2024 18:53:04 +0200 Subject: [PATCH 3/4] Reduce setuptools version requirement for cibuildwheel --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 263330e..d8a0013 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,3 @@ [build-system] -requires = ["setuptools>=61.0", "cython>=0.29.24"] +requires = ["setuptools>=59.0", "cython>=0.29.24"] build-backend = "setuptools.build_meta" From 2138b35e7742a7df3916f77fa8b9946c19d2b066 Mon Sep 17 00:00:00 2001 From: Segev Finer Date: Mon, 28 Oct 2024 18:57:23 +0200 Subject: [PATCH 4/4] Restore accidently deleted line --- .github/workflows/wheels.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 0e8e83f..5fa3f30 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -11,6 +11,7 @@ on: jobs: build_wheels: name: Build wheels on ${{ matrix.os }} + runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: