diff --git a/Cargo.lock b/Cargo.lock index 46b480cde..744133ed2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -521,12 +521,6 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" -[[package]] -name = "bytecount" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b92204551573580e078dc80017f36a213eb77a0450e4ddd8cfa0f3f2d1f0178f" - [[package]] name = "bytemuck" version = "1.2.0" @@ -555,19 +549,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24508e28c677875c380c20f4d28124fab6f8ed4ef929a1397d7b1a31e92f1005" -[[package]] -name = "cargo_metadata" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5d1b4d380e1bab994591a24c2bdd1b054f64b60bef483a8c598c7c345bc3bbe" -dependencies = [ - "error-chain", - "semver", - "serde", - "serde_derive", - "serde_json", -] - [[package]] name = "cast5" version = "0.7.0" @@ -678,7 +659,7 @@ dependencies = [ "hkdf", "hmac", "percent-encoding", - "rand 0.7.3", + "rand", "sha2 0.8.2", "time 0.2.16", ] @@ -764,7 +745,7 @@ checksum = "5d85653f070353a16313d0046f173f70d1aadd5b42600a14de626f0dfb3473a5" dependencies = [ "byteorder", "digest 0.8.1", - "rand_core 0.5.1", + "rand_core", "subtle 2.2.3", "zeroize", ] @@ -845,7 +826,6 @@ dependencies = [ "futures 0.3.5", "hex", "image", - "image-meta", "indexmap", "itertools", "kamadak-exif", @@ -865,7 +845,7 @@ dependencies = [ "quick-xml", "r2d2", "r2d2_sqlite", - "rand 0.7.3", + "rand", "regex", "rusqlite", "rustyline", @@ -997,7 +977,7 @@ checksum = "978710b352437433c97b2bff193f2fb1dfd58a093f863dd95e225a19baa599a2" dependencies = [ "clear_on_drop", "curve25519-dalek", - "rand 0.7.3", + "rand", "sha2 0.8.2", ] @@ -1017,7 +997,7 @@ dependencies = [ "encoded-words", "encoding", "lazy_static", - "rand 0.7.3", + "rand", "time 0.1.43", "version_check 0.9.2", ] @@ -1225,12 +1205,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" -[[package]] -name = "fuchsia-cprng" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" - [[package]] name = "futures" version = "0.1.29" @@ -1399,12 +1373,6 @@ version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bcc8e0c9bce37868955864dbecd2b1ab2bdf967e6f28066d65aaac620444b65c" -[[package]] -name = "glob" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" - [[package]] name = "gloo-timers" version = "0.2.1" @@ -1512,7 +1480,7 @@ dependencies = [ "cookie", "infer", "pin-project-lite", - "rand 0.7.3", + "rand", "serde", "serde_json", "serde_qs", @@ -1583,17 +1551,6 @@ dependencies = [ "png", ] -[[package]] -name = "image-meta" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a2da7b4225d0954c9b8ba1a0dcec85be29f496cba4d85f9390426f810e3ab0d" -dependencies = [ - "byteorder", - "skeptic", - "thiserror", -] - [[package]] name = "imap-proto" version = "0.10.2" @@ -1957,7 +1914,7 @@ dependencies = [ "num-integer", "num-iter", "num-traits", - "rand 0.7.3", + "rand", "serde", "smallvec", "zeroize", @@ -2194,7 +2151,7 @@ dependencies = [ "num-bigint-dig", "num-derive", "num-traits", - "rand 0.7.3", + "rand", "ripemd160", "rsa", "sha-1", @@ -2329,7 +2286,7 @@ dependencies = [ "lazy_static", "num-traits", "quick-error", - "rand 0.7.3", + "rand", "rand_chacha", "rand_xorshift", "regex-syntax", @@ -2337,15 +2294,6 @@ dependencies = [ "tempfile", ] -[[package]] -name = "pulldown-cmark" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eef52fac62d0ea7b9b4dc7da092aa64ea7ec3d90af6679422d3d7e0e14b6ee15" -dependencies = [ - "bitflags", -] - [[package]] name = "quick-error" version = "1.2.3" @@ -2397,19 +2345,6 @@ dependencies = [ "rusqlite", ] -[[package]] -name = "rand" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" -dependencies = [ - "fuchsia-cprng", - "libc", - "rand_core 0.3.1", - "rdrand", - "winapi", -] - [[package]] name = "rand" version = "0.7.3" @@ -2420,7 +2355,7 @@ dependencies = [ "libc", "packed_simd", "rand_chacha", - "rand_core 0.5.1", + "rand_core", "rand_hc", ] @@ -2431,24 +2366,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" dependencies = [ "ppv-lite86", - "rand_core 0.5.1", + "rand_core", ] -[[package]] -name = "rand_core" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" -dependencies = [ - "rand_core 0.4.2", -] - -[[package]] -name = "rand_core" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc" - [[package]] name = "rand_core" version = "0.5.1" @@ -2464,7 +2384,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" dependencies = [ - "rand_core 0.5.1", + "rand_core", ] [[package]] @@ -2473,16 +2393,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77d416b86801d23dde1aa643023b775c3a462efc0ed96443add11546cdf1dca8" dependencies = [ - "rand_core 0.5.1", -] - -[[package]] -name = "rdrand" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" -dependencies = [ - "rand_core 0.3.1", + "rand_core", ] [[package]] @@ -2585,7 +2496,7 @@ dependencies = [ "num-iter", "num-traits", "pem", - "rand 0.7.3", + "rand", "sha2 0.9.0", "simple_asn1", "subtle 2.2.3", @@ -2677,15 +2588,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - [[package]] name = "sanitize-filename" version = "0.2.1" @@ -2757,7 +2659,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" dependencies = [ "semver-parser", - "serde", ] [[package]] @@ -2893,22 +2794,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "skeptic" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6fb8ed853fdc19ce09752d63f3a2e5b5158aeb261520cd75eb618bd60305165" -dependencies = [ - "bytecount", - "cargo_metadata", - "error-chain", - "glob", - "pulldown-cmark", - "serde_json", - "tempdir", - "walkdir", -] - [[package]] name = "slab" version = "0.4.2" @@ -3128,16 +3013,6 @@ dependencies = [ "unicode-xid", ] -[[package]] -name = "tempdir" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8" -dependencies = [ - "rand 0.4.6", - "remove_dir_all", -] - [[package]] name = "tempfile" version = "3.1.0" @@ -3146,7 +3021,7 @@ checksum = "7a6e24d9338a0a5be79593e2fa15a648add6138caa803e2d5bc782c371732ca9" dependencies = [ "cfg-if", "libc", - "rand 0.7.3", + "rand", "redox_syscall", "remove_dir_all", "winapi", @@ -3277,7 +3152,7 @@ dependencies = [ "idna", "lazy_static", "log", - "rand 0.7.3", + "rand", "smallvec", "thiserror", "url", @@ -3406,7 +3281,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9fde2f6a4bea1d6e007c4ad38c6839fa71cbb63b6dbf5b595aa38dc9b1093c11" dependencies = [ - "rand 0.7.3", + "rand", ] [[package]] @@ -3448,17 +3323,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9571542c2ce85ce642e6b58b3364da2fb53526360dfb7c211add4f5c23105ff7" -[[package]] -name = "walkdir" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d" -dependencies = [ - "same-file", - "winapi", - "winapi-util", -] - [[package]] name = "wasi" version = "0.9.0+wasi-snapshot-preview1" @@ -3612,7 +3476,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "637ff90c9540fa3073bb577e65033069e4bae7c79d49d74aa3ffdf5342a53217" dependencies = [ "curve25519-dalek", - "rand_core 0.5.1", + "rand_core", "zeroize", ] diff --git a/Cargo.toml b/Cargo.toml index 2b7fe7b1c..19bd3a86d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -44,7 +44,6 @@ strum_macros = "0.18.0" backtrace = "0.3.33" byteorder = "1.3.1" itertools = "0.8.0" -image-meta = "0.1.0" quick-xml = "0.18.1" escaper = "0.1.0" bitflags = "1.1.0" diff --git a/src/dc_tools.rs b/src/dc_tools.rs index 0568121ca..c46b75587 100644 --- a/src/dc_tools.rs +++ b/src/dc_tools.rs @@ -4,6 +4,7 @@ use core::cmp::{max, min}; use std::borrow::Cow; use std::fmt; +use std::io::Cursor; use std::str::FromStr; use std::time::{Duration, SystemTime}; @@ -242,9 +243,9 @@ pub fn dc_get_filesuffix_lc(path_filename: impl AsRef) -> Option { /// Returns the `(width, height)` of the given image buffer. pub fn dc_get_filemeta(buf: &[u8]) -> Result<(u32, u32), Error> { - let meta = image_meta::load_from_buf(buf)?; - - Ok((meta.dimensions.width, meta.dimensions.height)) + let image = image::io::Reader::new(Cursor::new(buf)); + let dimensions = image.into_dimensions()?; + Ok(dimensions) } /// Expand paths relative to $BLOBDIR into absolute paths.