Skip to content

fix(client-python): ship the Apache-2.0 LICENSE in the published package - #1031

Open
sudo-ai-git wants to merge 1 commit into
caura-ai:mainfrom
sudo-ai-git:fix/ship-license-in-python-client
Open

sudo-ai-git wants to merge 1 commit into
caura-ai:mainfrom
sudo-ai-git:fix/ship-license-in-python-client

Conversation

@sudo-ai-git

@sudo-ai-git sudo-ai-git commented Aug 28, 2026 •

Copy link
Copy Markdown

Part of #969 (Python client only).

Problem: clients/python/ declared Apache-2.0 (license = { text = ... }) but shipped no license text — setuptools had no LICENSE to pick up for the wheel/sdist.

Change: copy the repo-root LICENSE into clients/python/LICENSE. With setuptools>=77 the LICENSE present at the package root is auto-detected into *.dist-info/licenses/, so no explicit license-files config is needed.

Note on the earlier duplicate: an initial revision added [tool.setuptools.data-files] license-files = ["LICENSE"], which forced a second, legacy *.data/data/license-files/LICENSE copy into the wheel. Removed — only the intended dist-info/licenses/LICENSE copy remains.

Verified: python -m build --wheel then unzip -l shows exactly one LICENSE entry (caura_client-...dist-info/licenses/LICENSE), no data/license-files copy. Commit is signed off (DCO).

Scope is intentionally limited to the Python client; the other packages in #969 (the remaining npm/TS client dirs) are not touched here.

@Eldad-Caura

Copy link
Copy Markdown
Member

Thank you for adding the Python package license. Two changes are still needed: commit d812fa2 needs your own Signed-off-by trailer, and the built wheel currently contains two LICENSE copies. Please keep one intended packaged copy, narrow the PR wording so it does not claim to close all of #969 while other packages remain uncovered, rebase onto current main, and force-push the signed update.

@sudo-ai-git
sudo-ai-git force-pushed the fix/ship-license-in-python-client branch from d812fa2 to 891d90e Compare September 6, 2026 05:19
Part of caura-ai#969. The Python client declared Apache-2.0 but shipped no license
text. Copy the repo-root LICENSE into clients/python/ so setuptools
auto-includes it in the wheel's dist-info/licenses/ (the modern PEP 639
location).

Do NOT add an explicit [tool.setuptools.data-files] license-files entry: with
setuptools>=77 the LICENSE present at the package root is already auto-detected
into `*.dist-info/licenses/`, and forcing it again via data-files produced a
duplicate `*.data/data/license-files/LICENSE` copy in the wheel. Only the
dist-info copy is intended.

Verified: `python -m build --wheel` -> unzip -l shows exactly one LICENSE at
`caura_client-...dist-info/licenses/LICENSE`; no data/license-files copy.

Signed-off-by: sudo-ai-git <sudo-ai-git@users.noreply.github.com>
@sudo-ai-git
sudo-ai-git force-pushed the fix/ship-license-in-python-client branch from 891d90e to 19f71a1 Compare September 7, 2026 14:36
@sudo-ai-git

Copy link
Copy Markdown
Author

Rebased onto current upstream/main (now at 511366d) and force-pushed. Branch already had Signed-off-by on 19f71a1, commit message is Part of #969 (not Closes), and wheel verification shows single LICENSE at dist-info/licenses/ — no duplicate data/license-files copy. Let me know if the DCO check still flags anything — happy to amend.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants