refactor: consolidate lib modules into four domain-cohesive libraries#5844
Merged
paullatzelsperger merged 1 commit intoJun 25, 2026
Merged
Conversation
Implements the decision record 2026-06-18-lib-module-consolidation, the
companion to the SPI module consolidation: the ~42 fine-grained *-lib modules
are merged into four coarse, domain-cohesive implementation libraries and the
layout is flattened.
- jsonld-lib (json + json-ld + transform + validator)
- core-lib (generic, non-connector library code: query, crypto-common,
keys, token, encryption, auth-{authentication,authorization}-oauth2,
verifiable-credentials, decentralized-claims(+sts-remote),
jersey-providers, boot, http, nats, util, sql, api, management-api)
- control-plane-lib (connector-specific: policy-engine, policy-evaluator, store,
control-plane-policies, catalog-util,
control-plane-transfer-provision, state-machine)
- dsp-lib (collapses the 13 data-protocols/dsp/dsp-lib modules — the
{catalog,negotiation,transfer-process} x {http-api,transform,
validation} matrix, dsp-version-transform-lib, and three empty
meta modules — into a single library)
jws2020-lib is left standalone, as it is constrained by a dependency on
:extensions:common:json-ld; it can be folded into core-lib in a later iteration.
All ~150 consumer build files, the BOMs and settings.gradle.kts are rewritten to
the new module paths. A latent dead dependency in control-plane-spi (an unused
implementation dependency on the former util-lib, now part of core-lib) is
removed; it had no usages and would otherwise invert the spi<-lib layering into a
cycle.
The resulting libraries form an acyclic graph layered above the SPI modules:
jsonld-lib -> spi; core-lib -> jsonld-lib + spi; control-plane-lib -> core-lib +
spi; dsp-lib -> jsonld-lib + spi.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
wolf4ood
approved these changes
Jun 25, 2026
This was referenced Jun 25, 2026
paullatzelsperger
added a commit
to eclipse-edc/IdentityHub
that referenced
this pull request
Jun 26, 2026
* chore: adopt consolidated EDC lib modules Adopts the consolidated EDC lib module structure. The EDC Connector merges its ~42 fine-grained *-lib artifacts into four (core-lib, jsonld-lib, control-plane-lib, dsp-lib); this remaps IdentityHub onto the new coordinates: - consolidates the gradle/libs.versions.toml lib aliases onto the new modules (edc-lib-core, edc-lib-jsonld, edc-lib-controlplane); edc-lib-jws2020 is unchanged, as the Connector deliberately leaves jws2020-lib standalone, - remaps all libs.edc.lib.* accessors across the build files and removes the now-redundant duplicate catalog dependency entries. Depends on the upstream consolidation (eclipse-edc/Connector#5844) being merged and published; verified locally against a publishToMavenLocal build (full compileJava/compileTestJava/compileTestFixturesJava pass). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * trigger ci * trigger ci * stabilize launcher test --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
paullatzelsperger
added a commit
to eclipse-dataspace-hub/MinimumViableDataspace
that referenced
this pull request
Jun 26, 2026
* chore: adapt to new lib module structure Adapts the Minimum Viable Dataspace to the consolidated EDC lib module structure. The EDC Connector merges its ~42 fine-grained *-lib artifacts into four (core-lib, jsonld-lib, control-plane-lib, dsp-lib); this remaps the MVD's gradle/libs.versions.toml lib coordinates onto the new modules: - transform-lib, json-ld-lib -> jsonld-lib - crypto-common-lib, keys-lib, token-lib -> core-lib - jws2020-lib is unchanged, as the Connector leaves it standalone. The lib aliases are consolidated accordingly and the duplicate catalog dependency entries removed across the build files. Depends on the upstream consolidation (eclipse-edc/Connector#5844) being merged and published; verified locally against a publishToMavenLocal build. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * trigger ci --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
paullatzelsperger
added a commit
to eclipse-dataspace-hub/jad
that referenced
this pull request
Jun 26, 2026
* chore: adapt to new lib module structure Adapts JAD to the consolidated EDC lib module structure. The EDC Connector merges its ~42 fine-grained *-lib artifacts into four (core-lib, jsonld-lib, control-plane-lib, dsp-lib). JAD depends only on libs that now ship in core-lib (http, util, sql, token, keys, auth-authentication-oauth2), so the six edc-lib-* catalog aliases collapse to a single edc-lib-core and the build files are remapped accordingly. The now-redundant test-only http dependency is dropped: core-lib is a main implementation dependency, so it is already on the test classpath. Depends on the upstream consolidation (eclipse-edc/Connector#5844) being merged and published; verified locally against a publishToMavenLocal build. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * trigger ci --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
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.
What this PR changes/adds
Implements the decision record
2026-06-18-lib-module-consolidationjsonld-libcore-libcontrol-plane-libdsp-libdata-protocols/dsp/dsp-libmodules — the {catalog,negotiation,transfer-process} × {http-api,transform,validation} matrix,dsp-version-transform-lib, and three empty meta modulesAll ~150 consumer
build.gradle.kts, thedist/bom/BOMs andsettings.gradle.ktsare rewritten to the new paths.Why it does that
implements the D-R
Further notes
classpath, as accepted in the D-R.
jws2020-libis left standalone, because it is constrained by a dependency on:extensions:common:json-ld; it can be folded intocore-libin a later iteration.control-plane-spi(an unusedimplementationof the formerutil-lib, now part ofcore-lib); it had no usages and would otherwise invert thespi ← liblayering into a cycle.jsonld-lib → spi;core-lib → jsonld-lib + spi;control-plane-lib → core-lib + spi;dsp-lib → jsonld-lib + spi.Who will sponsor this feature?
TODO: @-mention the sponsoring committer.
Linked Issue(s)
n/a — tracked via the decision record.
🤖 Generated with Claude Code