Skip to content

Commit cf32d35

Browse files
committed
Update documentation; Update configuration
Modified: • crates/uv-ffi/pyproject.toml (+1/-1 lines) • crates/uv-ffi/CHANGELOG.md (+33/-0 lines) [gitship-generated]
1 parent 7c7d169 commit cf32d35

2 files changed

Lines changed: 34 additions & 1 deletion

File tree

crates/uv-ffi/CHANGELOG.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,39 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.10.8.post8] — 2026-04-23
9+
10+
The UX Safety Net & Wheel Backfill Release
11+
12+
**The UX Safety Net & Wheel Backfill Release**
13+
14+
This release completely overhauls the developer experience (DX) for users on "exotic" platforms (musl, PyPy, riscv64, s390x, etc.) and introduces a massive CI backfill system to ensure every wheel ever built is permanently indexed and available.
15+
16+
* **Smart Source Build Hints (`build.rs`):** If a user runs `pip install uv-ffi` on an exotic platform and `pip` attempts to build from source, a custom `build.rs` script now intercepts the build process. Before throwing a compiler error, it explicitly prints a clean, highlighted warning instructing the user to use the `--extra-index-url` to grab the pre-built wheel.
17+
* **Graceful Import Failures (`__init__.py`):** Added a pure-Python wrapper around the native extension. If the `.so`/`.pyd` file fails to load due to ABI/architecture mismatches, the resulting `ImportError` is intercepted. The user is presented with a highly descriptive error detailing their OS/Architecture and the exact `pip` command to resolve the issue using the extended GitHub index.
18+
19+
* **Historical Wheel Recovery:** Deployed a powerful new `backfill_wheels.yml` workflow. This script scans the GitHub API across all past CI runs, deduplicates, downloads, and intelligently routes hundreds of non-expired exotic wheels into their correct GitHub Releases.
20+
* **Unified PEP-503 Index:** The index generator now intelligently merges PyPI's JSON API responses with the GitHub Release assets, creating a single, comprehensive HTML index of every `uv-ffi` wheel in existence.
21+
22+
* **README Overhaul:** Completely rewrote the root and crate-level `README.md` files to clearly separate "Standard Platforms" (PyPI) from "Exotic Platforms" (GitHub Pages), complete with a detailed compatibility matrix.
23+
* **Surgical Publishing:** Added a `source_only` manual dispatch option to `publish.yml` allowing for quick, wheel-less updates to the source distribution.
24+
* **Strict Platform Filtering:** Enhanced the publish workflow to strictly filter which CPython targets are permitted onto PyPI, guaranteeing the 10GB limit is never breached.
25+
26+
---
27+
28+
**Updates:**
29+
- Update HTML writing logic in backfill_wheels.yml
30+
31+
**Other Changes:**
32+
- feat(uv-ffi): post8 — build hint, __init__ error msg, extended wheels index, README overhaul
33+
- Refactor artifact collection in backfill_wheels.yml
34+
- Refactor artifact download process in workflow
35+
- Enhance backfill_wheels workflow with SHA-to-tag mapping
36+
- Add backfill workflow for wheels to GH Releases
37+
- ...and 4 more changes
38+
39+
_7 files changed, 566 insertions(+), 331 deletions(-)_
40+
841
## [0.10.8.post7] — 2026-04-22
942

1043
ABI3 Wheels & Split Distribution Pipeline

crates/uv-ffi/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "maturin"
44

55
[project]
66
name = "uv-ffi"
7-
version = "0.10.8.post7"
7+
version = "0.10.8.post8"
88
description = "Persistent in-process execution engine for uv — internal dependency of omnipkg"
99
readme = "README.md"
1010
requires-python = ">=3.8"

0 commit comments

Comments
 (0)