From ae941ad2566f00e2fadf82bf9c4017055e3abd51 Mon Sep 17 00:00:00 2001 From: Marli Frost Date: Sun, 23 Jan 2022 21:46:17 +0000 Subject: [PATCH] doc: improve landing page Explain more of what ZIP is intended for, and begin to explain what the crate can be used for. --- src/lib.rs | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index 3b39ab4f..8a20d374 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,7 +1,26 @@ -//! An ergonomic API for reading and writing ZIP files. +//! A library for reading and writing ZIP archives. +//! ZIP is a format designed for cross-platform file "archiving". +//! That is, storing a collection of files in a single datastream +//! to make them easier to share between computers. +//! Additionally, ZIP is able to compress and encrypt files in its +//! archives. //! //! The current implementation is based on [PKWARE's APPNOTE.TXT v6.3.9](https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT) -// TODO(#184): Decide on the crate's bias: Do we prioritise permissiveness/correctness/speed/ergonomics? +//! +//! --- +//! +//! [`zip`](`crate`) has support for the most common ZIP archives found in common use. +//! However, in special cases, +//! there are some zip archives that are difficult to read or write. +//! +//! This is a list of supported features: +//! +//! | | Reading | Writing | +//! | ------- | ------ | ------- | +//! | Deflate | ✅ [->](`crate::ZipArchive::by_name`) | ✅ [->](`crate::write::FileOptions::compression_method`) | +//! +//! +//! #![warn(missing_docs)]