1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
// SPDX-License-Identifier: BSD-3-Clause
// Copyright (C) 2026 Vallés Puig, Ramon
//! # siderust-archive
//!
//! Reusable Rust bindings for the [Siderust Archive](https://github.com/Siderust/archive),
//! the canonical, repo-agnostic store for scientific datasets (IERS time data,
//! SPICE-style kernels, planetary theories, …).
//!
//! ## Features
//!
//! | Feature | Effect |
//! |----------------|--------|
//! | `default` | Manifest + checksum + provenance APIs only. Zero network dependencies. |
//! | `vsop` | VSOP87A/E planetary theory tables (build-time generated via `build.rs`). |
//! | `elp` | ELP2000-82B lunar theory tables (build-time generated via `build.rs`). |
//! | `time` | IERS time-scale data: UTC-TAI, ΔT, EOP — types, parsers, bundled snapshot. |
//! | `bundled-time` | Compiled UTC-TAI / ΔT fallback snapshot (offline, no network). Implied by `time`. |
//! | `jpl` | JPL DE440/DE441 ephemeris download/cache manager. |
//! | `fetch` | Runtime network download for IERS and JPL datasets. Implies `time` and `jpl`. |
//! | `nutation` | IAU 2000A/2000B nutation coefficient tables (MHB2000). |
//! | `gravity` | EGM2008 geopotential coefficients (low-degree subset). |
//! | `atmosphere` | NRLMSISE-00 atmosphere model table. |
//! | `frames` | SPICE-style frame definitions (stub). |
//! | `constants` | SPICE-style body constants (stub). |
//! | `lagrange` | Sun-Earth Lagrange Chebyshev kernels (stub). |
//! | `pluto` | Pluto abbreviated series — Meeus (1998) (stub). |
//!
//! ## Typical usage
//!
//! ```toml
//! # Manifest + checksum only:
//! siderust-archive = "0.1"
//!
//! # IERS time data with offline fallback:
//! siderust-archive = { version = "0.1", features = ["time", "bundled-time"] }
//!
//! # Full runtime IERS download + JPL ephemeris manager:
//! siderust-archive = { version = "0.1", features = ["fetch"] }
//!
//! # VSOP87 planetary theory tables:
//! siderust-archive = { version = "0.1", features = ["vsop"] }
//! ```
//!
//! ## Modules
//!
//! | Module | Feature | Purpose |
//! |---------------|--------------|---------|
//! | [`manifest`] | always on | TOML manifest schema v1: archive and family manifests. |
//! | [`checksum`] | always on | SHA-256 hex helpers and mismatch error. |
//! | [`provenance`]| always on | Generic dataset provenance record. |
//! | [`error`] | always on | Shared `ArchiveError` type. |
//! | [`vsop`] | `vsop` | VSOP87A/E coefficient tables and accessor types. |
//! | [`elp`] | `elp` | ELP2000-82B lunar theory coefficient tables. |
//! | [`time`] | `time` | IERS UTC-TAI / ΔT / EOP types, parsers, and (with `fetch`) download manager. |
//! | [`jpl`] | `jpl` | JPL DE440/DE441 dataset manager. |
//! | [`nutation`] | `nutation` | IAU 2000A/2000B nutation coefficient tables (MHB2000). |
//! | [`gravity`] | `gravity` | EGM2008 geopotential coefficients (low-degree subset). |
//! | [`atmosphere`]| `atmosphere` | NRLMSISE-00 atmosphere model table. |
//! | [`frames`] | `frames` | SPICE-style frame definition references (stub). |
//! | [`constants`] | `constants` | SPICE-style body-constant references (stub). |
//! | [`lagrange`] | `lagrange` | Sun-Earth Lagrange Chebyshev kernel references (stub). |
//! | [`pluto`] | `pluto` | Pluto abbreviated series — Meeus (1998) (stub). |
pub use ArchiveError;
pub use ;