kevinjqliu opened a new pull request, #3541: URL: https://github.com/apache/iceberg-rust/pull/3541
## Which issue does this PR close? - Follow-up to #3493. ## What changes are included in this PR? - `generate-python-license` fails when `cargo-about` leaves `<year>`, `<owner>` or `<copyright holders>` in its output. `cargo about generate` exits 0 and falls back to the SPDX template when it can't match a crate's license file (this happened with `libm`). - `pypi-publish` and `testpypi-publish` check every built wheel before publishing: `LICENSE` starts with the Apache License, has the generated third-party sections and no placeholders, and `NOTICE` has the Arrow, Avro and moka notices. PyPI files can't be replaced once uploaded, and this catches a wheel job added without the action or a maturin packaging change. - `LICENSING.md` updated where it describes what CI catches. ## Are these changes tested? Run locally with `cargo-about` 0.9.2 and `maturin` 1.9.4, using the step scripts extracted from the workflow files: - Action step with the real `about.toml`: passes. - Action step with a copy of `about.toml` whose `libm` checksum is zeroed: fails on the placeholder. - Wheel built after running the action (`uvx [email protected] build --profile dev -i python3`): check passes. - Wheel built from the symlinked root files: fails with `LICENSE has no third-party licenses`. - Wheels edited to contain a placeholder or a `NOTICE` without Avro, and a directory without wheels: all fail. - `actionlint` reports no issues in the new steps. The workflow runs themselves (release/nightly publish) were not run. ## AI Disclosure Written with GitHub Copilot (Claude Sonnet 5.5) and reviewed locally. Reviewer focus: the `unzip` call and glob on the ubuntu runner (tested with macOS `unzip`), and keeping the check step identical in both release workflows. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
