Expand description
Filesystem-backed metadata store.
Binding spec: docs/STORE.md (NORMATIVE shared
spec for layout, schema, lock protocol, atomic write, normalization).
Public API surface: docs/PUBLIC_API.md §2 (Store trait), §3 (Metadata).
§Entry points
Store— the trait surface implementations expose.FsStore— filesystem-backed implementation rooted at a configurable directory (default./papers, under the cwd; ADR-0036).Metadata/DoigetExtension— the on-disk schema, mirrored fromdocs/STORE.md§2.
§Other writers
A store may also be written by another tool – BiblioFetch.jl stores stay
readable, though the shared contract is retired (ADR-0060). Writers follow
the lock protocol in docs/STORE.md §4 and the atomic-write sequence in §5. Per §6, doiget MUST NOT overwrite reserved
top-level fields previously written by another tool — see FsStore::write.
Re-exports§
pub use metadata::DoigetExtension;pub use metadata::Metadata;pub use metadata::ORIGIN_USER_SUPPLIED;pub use render::to_bibtex;pub use render::to_csl_array;
Modules§
- citekey
- Citation keys from a template (#610).
- metadata
- Metadata struct matching
docs/STORE.md§2 /docs/PUBLIC_API.md§3. - render
- Citation renderers for stored
Metadata— BibTeX and CSL JSON 1.0.
Structs§
- Entry
Info - Brief summary of a stored entry; returned by
Store::list_recent/Store::search. - FsStore
- Filesystem-shaped
Storeimplementation rooted at<root>.
Enums§
- Store
Error - Errors emitted by
Storeimplementations. - User
Fields - Who is authoritative for the user-authored
[doiget]fields (tags,collections,annotation) on a write.
Traits§
- Store
- Filesystem-shaped metadata store, semver-locked per
docs/PUBLIC_API.md§2.
Functions§
- blocking_
section - Run a synchronous
Storecall from async code without stalling the runtime (#590).