Skip to main content

internetarchive_rs/
lib.rs

1#![doc = include_str!("../README.md")]
2#![forbid(unsafe_code)]
3#![deny(missing_docs)]
4#![deny(
5    clippy::all,
6    clippy::pedantic,
7    clippy::expect_used,
8    clippy::missing_errors_doc,
9    clippy::missing_panics_doc,
10    clippy::panic,
11    clippy::todo,
12    clippy::unimplemented,
13    clippy::unwrap_used
14)]
15#![allow(clippy::module_name_repetitions)]
16#![cfg_attr(
17    test,
18    allow(
19        clippy::expect_used,
20        clippy::missing_errors_doc,
21        clippy::missing_panics_doc,
22        clippy::panic,
23        clippy::too_many_lines,
24        clippy::unwrap_used
25    )
26)]
27
28pub mod client;
29mod client_uploader_traits_impl;
30pub mod downloads;
31pub mod endpoint;
32pub mod error;
33pub mod ids;
34pub mod metadata;
35pub mod model;
36pub mod poll;
37pub mod search;
38mod serde_util;
39pub mod upload;
40pub mod workflow;
41
42pub use client::{Auth, InternetArchiveClient, InternetArchiveClientBuilder};
43pub use downloads::{DownloadTarget, ResolvedDownload};
44pub use endpoint::Endpoint;
45pub use error::InternetArchiveError;
46pub use ids::{IdentifierError, ItemIdentifier, TaskId};
47#[cfg(feature = "indicatif")]
48pub use indicatif;
49pub use metadata::{
50    ItemMetadata, ItemMetadataBuilder, MediaType, MetadataChange, MetadataTarget, MetadataValue,
51    PatchOperation,
52};
53pub use model::{
54    Item, ItemFile, MetadataWriteResponse, S3LimitCheck, SearchDocument, SearchResponse,
55    SearchResponseHeader, SearchResultPage, TaskSubmission,
56};
57pub use poll::PollOptions;
58pub use search::{SearchQuery, SearchQueryBuilder, SearchSort, SortDirection};
59pub use upload::{DeleteOptions, FileConflictPolicy, UploadOptions, UploadSource, UploadSpec};
60pub use workflow::{PublishOutcome, PublishRequest};