Skip to main content

Crate shipwright_host

Crate shipwright_host 

Source
Expand description

Binary-resolution algorithm for shipwright host libraries.

Pure function. No I/O. The caller supplies a probe closure (Path -> Option<ProbedVersion>), the environment, PATH entries, the bundled directory, and the product’s declared sources. The resolver returns a Resolution describing which source succeeded, where, which version was observed, and a status (ok / ok-with-warning / deferred / prompt / error).

Conformance: the vectors in schemas/test-vectors.json are exercised by tests/conformance.rs. Every language port of this algorithm must pass the same vectors bit-for-bit.

Structs§

DotnetToolConfig
dotnet tool metadata for the dotnet-tool source.
EnvConfig
Env-var names this component consults.
ErrorDetails
Expected-vs-found details for a mismatch error.
PkgmgrConfig
Package-manager install targets for the pkgmgr source.
ProbedVersion
Probe result: what <binary> --version reports.
Resolution
Final output of resolve.
ResolveInput
Runtime inputs for a single resolve call.

Enums§

DeferredCheck
Deferred check kinds.
ErrorCode
Known error codes.
Platform
Canonical platform identifiers. Mirrors schemas/platforms.json.
PromptAction
Actionable prompt payload.
Source
Ordered discovery sources declared in shipwright.schema.json.
Status
High-level outcome category.
WarningCode
Known warning codes.

Functions§

resolve
The single entry point. Every host library (TS, Kotlin, C#, Dart, Zed) ports this function and passes schemas/test-vectors.json bit-for-bit.