Skip to main content

Module package

Module package 

Source
Expand description

Local package-manager foundation for the Soroban DevKit (sdkt), .

This module lays the groundwork for a future package registry without any network or remote-registry functionality. It supports:

  • a package manifest ([package] with name/version/description),
  • local path-only dependencies ([dependencies] with path = "..."),
  • offline validation of package metadata and the local dependency graph.

No git, HTTP, or registry resolution is performed. The dependency-graph cycle/duplicate/self checks reuse the same topological-sort algorithm that project::resolve_deploy_order uses, extracted into topo_sort so the two resolvers share one implementation.

Structs§

BundleEntry
One resolved dependency recorded in a PackageBundle descriptor.
PackageBundle
A self-contained, offline package bundle descriptor ().
PublishReadiness
Result of a publish --dry-run readiness check ().

Enums§

PackageError
Errors raised while validating a local package manifest/dependency graph.

Functions§

best_version_match
Resolve the best available dependency version that satisfies a semver constraint, given a list of (tag, commit) pairs (already fetched from the remote via git ls-remote --tags). Pure: no I/O, no allocation beyond the returned Option.
pack
Bundle a project into a portable offline artifact ().
parse_manifest
Parse a manifest TOML string into DevKitConfig.
publish_plan
Evaluate publish readiness for a project ( publish --dry-run).
topo_sort
Generic topological sort (Kahn’s algorithm) over a string-keyed graph.
unpack
Reconstruct a project from a bundle artifact ( round-trip).
validate_dependencies
Validate the local [dependencies] graph.
validate_git_url
Validate a Git remote URL’s scheme and basic shape (no network access).
validate_manifest
Validate an entire local package manifest: metadata + dependency graph.
validate_package
Validate the [package] manifest metadata in isolation.
validate_version_format
Validate a single [package] version string.
verify_bundle_equivalence
Verify a reconstructed (unpacked) bundle reproduces the original sdkt.lock sha256 and per-git-dependency integrity exactly ( round-trip).