Skip to content

Commit c5af268

Browse files
committed
cargo update, vendor pyo3-ffi, python3.14
1 parent 3640a30 commit c5af268

File tree

119 files changed

+14786
-195
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

119 files changed

+14786
-195
lines changed

.gitattributes

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
include/** linguist-vendored
1+
include linguist-vendored

.github/workflows/artifact.yaml

+24-54
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
name: artifact
22
on: push
33
env:
4-
RUST_TOOLCHAIN: "nightly-2024-08-05"
4+
RUST_TOOLCHAIN: "nightly-2024-09-25"
55
CARGO_UNSTABLE_SPARSE_REGISTRY: "true"
66
UNSAFE_PYO3_BUILD_FREE_THREADED: "1"
77
UNSAFE_PYO3_SKIP_VERSION_CHECK: "1"
8+
UV_LINK_MODE: "copy"
89
jobs:
910

1011
sdist:
@@ -71,54 +72,43 @@ jobs:
7172
{ interpreter: 'python3.8', package: 'python3.8' },
7273
]
7374
env:
75+
PYTHON: "${{ matrix.python.interpreter }}"
76+
PYTHON_PACKAGE: "${{ matrix.python.package }}"
77+
TARGET: "x86_64-unknown-linux-gnu"
7478
CC: "clang"
79+
VENV: ".venv"
7580
CFLAGS: "-Os -fstrict-aliasing -fno-plt -flto=full -emit-llvm"
7681
LDFLAGS: "-fuse-ld=lld -Wl,-plugin-opt=also-emit-llvm -Wl,--as-needed -Wl,-zrelro,-znow"
7782
RUSTFLAGS: "-C linker=clang -C link-arg=-fuse-ld=lld -C linker-plugin-lto -C lto=fat -C link-arg=-Wl,-zrelro,-znow -Z mir-opt-level=4 -Z virtual-function-elimination -Z threads=2 -D warnings"
7883
PATH: "/__w/orjson/orjson/.venv/bin:/github/home/.cargo/bin:/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
7984
container:
80-
image: fedora:41
85+
image: fedora:42
8186
steps:
8287

8388
- name: cpuinfo
8489
run: cat /proc/cpuinfo
8590

8691
- name: Build environment pre-clone
87-
run: |
88-
dnf copr enable -y @fedora-llvm-team/llvm19
89-
dnf install -y rustup clang lld ${{ matrix.python.package }} git
90-
rustup-init --default-toolchain "${RUST_TOOLCHAIN}-x86_64-unknown-linux-gnu" --profile minimal --component rust-src -y
92+
run: dnf install -y git
9193

9294
- uses: actions/checkout@v4
9395

9496
- name: Build environment post-clone
9597
run: |
96-
cargo fetch --target=x86_64-unknown-linux-gnu &
97-
98-
mkdir .cargo
99-
cp ci/config.toml .cargo/config.toml
100-
101-
curl -LsSf https://astral.sh/uv/install.sh | sh
102-
uv venv --python ${{ matrix.python.interpreter }}
103-
uv pip install --upgrade "maturin>=1,<2" -r test/requirements.txt -r integration/requirements.txt
98+
./script/install-fedora
10499
105-
- name: maturin
106-
run: |
107-
source .venv/bin/activate
108100
maturin build --release --strip \
109101
--features=avx512,no-panic,unstable-simd,yyjson \
110-
--compatibility manylinux_2_17 \
111-
--interpreter ${{ matrix.python.interpreter }} \
112-
--target=x86_64-unknown-linux-gnu
102+
--compatibility=manylinux_2_17 \
103+
--interpreter="${PYTHON}" \
104+
--target="${TARGET}"
105+
113106
uv pip install target/wheels/orjson*.whl
114107
115-
- run: source .venv/bin/activate && pytest -s -rxX -v -n 2 test
116-
env:
117-
PYTHONMALLOC: "debug"
118-
119-
- run: source .venv/bin/activate && ./integration/run thread
120-
- run: source .venv/bin/activate && ./integration/run http
121-
- run: source .venv/bin/activate && ./integration/run init
108+
pytest -s -rxX -v -n 2 test
109+
./integration/run thread
110+
./integration/run http
111+
./integration/run init
122112
123113
- name: Store wheels
124114
if: "startsWith(github.ref, 'refs/tags/')"
@@ -167,9 +157,9 @@ jobs:
167157
LDFLAGS: "-Wl,--as-needed"
168158
RUSTFLAGS: "-C lto=fat -Z mir-opt-level=4 -Z virtual-function-elimination -Z threads=2 -D warnings -C target-feature=-crt-static"
169159
with:
170-
rust-toolchain: nightly-2024-08-05
160+
rust-toolchain: "${{ env.RUST_TOOLCHAIN }}"
171161
rustup-components: rust-src
172-
target: ${{ matrix.platform.target }}
162+
target: "${{ matrix.platform.target }}"
173163
manylinux: musllinux_1_2
174164
args: --release --strip --out=dist --features=${{ matrix.platform.features }} -i python${{ matrix.python.version }}
175165

@@ -249,6 +239,7 @@ jobs:
249239
]
250240
steps:
251241
- uses: actions/checkout@v4
242+
252243
- name: build-std
253244
run: |
254245
mkdir .cargo
@@ -262,33 +253,12 @@ jobs:
262253
LDFLAGS: "-Wl,--as-needed"
263254
RUSTFLAGS: "${{ matrix.target.rustflags }}"
264255
with:
265-
target: ${{ matrix.target.target }}
266-
rust-toolchain: nightly-2024-08-05
256+
target: "${{ matrix.target.target }}"
257+
rust-toolchain: "${{ env.RUST_TOOLCHAIN }}"
267258
rustup-components: rust-src
268259
manylinux: auto
269260
args: --release --strip --out=dist --features=${{ matrix.target.features }} -i python${{ matrix.python.version }}
270261

271-
- uses: uraimo/run-on-arch-action@v2
272-
name: Test
273-
with:
274-
arch: ${{ matrix.target.arch }}
275-
distro: ubuntu22.04
276-
githubToken: ${{ github.token }}
277-
install: |
278-
export TZ=UTC
279-
export DEBIAN_FRONTEND=noninteractive
280-
apt-get update
281-
apt-get install -y --no-install-recommends software-properties-common gpg gpg-agent curl
282-
add-apt-repository ppa:deadsnakes/ppa
283-
apt-get update
284-
apt-get install -y python${{ matrix.python.version }}-dev python${{ matrix.python.version }}-venv
285-
run: |
286-
python${{ matrix.python.version }} -m venv venv
287-
venv/bin/pip install -U pip wheel
288-
venv/bin/pip install -r test/requirements.txt
289-
venv/bin/pip install orjson --no-index --find-links dist/ --force-reinstall
290-
venv/bin/python -m pytest -s -rxX -v -n 2 test
291-
292262
- name: Store wheels
293263
if: "startsWith(github.ref, 'refs/tags/')"
294264
uses: actions/upload-artifact@v4
@@ -328,7 +298,7 @@ jobs:
328298

329299
- uses: dtolnay/rust-toolchain@master
330300
with:
331-
toolchain: "nightly-2024-08-05"
301+
toolchain: "${{ env.RUST_TOOLCHAIN }}"
332302
targets: "aarch64-apple-darwin, x86_64-apple-darwin"
333303
components: "rust-src"
334304

@@ -398,7 +368,7 @@ jobs:
398368

399369
- uses: dtolnay/rust-toolchain@master
400370
with:
401-
toolchain: "nightly-2024-08-05"
371+
toolchain: "${{ env.RUST_TOOLCHAIN }}"
402372
targets: "aarch64-apple-darwin, x86_64-apple-darwin"
403373
components: "rust-src"
404374

.github/workflows/debug.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ jobs:
1010
profile: [
1111
{ rust: "1.72", features: "" },
1212
{ rust: "1.72", features: "--features=yyjson" },
13-
{ rust: "nightly-2024-08-05", features: "--features=yyjson,unstable-simd"},
14-
{ rust: "nightly-2024-08-05", features: "--features=avx512,yyjson,unstable-simd"},
13+
{ rust: "nightly-2024-09-25", features: "--features=yyjson,unstable-simd"},
14+
{ rust: "nightly-2024-09-25", features: "--features=avx512,yyjson,unstable-simd"},
1515
]
1616
python: [
1717
{ version: '3.13' },

Cargo.lock

+39-44
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)