Skip to content

Commit

Permalink
Release 1.1.6 (#11)
Browse files Browse the repository at this point in the history
## 1.1.6 (2024-12-26)

### Changed
- pyo3 updated from 0.22.5 to 0.23.3

### Fixed
- Clippy warnings in our Rust code.

### Added
- Initial support for Python 3.13 freethreaded experimental build.
  • Loading branch information
Ousret authored Dec 26, 2024
1 parent 6753ae6 commit 85ab751
Show file tree
Hide file tree
Showing 9 changed files with 208 additions and 84 deletions.
83 changes: 59 additions & 24 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,10 @@ jobs:
lint:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.10'
python-version: '3.11'
- run: pip install pre-commit
name: Install pre-commit
- run: pre-commit run --all
Expand All @@ -33,17 +33,20 @@ jobs:
test:
strategy:
matrix:
os: [ubuntu-22.04, macos-12, windows-latest ]
os: [ubuntu-22.04, macos-13, windows-latest ]
python_version: ['3.7', '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10']
exclude:
- python_version: 3.7
os: macos-13
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python_version }}
allow-prereleases: true
- name: Setup dependencies
run: pip install --upgrade pip pytest
run: pip install pytest
- name: Install mkcert (Linux)
if: matrix.os == 'ubuntu-22.04'
run: sudo apt-get install mkcert
Expand All @@ -59,13 +62,18 @@ jobs:
- name: Build wheels (Unix, Linux)
if: matrix.os != 'windows-latest'
uses: PyO3/maturin-action@v1
env:
UNSAFE_PYO3_SKIP_VERSION_CHECK: 1
with:
args: --release --out dist --interpreter ${{ matrix.python_version }}
sccache: 'true'
manylinux: auto
docker-options: -e UNSAFE_PYO3_SKIP_VERSION_CHECK=1
- name: Build wheels (NT)
if: matrix.os == 'windows-latest'
uses: PyO3/maturin-action@v1
env:
UNSAFE_PYO3_SKIP_VERSION_CHECK: 1
with:
args: --release --out dist
sccache: 'true'
Expand All @@ -90,7 +98,7 @@ jobs:
fail-fast: false
matrix:
target: [x86_64, x86, aarch64, armv7, s390x, ppc64le, ppc64, i686]
python_version: ['3.10', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10']
python_version: ['3.10', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10', '3.13t']
manylinux: ['auto', 'musllinux_1_1']
exclude:
- manylinux: musllinux_1_1
Expand All @@ -101,17 +109,25 @@ jobs:
target: ppc64le

steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
if: matrix.python_version != '3.13t'
with:
python-version: ${{ matrix.python_version }}
- uses: Quansight-Labs/setup-python@v5
if: matrix.python_version == '3.13t'
with:
python-version: '3.13t'
- name: Build wheels
uses: PyO3/maturin-action@v1
env:
UNSAFE_PYO3_SKIP_VERSION_CHECK: 1
with:
target: ${{ matrix.target }}
args: --release --out dist --interpreter ${{ matrix.python_version }}
sccache: 'true'
manylinux: ${{ matrix.manylinux }}
docker-options: -e UNSAFE_PYO3_SKIP_VERSION_CHECK=1
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
Expand All @@ -127,7 +143,7 @@ jobs:
fail-fast: false
matrix:
target: [x64, aarch64]
python_version: ['3.10', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10']
python_version: ['3.10', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10', '3.13t']
exclude:
- target: aarch64
python_version: 'pypy-3.7'
Expand All @@ -137,18 +153,30 @@ jobs:
python_version: 'pypy-3.9'
- target: aarch64
python_version: 'pypy-3.10'
# known bug pyo3+maturin fail to produce correct wheel
- target: aarch64
python_version: 3.13t
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
if: matrix.python_version != '3.13t'
with:
python-version: ${{ matrix.python_version }}
architecture: x64
- uses: Quansight-Labs/setup-python@v5
if: matrix.python_version == '3.13t'
with:
python-version: '3.13t'
architecture: x64
- name: Build wheels
uses: PyO3/maturin-action@v1
env:
UNSAFE_PYO3_SKIP_VERSION_CHECK: 1
PYO3_CROSS: ${{ matrix.target == 'aarch64' && '1' || '' }}
with:
target: ${{ matrix.target }}
args: --release --out dist
sccache: 'true'
sccache: 'false'
- name: Upload wheels
uses: actions/upload-artifact@v3
with:
Expand All @@ -159,22 +187,29 @@ jobs:
needs:
- test
- lint
runs-on: macos-12
runs-on: macos-13
strategy:
fail-fast: false
matrix:
target: [x86_64, aarch64, universal2]
python_version: ['3.10', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10']
target: [universal2]
python_version: ['3.10', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10', '3.13t']
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
if: matrix.python_version != '3.13t'
with:
python-version: ${{ matrix.python_version }}
- uses: Quansight-Labs/setup-python@v5
if: matrix.python_version == '3.13t'
with:
python-version: '3.13t'
- name: Build wheels
uses: PyO3/maturin-action@v1
env:
UNSAFE_PYO3_SKIP_VERSION_CHECK: 1
with:
target: ${{ matrix.target }}
args: --release --out dist --interpreter ${{ matrix.python_version }}
args: --release --out dist
sccache: 'true'
- name: Upload wheels
uses: actions/upload-artifact@v3
Expand All @@ -188,7 +223,7 @@ jobs:
- lint
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Build sdist
uses: PyO3/maturin-action@v1
with:
Expand All @@ -206,8 +241,8 @@ jobs:
- lint
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Install dependencies
Expand Down Expand Up @@ -247,7 +282,7 @@ jobs:
provenance:
needs: checksum
if: "startsWith(github.ref, 'refs/tags/')"
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml@v1.10.0
uses: slsa-framework/slsa-github-generator/.github/workflows/generator_generic_slsa3.yml@v2.0.0
permissions:
actions: read
id-token: write
Expand Down
18 changes: 17 additions & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
exclude: 'docs/|src/'
exclude: 'docs/|freethreaded.patch'
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
Expand Down Expand Up @@ -29,3 +29,19 @@ repos:
- id: mypy
args: [--check-untyped-defs]
exclude: 'tests/'
- repo: local
hooks:
- id: rust-linting
name: Rust linting
description: Run cargo fmt on files included in the commit. rustfmt should be installed before-hand.
entry: cargo fmt --all --
pass_filenames: true
types: [file, rust]
language: system
- id: rust-clippy
name: Rust clippy
description: Run cargo clippy on files included in the commit. clippy should be installed before-hand.
entry: cargo clippy --all-targets --all-features -- -Dclippy::all
pass_filenames: false
types: [file, rust]
language: system
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,17 @@
All notable changes to wassima will be documented in this file. This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## 1.1.6 (2024-12-26)

### Changed
- pyo3 updated from 0.22.5 to 0.23.3

### Fixed
- Clippy warnings in our Rust code.

### Added
- Initial support for Python 3.13 freethreaded experimental build.

## 1.1.5 (2024-10-27)

### Changed
Expand Down
Loading

0 comments on commit 85ab751

Please sign in to comment.