image-rs / deflate-rs

An implementation of a DEFLATE encoder in rust
Apache License 2.0
53 stars 14 forks source link

Remove the flate2 dev-dependency #25

Closed briansmith closed 5 years ago

briansmith commented 6 years ago

flate2 is listed as a dev-dependency. Unfortunately, there's no way to have optional dev-dependencies. flate2 has a lot of dependencies of its own and it would be great to avoid having to download and build those dependencies during out Docker builds.

I understand that the flate2 dev-dependency is used for comparative benchmarks. It would be great if the benchmarks could be moved to a separate crate (e.g. deflate-bench, similar to crypto-bench) so that projects that don't run the benchmarks don't need to pull in flate2.

oyvindln commented 6 years ago

Sounds reasonable, it was mainly used to verify stuff earlier during development, but it's not really needed anymore.

Would it be enough to move the dependency under a feature (there is already a benchmark feature), or does it need to be removed entirely from the main crate?

JohnTitor commented 5 years ago

What's the status at now? It seems we depend on flate2 in some tests so we couldn't move it to benchmark feature as it is?

oyvindln commented 5 years ago

Could probably just add a separate feature for it if needed, this library is kind of in maintainance mode at this point anyhow. Also the test could be changed to use miniz_oxide to reduce then number of dev-dependencies.

oyvindln commented 5 years ago

Changed to use minz_oxide in 7b316c7ae472a9731d16c685c85e0c142c257823 which should cut down on dev-dependencies.