Merge pull request #17 from alexwlchan/add-tif-support
- ID
dc4e3c2- date
2022-10-16 19:42:33+00:00- author
Alex Chan <alex@alexwlchan.net>- parents
85163f1,7866176- message
Merge pull request #17 from alexwlchan/add-tif-support Add support for TIFF images- changed files
6 files, 61 additions, 45 deletions
Changed files
.github/workflows/build.yml (514) → .github/workflows/build.yml (567)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index ad4367f..0ad2930 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -1,4 +1,10 @@
-on: [push, pull_request]
+on:
+ push:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
name: build
jobs:
build:
CHANGELOG.md (519) → CHANGELOG.md (573)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f22fee3..b0b1976 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
# Changelog
+## v1.1.2 - 2022-10-16
+
+Add support for TIFF images.
+
## v1.1.1 - 2022-04-03
Publish binaries as part of the GitHub releases.
Cargo.lock (13465) → Cargo.lock (13448)
diff --git a/Cargo.lock b/Cargo.lock
index 7960e73..1e5f8dd 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -3,10 +3,10 @@
version = 3
[[package]]
-name = "adler32"
-version = "1.2.0"
+name = "adler"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
+checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
[[package]]
name = "ansi_term"
@@ -123,16 +123,6 @@ dependencies = [
]
[[package]]
-name = "deflate"
-version = "0.8.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "73770f8e1fe7d64df17ca66ad28994a0a623ea497fa69486e14984e715c5d174"
-dependencies = [
- "adler32",
- "byteorder",
-]
-
-[[package]]
name = "difflib"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -146,7 +136,7 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
[[package]]
name = "dominant_colours"
-version = "1.1.1"
+version = "1.1.2"
dependencies = [
"assert_cmd",
"clap",
@@ -162,6 +152,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
[[package]]
+name = "flate2"
+version = "1.0.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6"
+dependencies = [
+ "crc32fast",
+ "miniz_oxide",
+]
+
+[[package]]
name = "getrandom"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -193,19 +193,19 @@ dependencies = [
[[package]]
name = "image"
-version = "0.23.14"
+version = "0.24.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1"
+checksum = "bd8e4fb07cf672b1642304e731ef8a6a4c7891d67bb4fd4f5ce58cd6ed86803c"
dependencies = [
"bytemuck",
"byteorder",
"color_quant",
"gif",
"jpeg-decoder",
- "num-iter",
"num-rational",
"num-traits",
"png",
+ "tiff",
]
[[package]]
@@ -219,9 +219,9 @@ dependencies = [
[[package]]
name = "jpeg-decoder"
-version = "0.1.22"
+version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2"
+checksum = "9478aa10f73e7528198d75109c8be5cd7d15fb530238040148d5f9a22d4c5b3b"
[[package]]
name = "kmeans_colors"
@@ -254,11 +254,11 @@ checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
[[package]]
name = "miniz_oxide"
-version = "0.3.7"
+version = "0.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
+checksum = "96590ba8f175222643a85693f33d26e9c8a015f599c216509b1a6894af675d34"
dependencies = [
- "adler32",
+ "adler",
]
[[package]]
@@ -272,21 +272,10 @@ dependencies = [
]
[[package]]
-name = "num-iter"
-version = "0.1.42"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
-dependencies = [
- "autocfg",
- "num-integer",
- "num-traits",
-]
-
-[[package]]
name = "num-rational"
-version = "0.3.2"
+version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
+checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
dependencies = [
"autocfg",
"num-integer",
@@ -326,13 +315,13 @@ dependencies = [
[[package]]
name = "png"
-version = "0.16.8"
+version = "0.17.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6"
+checksum = "8f0e7f4c94ec26ff209cee506314212639d6c91b80afb82984819fafce9df01c"
dependencies = [
"bitflags",
"crc32fast",
- "deflate",
+ "flate2",
"miniz_oxide",
]
@@ -456,6 +445,17 @@ dependencies = [
]
[[package]]
+name = "tiff"
+version = "0.7.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7259662e32d1e219321eb309d5f9d898b779769d81b76e762c07c8e5d38fcb65"
+dependencies = [
+ "flate2",
+ "jpeg-decoder",
+ "weezl",
+]
+
+[[package]]
name = "unicode-width"
version = "0.1.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
Cargo.toml (406) → Cargo.toml (414)
diff --git a/Cargo.toml b/Cargo.toml
index 1b35382..8fef77b 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "dominant_colours"
-version = "1.1.1"
+version = "1.1.2"
edition = "2018"
[dependencies]
@@ -13,8 +13,8 @@ features = ["palette_color"]
default-features = false
[dependencies.image]
-version = "0.23"
-features = ["jpeg", "png", "gif"]
+version = "0.24"
+features = ["jpeg", "png", "gif", "tiff"]
default-features = false
[dependencies.palette]
src/main.rs (9071) → src/main.rs (9257)
diff --git a/src/main.rs b/src/main.rs
index e4acce6..8e37f47 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -135,6 +135,12 @@ mod tests {
}
#[test]
+ fn it_can_look_at_tiff_images() {
+ let output = get_success(&["./src/tests/green.tiff", "--max-colours=1"]);
+ assert_eq!(output.exit_code, 0);
+ }
+
+ #[test]
fn it_omits_the_escape_codes_with_no_palette() {
let output = get_success(&["./src/tests/red.png", "--max-colours=1", "--no-palette"]);
@@ -247,11 +253,11 @@ mod tests {
#[test]
fn it_fails_if_you_pass_an_unsupported_image_format() {
- let output = get_failure(&["./src/tests/green.tiff"]);
+ let output = get_failure(&["./src/tests/purple.webp"]);
assert_eq!(output.exit_code, 1);
assert_eq!(output.stdout, "");
- assert_eq!(output.stderr, "The image format Tiff is not supported\n");
+ assert_eq!(output.stderr, "The image format WebP is not supported\n");
}
#[test]
@@ -262,7 +268,7 @@ mod tests {
assert_eq!(output.stdout, "");
assert_eq!(
output.stderr,
- "Format error decoding Png: invalid signature\n"
+ "Format error decoding Png: Invalid PNG signature.\n"
);
}
src/tests/purple.webp (0) → src/tests/purple.webp (66)
diff --git a/src/tests/purple.webp b/src/tests/purple.webp
new file mode 100644
index 0000000..71e78a1
Binary files /dev/null and b/src/tests/purple.webp differ