Skip to main content

Crate prov_config

Crate prov_config 

Source
Expand description

Pure workspace policy and codec types.

This crate deliberately contains no filesystem discovery or pointer resolution. It describes, parses, serializes, and diagnoses workspace policy values; the prov crate applies that policy to a mutable workspace.

Re-exports§

pub use config::About;
pub use config::ConfigIssue;
pub use config::ConfigIssueKind;
pub use config::FIELD_TYPES;
pub use config::FieldSpec;
pub use config::History;
pub use config::OpenClosed;
pub use config::ROOT_CONFIG_KEY;
pub use config::RelationDef;
pub use config::RelationStyleConfig;
pub use config::SPEC_VERSION;
pub use config::WorkspaceConfig;
pub use config::diagnose;
pub use config::field_type_as_config_str;
pub use config::field_type_from_config_str;
pub use config::metadata_format_from_str;
pub use config::metadata_format_str;
pub use config::spec_ahead;
pub use vocabulary::Term;
pub use vocabulary::Vocabulary;

Modules§

config
Workspace configuration — the typed policy a standalone/CLI workspace reads from its config document (the config-relation target from the root, DESIGN §6’s reachability move applied to policy) and from its root’s prov: frontmatter block.
vocabulary
Controlled vocabularies — the term sets that make fields references (tags, audiences, statuses) resolvable and therefore consistent.

Enums§

Fixity
How far content checksums cover a workspace.
IdStorage
Where a document’s stable id is persisted. Defined in prov-graph, because it is the one identity setting that changes what a link resolves to — a reader has to know whether frontmatter is a place an id can be found. Where a document’s stable ID is persisted — the identity-storage axis (DESIGN §5). Orthogonal to when an ID is minted (prov’s Registration) and to how references are spelled; this is purely the ID’s home.

Functions§

is_valid_workspace_id
Whether name is a usable workspace self-name.
nearest_vocabulary_term
The closest live vocabulary term, if it is within the policy’s typo threshold. Kept as a policy-level operation so callers do not need access to the crate-private edit-distance implementation.
vocabulary_distance
The edit distance when two vocabulary-like strings are near enough to be considered a typo.
vocabulary_terms_near
Whether two strings are within the typo threshold used by diagnostics.