You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add Local Scripts to Reproduce Full CI and Perform Auto-Fixes #19227
Is your feature request related to a problem or challenge?
Motivation
AI coding agents are now capable of handling many simple, mechanical tasks in DataFusion. When assigning such tasks, it would be ideal if these agents could verify locally that their changes pass the full CI suite before opening a PR. Currently, the only way to check CI results is to submit a PR and wait for all remote CI jobs to complete, which can take around an hour and slows down iteration.
To improve this workflow, we should provide a simple script that reproduces the entire CI pipeline locally:
./dev/ci.sh # Run full CI locally
Without such a script, AI agents must infer CI behavior from configuration files and may spend unnecessary time/tokens running CI jobs one by one.
Note now we already have a ./dev/rust_lint.sh for all lint related checks, but it's not complete yet, and not include various tests. A full CI reproducing script should be wrap all existing CI test steps into scripts, and use them both in the local CI runner script, and also the GitHub workflow configuration .ymls.
Auto-Fix Script
We should also provide a companion script that performs best-effort automatic fixes:
./auto-fix.sh
This script would handle routine cleanups such as:
running cargo fmt
generating docs
adding Apache headers to newly added files
applying safe Clippy auto-fixes
any other common mechanical steps
This improves developer experience, and also make AI coding agent iterate faster and spend less token.
Activity
shifluxxc commentedon Dec 10, 2025
take
shifluxxc commentedon Dec 10, 2025
untake
geoffreyclaude commentedon Dec 10, 2025
./auto-fix.shwould definitely be super useful! I'd wire it up to be agit commithook.dev: Add CI doc prettier check to local `rust_lint.sh` (#19254)
adriangb commentedon Dec 20, 2025
I’m very much in favor of this
adriangb commentedon Dec 20, 2025
Literally just bit me: https://github.com/apache/datafusion/actions/runs/20395703139/job/58610984384?pr=19426
dev: Add a script to auto fix all lint violations (#19560)
alamb commentedon Mar 18, 2026
I think @2010YOUY01 has basically completed this and the scripts are here: https://github.com/apache/datafusion/tree/main/ci/scripts
I also have a PR here to try and make them easier to find
So let's close this issue for now and we can file a new ticket for any other new work
2010YOUY01 commentedon Mar 19, 2026
Now only the script for non-functional(e.g. lints) tests is done, we can do something similar for regular tests. Filed another issue to track:
dev: Add a script to auto fix all lint violations (apache#19560)