Skip to content

Commit a24e276

Browse files
committed
Rewrite outdated backend notes in lib.rs
1 parent c9a3efa commit a24e276

File tree

1 file changed

+12
-18
lines changed

1 file changed

+12
-18
lines changed

src/lib.rs

Lines changed: 12 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -17,24 +17,18 @@
1717
//! backends, controlled through this crate's features:
1818
//!
1919
//! * `default`, or `rust_backend` - this implementation uses the `miniz_oxide`
20-
//! crate which is a port of `miniz.c` (below) to Rust. This feature does not
21-
//! require a C compiler and only requires Rust code.
22-
//!
23-
//! * `zlib-rs` - this implementation utilizes the `zlib-rs` crate, a pure rust rewrite of zlib.
24-
//! This backend is faster than both `rust_backend` and `zlib`. However, we did not set it as the
25-
//! default choice to prevent compatibility issues.
26-
//!
27-
//! * `zlib` - this feature will enable linking against the `libz` library, typically found on most
28-
//! Linux systems by default. If the library isn't found to already be on the system it will be
29-
//! compiled from source (this is a C library).
30-
//!
31-
//! There's various tradeoffs associated with each implementation, but in general you probably
32-
//! won't have to tweak the defaults. The default choice is selected to avoid the need for a C
33-
//! compiler at build time. `zlib-ng-compat` is useful if you're using zlib for compatibility but
34-
//! want performance via zlib-ng's zlib-compat mode. `zlib` is useful if something else in your
35-
//! dependencies links the original zlib so you cannot use zlib-ng-compat. The compression ratios
36-
//! and performance of each of these feature should be roughly comparable, but you'll likely want
37-
//! to run your own tests if you're curious about the performance.
20+
//! crate which is a port of `miniz.c` to Rust. This feature does not
21+
//! require a C compiler, and only uses safe Rust code.
22+
//!
23+
//! * `zlib-rs` - this implementation utilizes the `zlib-rs` crate, a Rust rewrite of zlib.
24+
//! This backend is the fastest, at the cost of some `unsafe` Rust code.
25+
//!
26+
//! Several backends implemented in C are also available.
27+
//! These are useful in the rare cases where you were already using a C implementation
28+
//! and need the result of compression to be bit-identical.
29+
//! See the crate's README for details on the available C backends.
30+
//!
31+
//! The `zlib-rs` backend typically outperforms all the C implementations.
3832
//!
3933
//! # Organization
4034
//!

0 commit comments

Comments
 (0)