1#![doc = include_str!("../README.md")]
2#![cfg_attr(docsrs, feature(doc_cfg))]
3#![warn(clippy::all, rust_2018_idioms)]
4#![deny(
5 missing_docs,
6 clippy::all,
7 clippy::missing_panics_doc,
8 clippy::cargo,
9 clippy::panic,
10 clippy::cast_lossless,
11 clippy::decimal_literal_representation,
12 clippy::must_use_candidate
13)]
14#![cfg_attr(not(test), deny(clippy::unwrap_used, clippy::expect_used))]
15#![allow(unexpected_cfgs)] #![allow(clippy::multiple_crate_versions)] pub use crate::compression::{CompressionMethod, SUPPORTED_COMPRESSION_METHODS};
18pub use crate::datetime::DateTime;
19pub use crate::format::aes::AesMode;
20pub use crate::format::system::System;
21pub use crate::format::{ZIP64_BYTES_THR, ZIP64_ENTRY_THR};
22pub use crate::read::HasZipMetadata;
23pub use crate::read::{ZipArchive, ZipReadOptions};
24pub use crate::write::ZipWriter;
25
26#[cfg(feature = "aes-crypto")]
27mod aes;
28#[cfg(feature = "aes-crypto")]
29pub use aes::AesSalt;
30#[cfg(feature = "aes-crypto")]
31mod aes_ctr;
32mod compression;
33mod cp437;
34mod crc32;
35mod datetime;
36pub mod extra_fields;
37mod format;
38mod path;
39pub mod read;
40pub mod result;
41mod types;
42pub mod write;
43mod zipcrypto;
44pub use extra_fields::ExtraField;
45#[cfg(feature = "legacy-zip")]
46mod legacy;
47
48pub mod unstable;