pub mod cache;
pub mod client;
pub mod error;
pub mod freshness;
pub mod layout;
pub use cache::{ensure_dump, remote_last_modified};
pub use client::{RemoteMeta, WikidataClient};
pub use error::{Result, WikidataError};
pub use freshness::{
age_days, decide, file_mtime_utc, read_remote_mtime_from_source_meta, CacheDecision,
FreshnessInputs,
};
pub use layout::{Workdir, DUMP_FILE, DUMP_URL};
use chrono::{DateTime, Utc};
use std::path::PathBuf;
pub fn ensure_dump_blocking(
workdir: &Workdir,
cooldown_days: i64,
verbose: bool,
) -> Result<(PathBuf, Option<DateTime<Utc>>)> {
crate::datasets::blocking::run(ensure_dump(workdir, cooldown_days, verbose))
}
pub fn remote_last_modified_blocking() -> Option<DateTime<Utc>> {
crate::datasets::blocking::run(remote_last_modified())
}