[
https://issues.apache.org/jira/browse/SPARK-59302?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated SPARK-59302:
-----------------------------------
Labels: pull-request-available (was: )
> Include the LICENSE file in the maturin sdist so PyPI accepts it
> ----------------------------------------------------------------
>
> Key: SPARK-59302
> URL: https://issues.apache.org/jira/browse/SPARK-59302
> Project: Spark
> Issue Type: Bug
> Components: Connect
> Affects Versions: 5.0.0
> Reporter: Hyukjin Kwon
> Assignee: Hyukjin Kwon
> Priority: Major
> Labels: pull-request-available
>
> maturin bundles the LICENSE into the wheel automatically (as
> *.dist-info/licenses/LICENSE) but does not pull the repo-root LICENSE into
> the sdist, since the maturin crate lives under crates/pyspark-rs/ and a file
> at the repository root is outside it. Both artifacts still declare
> "License-File: LICENSE" in their metadata, so PyPI (PEP 639) rejects the
> sdist with:
> 400 License-File LICENSE does not exist in distribution file
> pyspark_client_rust-<v>.tar.gz at pyspark_client_rust-<v>/LICENSE
> while the wheels upload fine. This surfaced at finalize of 4.2.0 (the wheels
> reached PyPI; the sdist was rejected). Neither `twine check` nor `cargo
> publish --dry-run` validates PEP 639 license-file presence, so the dry runs
> stayed green.
> Fix (PR https://github.com/apache/spark-connect-rust/pull/97):
> 1. pyproject.toml: add LICENSE to [tool.maturin] include with format =
> "sdist".
> 2. release.yml: assert every declared License-File is present in the built
> sdist (dry run + RC), so this fails CI instead of a real finalize upload.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]