Skip to content

Commit 659dd19

Browse files
fix(packaging): force --wheel builds, drop broken sdist path
Greptile P1 + P2 on the slim/heavy split: - `bin/publish-pypi` heavy `rye build --clean` missing `--wheel`. Without it, rye defaults to sdist-then-wheel-from-sdist; the wheel build off the unpacked sdist can't resolve adk/'s `force-include = "../src/agentex/lib"`, silently producing an empty agentex-sdk wheel. Apply to slim too for consistency with CI (which always passes --wheel). - `adk/pyproject.toml` sdist `include = ["/../src/agentex/lib/**"]` is malformed: leading `/` is project-root-relative, `..` navigation outside the project root isn't honored by hatchling. Drop the entry; sdist support for the dual-package layout is deferred (wheel-only is enforced by CI + publish-pypi via `--wheel`). Verified locally: both wheels build cleanly with `uvx pyproject-build --wheel` and have disjoint contents (slim: 0 agentex/lib/* files; heavy: 347 lib/* files + no top-level client surface). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 73a7a3b commit 659dd19

2 files changed

Lines changed: 8 additions & 6 deletions

File tree

adk/pyproject.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,10 @@ bypass-selection = true
9797
[tool.hatch.build.targets.wheel.force-include]
9898
"../src/agentex/lib" = "agentex/lib"
9999

100+
# Sdist deferred: hatchling can't represent the wheel's ../src/agentex/lib
101+
# force-include in an sdist include list. CI + bin/publish-pypi pass --wheel.
100102
[tool.hatch.build.targets.sdist]
101103
include = [
102104
"/pyproject.toml",
103105
"/README.md",
104-
"/../src/agentex/lib/**",
105106
]

bin/publish-pypi

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,17 @@
1919

2020
set -eux
2121

22-
# Slim Stainless-managed client (root) — new `agentex-sdk-client` PyPI name.
22+
# Slim Stainless-managed client (root) — `agentex-sdk-client` on PyPI.
2323
mkdir -p dist
24-
rye build --clean
24+
rye build --clean --wheel # --wheel: sdist deferred (see adk/pyproject.toml).
2525
rye publish --yes --token="${AGENTEX_SDK_CLIENT_PYPI_TOKEN:-$PYPI_TOKEN}"
2626

27-
# Heavy ADK overlay (adk/) — keeps the existing `agentex-sdk` PyPI name.
28-
# Pins `agentex-sdk-client` which the previous step just published.
27+
# Heavy ADK overlay (adk/) — `agentex-sdk` on PyPI; pins the slim above.
2928
(
3029
cd adk
3130
mkdir -p dist
32-
rye build --clean
31+
# --wheel load-bearing: rye's sdist-then-wheel default can't resolve
32+
# the force-include of ../src/agentex/lib → silent empty wheel.
33+
rye build --clean --wheel
3334
rye publish --yes --token="${AGENTEX_PYPI_TOKEN:-$PYPI_TOKEN}"
3435
)

0 commit comments

Comments
 (0)