feat(packaging) + chore(workplan): complete T04 for CYA-WP-0004 — MANIFEST.in, pyproject improvements, verified clean sdist+wheel build and install

This commit is contained in:
2026-05-27 00:05:26 +02:00
parent f500a35ff0
commit e6b9610b25
3 changed files with 23 additions and 8 deletions

6
MANIFEST.in Normal file
View File

@@ -0,0 +1,6 @@
include LICENSE
include README.md
include pyproject.toml
recursive-include src *.py
global-exclude __pycache__
global-exclude *.py[co]

View File

@@ -35,6 +35,11 @@ where = ["src"]
[tool.setuptools] [tool.setuptools]
zip-safe = false zip-safe = false
include-package-data = true
license-files = ["LICENSE"]
[tool.setuptools.package-data]
"*" = ["py.typed"]
[project.urls] [project.urls]
Homepage = "https://github.com/worsch/can-you-assist" Homepage = "https://github.com/worsch/can-you-assist"

View File

@@ -122,19 +122,23 @@ completed: "2026-05-27"
```task ```task
id: CYA-WP-0004-T04 id: CYA-WP-0004-T04
status: todo status: done
priority: high priority: high
state_hub_task_id: "d49a3362-865f-4397-b127-372a2aa2c4a2" state_hub_task_id: "d49a3362-865f-4397-b127-372a2aa2c4a2"
started: "2026-05-27 ralph iter 4"
completed: "2026-05-27"
``` ```
- Adopt the modern `build` frontend (`python -m build`). **Done.**
- Ensure `pyproject.toml` + package data produces high-quality sdists and wheels.
- Add or improve `MANIFEST.in` / `pyproject.toml` configuration so that necessary files (README, LICENSE, etc.) are included.
- Verify that the resulting packages can be installed in a fresh environment and provide a working `cya` command.
**Acceptance criteria**: - Created `MANIFEST.in` for proper sdist inclusion.
- `python -m build` produces a clean sdist and wheel. - Improved `pyproject.toml` (include-package-data, license-files under setuptools, package-data).
- The wheel installs correctly and `cya --version` works in an isolated environment. - `python -m build` successfully produces clean sdist + wheel.
- Verified in isolated venv: the wheel installs cleanly and `cya --version` works (shows proper dev version from setuptools_scm).
**Acceptance criteria met**:
- Clean, usable distribution packages can now be built.
- They install and run correctly in fresh environments.
### T05 — Create a lightweight release process ### T05 — Create a lightweight release process