Skip to content

Commit 99dc23a

Browse files
authored
Merge pull request #111 from gantasmo/release/v0.1.1
fix(aubio): cross-platform wheels + v0.1.1 release
2 parents 7488d55 + 7ad08f4 commit 99dc23a

10 files changed

Lines changed: 285 additions & 163 deletions

.github/workflows/build-aubio-wheels.yml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -41,14 +41,6 @@ name: build-aubio-wheels
4141

4242
on:
4343
workflow_dispatch:
44-
# TEMPORARY: also run on push to the CI branch so the wheels can be produced
45-
# before this workflow exists on the default branch (a workflow_dispatch-only
46-
# workflow is not dispatchable until it lands on the default branch). Remove
47-
# this push trigger before merging; workflow_dispatch is the intended
48-
# permanent trigger.
49-
push:
50-
branches:
51-
- "ci/aubio-wheels"
5244

5345
permissions:
5446
contents: read

.gitignore

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,14 @@ eggs/
6363
/parts/
6464
/sdist/
6565
/var/
66-
# Ignore build-artifact wheels, but TRACK the vendored prebuilt aubio wheel:
67-
# aubio is source-only on PyPI, so this bundled Windows wheel (pinned in
68-
# pyproject [tool.uv.sources]) is what lets a compiler-less Windows box install.
66+
# Ignore build-artifact wheels, but TRACK the vendored prebuilt aubio wheels:
67+
# aubio is source-only on PyPI, so these bundled per-platform wheels (pinned in
68+
# pyproject [tool.uv.sources], built by .github/workflows/build-aubio-wheels.yml)
69+
# are what let a compiler-less Windows / macOS / Linux box install aubio.
6970
/wheels/*
7071
!/wheels/aubio-0.4.9-cp310-cp310-win_amd64.whl
72+
!/wheels/aubio-0.4.9-cp310-cp310-macosx_11_0_arm64.whl
73+
!/wheels/aubio-0.4.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
7174
share/python-wheels/
7275
*.egg-info/
7376
.installed.cfg

Dockerfile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,10 @@ ENV PYTHONUNBUFFERED=1 \
118118
# the backend boots fine without it. The dependency stays in pyproject/uv.lock
119119
# with its win32-or-linux-x86_64 marker so bare-metal Linux installs keep it.
120120
COPY pyproject.toml uv.lock .python-version ./
121+
# Prebuilt aubio wheels referenced by uv.lock's [tool.uv.sources] path entries.
122+
# On linux x86_64 the marker-matched manylinux wheel is what this build installs,
123+
# so it must be present in the context or `uv sync --frozen` fails on the path.
124+
COPY wheels/ ./wheels/
121125
RUN --mount=type=cache,target=/root/.cache/uv \
122126
uv sync --frozen --no-dev --no-install-project --no-install-package pyk4a-bundle
123127

docs/reports/feature-doc-coverage-report.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Feature Documentation Coverage Report
22

33
> [!NOTE]
4-
> Generated: 2026-07-05T20:34:05.829Z · Git revision: `426101e54cd1` · Repomix tracked: **no**
4+
> Generated: 2026-07-05T21:01:03.629Z · Git revision: `65148a15af4d` · Repomix tracked: **no**
55
66
## Audit Dashboard
77

docs/reports/feature-doc-coverage.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
2-
"generatedAt": "2026-07-05T20:34:05.829Z",
3-
"repoRevision": "426101e54cd1",
2+
"generatedAt": "2026-07-05T21:01:03.629Z",
3+
"repoRevision": "65148a15af4d",
44
"repomixContext": {
55
"path": "repomix-output.md",
66
"present": true,

electron-ui/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "thedaw-desktop",
3-
"version": "0.1.0",
3+
"version": "0.1.1",
44
"private": true,
55
"description": "theDAW desktop shell: an Electron front end that bootstraps and supervises the Python audio backend.",
66
"author": "GANTASMO",

pyproject.toml

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "stable-audio-3"
3-
version = "0.1.0"
3+
version = "0.1.1"
44
description = "Stable Audio 3: A state-of-the-art open platform for fast, high-quality generated audio and music"
55
readme = "README.md"
66
requires-python = ">=3.10"
@@ -125,14 +125,18 @@ explicit = true
125125
flash-attn = [
126126
{ url = "https://github.com/kingbri1/flash-attention/releases/download/v2.8.3/flash_attn-2.8.3+cu128torch2.7.0cxx11abiFALSE-cp310-cp310-win_amd64.whl", marker = "sys_platform == 'win32'" },
127127
]
128-
# aubio ships NO wheels on PyPI (source-only since 0.4.9 in 2019), so a default
129-
# install compiles it from C — which needs MSVC Build Tools that a fresh Windows
130-
# box does not have, breaking the zero-terminal install. Pin a prebuilt Windows
131-
# wheel (built here, cp310/win_amd64 — the locked Windows Python) so aubio stays
132-
# a first-class dependency but installs with no compiler. Linux/macOS keep
133-
# building from the PyPI sdist (they ship a compiler by default).
128+
# aubio ships NO wheels on PyPI (source-only since 0.4.9 in 2019) and its 2019 C
129+
# source does not compile on a stock machine (no MSVC on Windows; the aubio#402
130+
# const-pointer mismatch is a hard error on modern clang/gcc). Pin a prebuilt
131+
# cp310 wheel per shipped platform so aubio stays a first-class dependency and
132+
# installs with no compiler anywhere. The mac arm64 and linux x86_64 wheels are
133+
# built by .github/workflows/build-aubio-wheels.yml (cibuildwheel against NumPy
134+
# 2.x); the Windows wheel is built the same way. Platforms without a wheel here
135+
# (e.g. linux aarch64) fall back to the PyPI sdist.
134136
aubio = [
135137
{ path = "wheels/aubio-0.4.9-cp310-cp310-win_amd64.whl", marker = "sys_platform == 'win32'" },
138+
{ path = "wheels/aubio-0.4.9-cp310-cp310-macosx_11_0_arm64.whl", marker = "sys_platform == 'darwin' and platform_machine == 'arm64'" },
139+
{ path = "wheels/aubio-0.4.9-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", marker = "sys_platform == 'linux' and platform_machine == 'x86_64'" },
136140
]
137141
torch = [
138142
{ index = "pytorch-cu126", marker = "sys_platform == 'linux' and platform_machine == 'x86_64'" },

0 commit comments

Comments
 (0)