Skip to content

ci: run clippy for arrow-pyarrow - #10758

Merged
alamb merged 1 commit into
apache:mainfrom
Lstarsky0:ci/clippy-arrow-pyarrow
Aug 19, 2026
Merged

ci: run clippy for arrow-pyarrow#10758
alamb merged 1 commit into
apache:mainfrom
Lstarsky0:ci/clippy-arrow-pyarrow

Conversation

@Lstarsky0

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

Closes #10757.

Rationale for this change

Continuing from #10724, which added the missing test and clippy steps for arrow-cmp. arrow-pyarrow was the other one, and it's the last published crate in the workspace with no clippy run at all.

What changes are included in this PR?

One step in integration.yml's Pyarrow C Data Interface job, after the Rust tests and inside the same venv.

It goes there rather than in arrow.yml's clippy job, where the rest of the arrow-* crates are linted, because that job runs in the amd64/rust container and pyo3 needs an interpreter to link against. This job already has one, and its toolchain step already installs clippy without using it.

Two invocations instead of the four arrow.yml runs per crate: arrow-pyarrow declares no default feature, so the bare and --no-default-features forms of the dependency check are the same command as --all-features.

Are these changes tested?

Both commands pass on main as written, so nothing goes red on merge — the point is that a future warning will. I ran them under a fresh venv the way the job does, and dropped a probe lint into arrow-pyarrow/src/lib.rs to confirm the step fails rather than passing vacuously.

One thing I'd rather you decided: the job is a three-way matrix over pyarrow 15/16/17, and the lint result doesn't depend on which one, so this runs three times for the same answer. I left it that way because gating a step on a matrix value isn't a pattern used anywhere else in these workflows, but a standalone clippy job — only needing setup-python, not the venv or pyarrow itself — would run it once, and I'm happy to send that instead.

It is the only published crate in the workspace without a clippy run.
The step goes in the pyarrow integration job rather than arrow.yml's
clippy job, which runs in a container with no interpreter for pyo3 to
link against.

Closes apache#10757.

@alamb alamb left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@alamb alamb left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for this @Lstarsky0

@alamb
alamb merged commit c378c1a into apache:main Aug 19, 2026
42 checks passed
@alamb alamb added the development-process Related to development process of arrow-rs label Aug 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

development-process Related to development process of arrow-rs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

arrow-pyarrow is the only published crate with no clippy run

2 participants