Skip to content

Commit 027aa86

Browse files
author
Yanjun
committed
fix(v0.8.5): pin PyPI publisher packages-dir to .dist/ + sync_mirrors path
The v0.8.4 root-cleanup hid the build output dir to .dist/ and moved scripts/ → .scripts/, but two CI/release artifacts still pointed at the legacy paths: 1. .github/workflows/release.yml — pypa/gh-action-pypi-publish defaults to dist/ for the package upload directory. Without an explicit packages-dir, the v0.8.5 release ran 'python -m build --outdir .dist' successfully but the publish step reported "no Python distribution packages to publish in the directory 'dist/'" and failed. Add packages-dir: .dist/. 2. .scripts/build_plugin.py — the defense-in-depth mirror-sync step on line 129 referenced repo_root/'scripts'/sync_plugin_mirrors.py which no longer exists (relocated to .scripts/). The build still succeeded because the check is non-fatal (a missing script just skips), but the .zip bundle wouldn't have benefited from the pre-flight mirror parity check. Tag v0.8.5 was deleted from origin so this commit can be the new tag target — re-tag immediately after this lands.
1 parent 72286ba commit 027aa86

2 files changed

Lines changed: 7 additions & 2 deletions

File tree

.github/workflows/release.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,10 @@ jobs:
131131
uses: pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b # release/v1
132132
with:
133133
skip-existing: true
134+
# v0.8.5 — build now writes to .dist/ (per the v0.8.4 root-
135+
# cleanup). The PyPA publish action defaults to dist/, so we
136+
# point it at the hidden directory explicitly.
137+
packages-dir: .dist/
134138

135139
- name: Build Cowork .zip plugin bundle
136140
# v0.5.20: produce the drag-drop bundle Cowork users upload

.scripts/build_plugin.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ def main(argv: list[str] | None = None) -> int:
9999
"--out",
100100
type=Path,
101101
default=None,
102-
help="Destination directory (default: <repo-root>/dist).",
102+
help="Destination directory (default: <repo-root>/.dist/).",
103103
)
104104
p.add_argument(
105105
"--version",
@@ -126,7 +126,8 @@ def main(argv: list[str] | None = None) -> int:
126126
# `.claude/<dir>/X.md` (project) and `<repo>/<dir>/X.md` (bundle)
127127
# MUST contain identical bytes. See scripts/sync_plugin_mirrors.py
128128
# docstring + ``L2_DOCTRINE/boundary.md`` § "Legacy import shims".
129-
sync_script = repo_root / "scripts" / "sync_plugin_mirrors.py"
129+
# v0.8.4 root-cleanup (2026-05-12): scripts/ relocated to .scripts/.
130+
sync_script = repo_root / ".scripts" / "sync_plugin_mirrors.py"
130131
if sync_script.is_file():
131132
rc = subprocess.call(
132133
[sys.executable, str(sync_script)],

0 commit comments

Comments
 (0)