1pub mod archive;
8#[cfg(feature = "testing")]
9pub mod conformance;
10#[cfg(feature = "testing")]
11mod container_conformance;
12pub mod containment;
13pub mod error;
14pub mod fidelity;
15pub mod format;
16pub mod governor;
17pub mod ladder;
18pub mod probe;
19pub mod registry;
20pub mod size;
21pub mod source;
22#[cfg(any(test, feature = "testing"))]
23pub mod testing;
24
25pub use archive::{
26 ArchiveRead, ArchiveWrite, Codec, Container, CreateOpts, DecodeOpts, EncodeOpts, Entry,
27 EntryKind, EntryMeta, OpenOpts, PlainSink, Sink,
28};
29pub use containment::{check_symlink_target, safe_join};
30pub use error::{Error, Result};
31pub use fidelity::{Fidelity, FidelityReport, MetaFields, Rung};
32pub use format::{
33 CodecCaps, ContainerCaps, CorruptionDetection, FormatId, FormatKind, FormatMeta, MagicRule,
34};
35pub use governor::{BudgetInputs, Governor, LeaseSet, default_memory_limit, resolve_workers};
36pub use ladder::{Resolved, StreamPolicy, resolve};
37pub use probe::{
38 Chain, PROBE_LEN, chain_for_new_path, probe, resolve_chain, resolve_chain_deep,
39 resolve_chain_deep_with,
40};
41pub use registry::{FormatRow, Registry};
42pub use size::format_size;
43pub use source::{
44 Counting, CountingWriter, DEFAULT_MAX_RATIO, FileSource, PeekSource, RATIO_FLOOR, RatioGuard,
45 ReaderSource, SeekRead, Source, SourceCaps, SpillPolicy, SpillSource, StreamOnly,
46};
47
48pub const VERSION: &str = env!("CARGO_PKG_VERSION");