Skip to content

fix(xim): preserve namespace index identity (0.4.69) - #382

Merged
Sunrisepeak merged 1 commit into
mainfrom
fix/issue381-namespace-identity
Jul 25, 2026
Merged

fix(xim): preserve namespace index identity (0.4.69)#382
Sunrisepeak merged 1 commit into
mainfrom
fix/issue381-namespace-identity

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

Closes #381.

Summary

  • upgrade mcpplibs.xpkg to the published 0.0.46 identity model
  • preserve every (effective namespace, package.name) candidate in each repo
  • resolve explicit namespace:name exactly and report deterministic ambiguity for bare names
  • keep bare dependency behavior unchanged: it does not inherit the declaring package namespace
  • reject duplicate effective identities and report both descriptor paths
  • migrate index cache to v2 with namespace/default-namespace validation
  • bump xlings to 0.4.69 and add the reviewed design/implementation documents

Verification

  • mcpp build --no-cache --print-fingerprint (GCC 16.1.0, public mcpp-index)
  • mcpp test — 11 test programs passed, 0 failed; test_main 234 tests
  • bash tests/e2e/index_same_name_namespace_test.sh
  • index cache, sub-index search/install, refresh-on-missing, multi-repo interface regressions
  • SKIP_NETWORK_VERIFY=1 tools/linux_release.sh — GCC 15.1.0 musl, fully static 0.4.69 archive
  • bash tests/e2e/run_all.sh build/xlings-0.4.69-linux-x86_64.tar.gz — 33 passed; the sole local failure is the pre-existing project-context assertion seeing host Node v24.15.0
  • bash tests/e2e/custom_index_artifact_test.sh build/xlings-0.4.69-linux-x86_64/bin/xlings

Upstream dependency: openxlings/libxpkg#29 (0.0.46).

@Sunrisepeak
Sunrisepeak marked this pull request as ready for review July 25, 2026 06:52
@Sunrisepeak
Sunrisepeak merged commit 14959d6 into main Jul 25, 2026
7 checks passed
@Sunrisepeak
Sunrisepeak deleted the fix/issue381-namespace-identity branch July 25, 2026 07:08
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.

index: two packages sharing a name in one index collide — the second becomes unreachable even with an explicit ns:name

1 participant