Repository navigation
Conversation
… on the module path Supersedes the stale draft in #176. core exports fbs/proto only to the modules that need them; reader/writer require fsst/zstd (zstd optional). The writer's round-trip tests reach the reader on the test classpath, so the extra --add-reads/--add-exports live in the writer POM's test.modules.args, not in module-info. zstd is now a named module on the module path, so reader/writer enable native access for it by name. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…ves core (JDK 26) Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014XbfcWGFnphybshhTRjjUo
…utomatic-Module-Name for the rest csv/jdbc/inspector are named modules (inspect, not inspector, to match the package root). integration gets a code-less main descriptor so failsafe runs on the module path; the core test-jar now only ships the testing package (it re-declared core's packages, a split package on the module path). parquet, calcite, cli and the generators depend on jars without a descriptor or are tools, so they pin an Automatic-Module-Name instead. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014XbfcWGFnphybshhTRjjUo
…R 0024's decision Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014XbfcWGFnphybshhTRjjUo
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014XbfcWGFnphybshhTRjjUo
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Supersedes the stale draft #176; the decision and rules are recorded in ADR 0024 (updated from Proposed to Accepted).
Named modules (module name = package root):
core,fsst,reader,writer,csv,jdbc,inspector(io.github.dfa1.vortex.inspect, matching its package, not the artifact name).integrationgets a code-less main descriptor so failsafe runs on the module path too (2,951 tests).Stable
Automatic-Module-Nameforparquet,calcite,cli,fbs-gen,proto-gen: they depend on jars with no descriptor (hardwood, calcite) or are tools, which ADR 0024 says a published module should notrequires.performance,demo,fuzzare unpublished and stay on the classpath.Details:
coreexportsfbs/protoonly to the modules that need them;ArrayStats.fromFbsandVariantDatasuppress theexportslint where a generated type is part of a public signature.requiresthe reader: its tests see the reader on the test classpath, and the needed--add-reads/--add-exportsare test-JVM flags in the writer POM (test.modules.args).zstdis a named module, so native access is enabled by name (--enable-native-access=io.github.dfa1.zstd) instead ofALL-UNNAMED.coretest-jar now only shipscore.testing: it used to re-declare core's packages, a split package on the module path.DocsJavaCompilerTestcompiles the doc snippets against the module path as well as the classpath.jdk.incubator.vectorviacore'srequires static) is silenced in the root compiler config.Verified locally on JDK 25 and 26 (
./mvnw verify, plus the-Dtest.vector.args=leg); CI green on macOS, Linux and Windows.🤖 Generated with Claude Code