Skip to content

feat(java): bundle per-section dialect fixtures in the extensions artifact - #49

Merged
nielspardon merged 1 commit into
mainfrom
java-extensions-dialect-fixtures
Jul 28, 2026
Merged

feat(java): bundle per-section dialect fixtures in the extensions artifact#49
nielspardon merged 1 commit into
mainfrom
java-extensions-dialect-fixtures

Conversation

@nielspardon

Copy link
Copy Markdown
Member

What

The extensions artifact bundles the spec's extension YAMLs, text schemas and function test-case files as classpath resources under substrait/, but not the per-section dialect fixtures. This adds them:

from("$specDir/dialects/tests") { into("substrait/dialects/tests") }

so the artifact ships substrait/dialects/tests/{types,relations,expressions,functions,execution_behavior}_test.yaml alongside the resources it already carries.

Why

substrait-java still keeps the upstream spec as a substrait git submodule solely to read a handful of resources at build/test time. It already sources proto, ANTLR and extension YAMLs from these packaging artifacts; the per-section dialect fixtures are the last spec resource it reads directly from the submodule working tree. Shipping them here lets substrait-java drop the submodule entirely and source the whole spec from published artifacts.

Validation

  • ci_java.yml attaches the spec subtree and runs :extensions:build, so the new glob is exercised on this PR.
  • Verified locally by publishing the extensions SNAPSHOT to Maven Local and confirming the jar contains all five dialects/tests/*_test.yaml fixtures; substrait-java's full reactor build then passes against it with the submodule removed.

🤖 Generated with AI

…ifact

The extensions artifact bundles the spec's extension YAMLs, text schemas and
function test-case files as classpath resources under `substrait/`, but not the
per-section dialect fixtures (`substrait/dialects/tests/*_test.yaml`). Add them
so downstream consumers can load those fixtures from the artifact rather than
from a spec checkout.

This lets substrait-java drop its `substrait` git submodule: it currently reads
these fixtures from the submodule working tree, and this is the last spec
resource it needs that the extensions artifact does not yet ship.
@nielspardon
nielspardon merged commit 5719209 into main Jul 28, 2026
1 check passed
@nielspardon
nielspardon deleted the java-extensions-dialect-fixtures branch July 28, 2026 11:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants