refactor(deps): repoint the core imports at the new layout - #189
Closed
LKSNDRTMLKV wants to merge 1 commit into
Closed
LKSNDRTMLKV wants to merge 1 commit into
LKSNDRTMLKV wants to merge 1 commit into
Conversation
Up to standards ✅🟢 Issues
|
This was referenced Aug 26, 2026
Member
Author
|
Superseded by #198, which landed the core 0.19.0 adaptation as one unit. This PR's commits are in The stack could not be landed incrementally: |
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.
Repoints every
dpp_domain::import at the module layoutdpp-coreadopts when it dissolves itsdomainbucket. Imports only — no behaviour is touched anywhere in this diff.Blocked, deliberately
CI cannot be green until the core change is released. This builds against unreleased
dpp-core; the pinned0.18.0in[workspace.dependencies]still has the old paths. Draft until the release lands, then repin and un-draft.Locally, against the sibling checkout at the core branch head:
cargo check --workspace --all-targets --all-features— cleancargo clippy --workspace --all-targets --all-features -- -D warnings— cleanTests were not run: the Docker tiers need PostgreSQL, Redis and NATS. This is a compiles-and-lints result, not a green suite.
Stacked
Based on
fix/access-filter-path-aware, notmain—mainis still written against published0.18.0and would absorb the product-group rename and the layout move in one go. Retarget this tomainbefore the parent merges; a deleted base closes the child irreversibly.The mapping
The general case is that a module kept its name and rose one level, so
dpp_domain::domain::error::DppErrorisdpp_domain::error::DppError. Five paths changed by more than that, and two of them are worth knowing because the obvious rewrite gets them wrong:domain::<x><x>— the general casedomain::gtin,domain::commodity_codeidentifier::gtin,identifier::commodity_codedomain::gtin::gs1_check_digitdpp_domain::gs1_check_digit— not underidentifier::gtin;check_digitis privatedomain::product_identityproductdomain::identitycredentialanddisclosureports::seal::Seal*(values)seal::Seal*—SealPortandGhostSealstay putports::compliance::Compliance{Result,Status,Finding,Error,ErrorKind}compliance::…—ComplianceRegistryandComplianceStrategystay putports::compliance::passthrough_registrypassthrough— leftportsentirelyports::identity_port,ports::plugin_host_portports::identity,ports::plugin_hostBoth awkward cases fail loudly at compile time, which is the argument for taking the break rather than shipping compatibility re-exports upstream.
What this measured on the way through
143 files name
dpp_domain. 108 broke; 35 did not — and every one of the 35 already imported from the crate root rather than reaching throughdpp_domain::domain::…. Where core re-exports a name at its root, this change uses that path, so those files are insulated from the next internal move too.That is worth acting on upstream: the root re-exports most of the model but stop short of the boundary.
ArchivePortandRegistrySyncPortare at the root;SealPort,IdentityPort,PluginHost,PassportRepository,SealedEnvelope,VersionedSchemaRegistry,LensRegistry,PassportRefandfilter_by_audienceare not — so one adapter file writes both idioms for the same job. Re-exporting the whole boundary would make the next reorganisation cost this repository nothing.Four crates and the CLI never name
dpp_domainat all:dpp-identity,dpp-common,dpp-factor-data, andcli.dpp-resolvernames it in three files, all root imports, all untouched.