dbtsai opened a new pull request, #293: URL: https://github.com/apache/spark-connect-rust/pull/293
### What changes were proposed in this pull request? Strengthen the shared release wheel recipe by passing `--locked` to Maturin and failing artifact upload when no wheel was produced. Constrain Maturin installation to `>=1.0,<2.0` in both wheel and sdist jobs, matching the existing `pyproject.toml` build-backend requirement, and document these build contracts. Follow-up to #165 and SPARK-60917. This is inherited release hardening; the original refactor retained these behaviors. ### Why are the changes needed? A manually selected release branch with an inconsistent lockfile can otherwise produce a wheel after Cargo silently updates its dependency graph. Requiring the checked-in lockfile makes the shared recipe enforce that contract independently of prior CI. The Maturin bound keeps direct CLI builds within the declared backend range, and an absent wheel should fail the build check instead of issuing an upload warning. ### Does this PR introduce _any_ user-facing change? No API or runtime change. Release wheel builds now require an up-to-date checked-in `Cargo.lock` and a produced wheel. ### How was this patch tested? - `actionlint` 1.7.12 passed the shared helper, wheel-check and release workflows; shell syntax and whitespace checks passed. - `cargo fmt --all --check` passed. - Genuine Cargo and Maturin 1.16.0 regression fixtures passed: a valid lock builds successfully, a stale lock fails with `--locked` and remains unchanged, and the unlocked control builds while rewriting the lockfile. All Cargo/Maturin processes used the serialized offline campaign wrapper and private tool/cache/target directories. - Structural checks verified that both Maturin CLI install ranges match `pyproject.toml`, artifact consumers keep their names, and no native/Python API or dependency inputs changed. Maturin's supported minimum v1.0.0 forwards `--locked` to metadata and compilation. - Genuine local Claude Code reviewed the entire follow-up diff after the second post-merge review; all findings are assessed in the review evidence. **Draft — required validation remains pending.** Repository library tests, integration-test compilation with and without `wasm-udf`, and Clippy were attempted but stopped before compilation because the required offline private cache lacks `prost`. The current project wheel builds, full release dry run, API introspection and official parity checks have not run for this patch. Existing PR #165 CI results are historical evidence, not validation of this follow-up. No checks are claimed as passing when blocked or unrun. ### Was this patch authored or co-authored using generative AI tooling? Generated-by: OpenAI Codex Reviewed-by: Claude Code 2.1.314 (`system.ai.claude-fable-5-1`) This pull request and its description were written by Isaac. -- 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]
