andygrove opened a new pull request, #15: URL: https://github.com/apache/datafusion-java/pull/15
## Summary - Adds `.github/workflows/build.yml` running on pushes to `main` and on PRs targeting `main`. - Sets up Temurin JDK 17 and a stable Rust toolchain, caches Maven (`~/.m2`) and cargo (`native/target`) artifacts, then runs `make test`. ## Rationale The project currently has no CI: `format.yml` was removed in #7 to clear a deadlock when GitHub Actions wasn't yet enabled, and #11 nulled out the stale branch protection rules left behind. With Actions now in place, we need at least one workflow that exercises the build on every PR so regressions surface before merge. `make test` is the canonical full build entry point documented in `README.md` and `CONTRIBUTING.md` — it depends on the `native` target (so it builds the Rust crate first) and then runs the JVM JUnit suite, which is exactly what CI needs to cover. ## What's in this PR - `.github/workflows/build.yml`: single `build` job on `ubuntu-latest`, JDK 17 (Temurin) with Maven cache via `actions/setup-java`, Rust stable via `dtolnay/rust-toolchain`, cargo cache via `Swatinem/rust-cache` scoped to the `native` workspace, then `make test`. ## Not in this PR - Spotless / Apache RAT / clippy / `cargo fmt` checks. These run at Maven's `verify` phase or via separate cargo commands and aren't wired into the Makefile yet; they can be added in a follow-up once we decide whether to extend the Makefile or invoke them directly from CI. - Matrix builds across OS or JDK versions — start minimal, expand if needed. -- 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]
