diff --git a/Cargo.lock b/Cargo.lock index 88a9abca0..e59a6b65e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1587,7 +1587,7 @@ dependencies = [ "unicode-general-category", "unicode-properties", "unicode-segmentation", - "vello_cpu", + "vello_cpu 0.2.0", ] [[package]] @@ -1673,6 +1673,18 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b97b65636e5b9ef369943878ac74335ba1c55c1cb6adbf1e2c293c624248d693" +[[package]] +name = "fearless_simd" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4beca3cb2444e3304ac30843cc091f44ed58932353cd492ce740067bfce6b12" + +[[package]] +name = "fearless_simd" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "629c9d6b6f30b5604089e0980f4d924a013aacb1654a6cdf5d3d852224f68651" + [[package]] name = "filetime" version = "0.2.29" @@ -1985,16 +1997,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "gif" -version = "0.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae047235e33e2829703574b54fdec96bfbad892062d97fed2f76022287de61b" -dependencies = [ - "color_quant", - "weezl 0.1.12", -] - [[package]] name = "gif" version = "0.14.2" @@ -2021,6 +2023,22 @@ name = "glifo" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282a26c1e23de04bdab3e34a21b6f877a479b96737792516b9b8b8f69b6661be" +dependencies = [ + "bytemuck", + "foldhash 0.2.0", + "hashbrown 0.17.1", + "log", + "peniko", + "skrifa 0.44.0", + "smallvec", + "vello_common 0.2.0", +] + +[[package]] +name = "glifo" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f1218dedd5348c1b166ec3b8b3cbca49d2f527bd43b3fa072ea5123c523ed3f" dependencies = [ "bytemuck", "foldhash 0.2.0", @@ -2030,7 +2048,7 @@ dependencies = [ "png 0.18.1", "skrifa 0.44.0", "smallvec", - "vello_common", + "vello_common 0.3.0", ] [[package]] @@ -2225,6 +2243,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9f4d0e94ddd48749f06bbe4e5389fb9799a0c45bcaf00495042076ef05e3241a" +[[package]] +name = "hayro-ccitt" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adbed896e99325bc312778bb9c9c289d795d51c12775c44dd5e4352f679c7e46" + [[package]] name = "hayro-cmap" version = "0.1.0" @@ -2257,8 +2281,8 @@ name = "hayro-jbig2" version = "0.3.0" source = "git+https://github.com/storytold/craft-libs?rev=9be9a63782298ab59cd9b7a42ee9cba4f42a5ccb#9be9a63782298ab59cd9b7a42ee9cba4f42a5ccb" dependencies = [ - "fearless_simd", - "hayro-ccitt", + "fearless_simd 0.4.1", + "hayro-ccitt 0.3.0", ] [[package]] @@ -2267,7 +2291,16 @@ version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c75ab947623ef4ccaa7acf0579edf7cbb5a73838e3839a7be73335e522f433a1" dependencies = [ - "fearless_simd", + "fearless_simd 0.4.1", +] + +[[package]] +name = "hayro-jpeg2000" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e5e5f2b3de970707fc22fd956d8f44211602939d5e4588603afa919cb7b3740" +dependencies = [ + "fearless_simd 1.2.0", ] [[package]] @@ -2281,14 +2314,14 @@ version = "0.7.2" source = "git+https://github.com/storytold/craft-libs?rev=9be9a63782298ab59cd9b7a42ee9cba4f42a5ccb#9be9a63782298ab59cd9b7a42ee9cba4f42a5ccb" dependencies = [ "flate2", - "hayro-ccitt", + "hayro-ccitt 0.3.0", "hayro-jbig2", - "hayro-jpeg2000", + "hayro-jpeg2000 0.3.5", "memchr", "rustc-hash 2.1.3", "smallvec", "stringprep", - "zune-jpeg 0.5.15", + "zune-jpeg", ] [[package]] @@ -2673,14 +2706,14 @@ dependencies = [ "bytemuck", "byteorder-lite", "color_quant", - "gif 0.14.2", + "gif", "image-webp", "moxcms", "num-traits", "png 0.18.1", "tiff", - "zune-core 0.5.3", - "zune-jpeg 0.5.15", + "zune-core", + "zune-jpeg", ] [[package]] @@ -3077,7 +3110,7 @@ dependencies = [ "bumpalo", "flate2", "float-cmp", - "gif 0.14.2", + "gif", "image-webp", "imagesize 0.14.0", "indexmap", @@ -3092,7 +3125,7 @@ dependencies = [ "tiny-skia-path 0.12.0", "xmp-writer", "yoke", - "zune-jpeg 0.5.15", + "zune-jpeg", ] [[package]] @@ -4619,15 +4652,12 @@ version = "0.45.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8928798c0a55e03c9ca6c4c6846f76377427d2c1e1f7e6de3c06ae57942df43" dependencies = [ - "gif 0.13.3", - "image-webp", "log", "pico-args", "rgb", "svgtypes 0.15.3", "tiny-skia 0.11.4", "usvg 0.45.1", - "zune-jpeg 0.4.21", ] [[package]] @@ -4637,15 +4667,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67e3803f97b999e80cbf7c6ecdd07a8102204d92e1633cf48783720c521196bd" dependencies = [ "bytemuck", - "gif 0.14.2", + "gif", "image-webp", "log", "pico-args", "rgb", - "svgtypes 0.16.1", + "svgtypes 0.16.2", "tiny-skia 0.12.0", "usvg 0.48.1", - "zune-jpeg 0.5.15", + "zune-jpeg", ] [[package]] @@ -5564,9 +5594,9 @@ dependencies = [ [[package]] name = "svgtypes" -version = "0.16.1" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "695b5790b3131dafa99b3bbfd25a216edb3d216dad9ca208d4657bfb8f2abc3d" +checksum = "9f12b12995e3638c70618c1facb1ce65302f6a6f706b675f07c58a5d7391120e" dependencies = [ "kurbo 0.13.1", "siphasher", @@ -5750,7 +5780,7 @@ dependencies = [ "half", "quick-error 2.0.1", "weezl 0.1.12", - "zune-jpeg 0.5.15", + "zune-jpeg", ] [[package]] @@ -6258,6 +6288,25 @@ name = "usvg" version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "977d0a4abdef933f424a99fe09f95576e089b90aebc6f016a3bc813762493e91" +dependencies = [ + "data-url", + "imagesize 0.15.0", + "kurbo 0.13.1", + "log", + "pico-args", + "roxmltree 0.21.2", + "simplecss", + "siphasher", + "strict-num", + "svgtypes 0.16.2", + "tiny-skia-path 0.12.0", +] + +[[package]] +name = "usvg" +version = "0.49.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d09b73ee83641d390ad7ffd9000f347b16eb128e437675b6ff277ea5c7fcf22c" dependencies = [ "base64 0.23.1", "data-url", @@ -6273,7 +6322,7 @@ dependencies = [ "siphasher", "skrifa 0.44.0", "strict-num", - "svgtypes 0.16.1", + "svgtypes 0.16.2", "tiny-skia-path 0.12.0", "unicode-bidi", "unicode-script", @@ -6442,7 +6491,7 @@ name = "vectorcraft-doc" version = "0.21.0" dependencies = [ "chrono", - "hayro-ccitt", + "hayro-ccitt 0.5.0", "image", "jpeg-encoder", "kurbo 0.13.1", @@ -6453,7 +6502,7 @@ dependencies = [ "tiff", "vectorcraft-color", "vectorcraft-geom", - "zune-jpeg 0.5.15", + "zune-jpeg", ] [[package]] @@ -6464,7 +6513,7 @@ dependencies = [ "kurbo 0.13.1", "resvg 0.48.1", "serde_json", - "svgtypes 0.16.1", + "svgtypes 0.16.2", "vectorcraft-color", "vectorcraft-doc", "vectorcraft-geom", @@ -6484,7 +6533,7 @@ dependencies = [ "craft-proof", "crc32fast", "flate2", - "hayro-jpeg2000", + "hayro-jpeg2000 0.5.0", "heic-rs", "image", "jxl-color", @@ -6523,7 +6572,7 @@ dependencies = [ "vectorcraft-tools", "vectorcraft-trace", "wat", - "zune-core 0.5.3", + "zune-core", "zune-jpegxl", ] @@ -6535,7 +6584,7 @@ dependencies = [ "encoding_rs", "fax", "flate2", - "hayro-ccitt", + "hayro-ccitt 0.5.0", "image", "kurbo 0.13.1", "memchr", @@ -6692,7 +6741,7 @@ name = "vectorcraft-render" version = "0.21.0" dependencies = [ "flate2", - "gif 0.14.2", + "gif", "image", "jpeg-encoder", "log", @@ -6710,8 +6759,8 @@ dependencies = [ "vectorcraft-plugins", "vectorcraft-testkit", "vectorcraft-text", - "vello_common", - "vello_cpu", + "vello_common 0.3.0", + "vello_cpu 0.3.0", "wat", "weezl 0.2.1", "winsafe", @@ -6733,14 +6782,14 @@ dependencies = [ "image", "kurbo 0.13.1", "proptest", - "resvg 0.45.1", + "resvg 0.48.1", "serde", "serde_json", "simplecss", "skrifa 0.47.0", - "svgtypes 0.16.1", + "svgtypes 0.16.2", "thiserror 2.0.21", - "usvg 0.48.1", + "usvg 0.49.0", "vectorcraft-brush", "vectorcraft-color", "vectorcraft-doc", @@ -6785,7 +6834,7 @@ dependencies = [ "unicode-segmentation", "vectorcraft-doc", "vectorcraft-geom", - "vello_cpu", + "vello_cpu 0.3.0", "windows-registry", "write-fonts", ] @@ -6892,7 +6941,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbb2141a2bca6e6d598e471fd4d1d7eed8e020aad6a28187edda07f091a325dd" dependencies = [ "bytemuck", - "fearless_simd", + "fearless_simd 0.4.1", + "guillotiere", + "log", + "peniko", + "smallvec", + "thiserror 2.0.21", +] + +[[package]] +name = "vello_common" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73c2fbe53548bcd25c8ff42f75a93770a8611a16b37bee56d7ef7b44e36027f1" +dependencies = [ + "bytemuck", + "fearless_simd 0.7.0", "guillotiere", "log", "peniko", @@ -6906,16 +6970,28 @@ name = "vello_cpu" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ace506ca414548966fcf3c283be94eb1cad8254de488791ee698bf438b0890a9" +dependencies = [ + "bytemuck", + "glifo 0.3.0", + "hashbrown 0.17.1", + "vello_common 0.2.0", +] + +[[package]] +name = "vello_cpu" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed1fec424fbba6acf6cbc78bb526447eb77590d95f40419d598870fe37535212" dependencies = [ "bytemuck", "crossbeam-channel", - "glifo", + "glifo 0.4.0", "hashbrown 0.17.1", "ordered-channel", "png 0.18.1", "rayon", "thread_local", - "vello_common", + "vello_common 0.3.0", ] [[package]] @@ -8259,34 +8335,19 @@ version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b" -[[package]] -name = "zune-core" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a" - [[package]] name = "zune-core" version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d56377fd46368984a170bc5aac5567e52ca5da874caa60bea39fcbca78fb658b" -[[package]] -name = "zune-jpeg" -version = "0.4.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29ce2c8a9384ad323cf564b67da86e21d3cfdff87908bc1223ed5c99bc792713" -dependencies = [ - "zune-core 0.4.12", -] - [[package]] name = "zune-jpeg" version = "0.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "27bc9d5b815bc103f142aa054f561d9187d191692ec7c2d1e2b4737f8dbd7296" dependencies = [ - "zune-core 0.5.3", + "zune-core", ] [[package]] @@ -8295,7 +8356,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cba11ecd07cc23351500e840ae03841b7e4997923ec8e4832ee3ae199ea0b6b4" dependencies = [ - "zune-core 0.5.3", + "zune-core", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 2c0bf38ec..4a42a781e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -80,12 +80,12 @@ wat = "1.228" # rendering / formats # Without `text` (glyph runs, through glifo and a second skrifa): the renderer draws the outlines # vectorcraft-text gives it. The other default features stay. -vello_cpu = { version = "0.2", default-features = false, features = ["std", "png", "u8_pipeline", "f32_pipeline"] } +vello_cpu = { version = "0.3", default-features = false, features = ["std", "png", "u8_pipeline", "f32_pipeline"] } image = { version = "0.25", default-features = false, features = ["png", "jpeg", "webp", "gif", "tiff", "bmp", "tga"] } # Without `text` and the system fonts (fontdb, harfrust and skrifa, at other versions than ours): # SVG import reads `` from the XML itself and never gives usvg a font. A test of the SVG # crate turns `text` on. -usvg = { version = "0.48", default-features = false, features = ["svgz"] } +usvg = { version = "0.49", default-features = false, features = ["svgz"] } # Without `simple-text` (its text shaping, the only user of rustybuzz and ttf-parser, which are # unmaintained, #1730): the PDF writer places glyphs itself. A test of the PDF crate turns it on. krilla = { version = "0.8", default-features = false, features = ["raster-images"] } @@ -98,7 +98,7 @@ rustix = { version = "1.1", default-features = false } ruzstd = { version = "0.9.1", default-features = false, features = ["std"] } # CCITT Group 3 and Group 4 decoder (ITU-T T.4 and T.6): EPS images read through # `CCITTFaxDecode`. The PDF reader's hayro-syntax uses the same version. -hayro-ccitt = "0.3" +hayro-ccitt = "0.5" # Substring search for the EPS reader's PostScript `search`. memchr = "2" # The WHATWG Encoding Standard's legacy encodings: names in legacy .ai files read in the code page diff --git a/crates/engine/Cargo.toml b/crates/engine/Cargo.toml index 836d4b744..63f2e4bcd 100644 --- a/crates/engine/Cargo.toml +++ b/crates/engine/Cargo.toml @@ -47,7 +47,7 @@ image = { workspace = true } jxl-oxide = { workspace = true } jxl-color = { workspace = true } jxl-grid = { workspace = true } -hayro-jpeg2000 = { version = "=0.3.5", default-features = false, features = ["std", "simd"] } +hayro-jpeg2000 = { version = "=0.5.0", default-features = false, features = ["std", "simd"] } # Pure Rust, no unsafe; pinned at the version photocraft-heif uses. heic-rs = { version = "=0.1.4", default-features = false, features = ["std"], optional = true } flate2 = { workspace = true } diff --git a/crates/render/Cargo.toml b/crates/render/Cargo.toml index 4bd499b9d..3e4b208a4 100644 --- a/crates/render/Cargo.toml +++ b/crates/render/Cargo.toml @@ -17,7 +17,7 @@ vectorcraft-effects = { workspace = true } vectorcraft-brush = { workspace = true } vello_cpu = { workspace = true } # Filter types (Gaussian blur, drop shadow) are not re-exported by vello_cpu 0.2. -vello_common = { version = "0.2", default-features = false } +vello_common = { version = "0.3", default-features = false } image = { workspace = true } flate2 = { workspace = true } jpeg-encoder = { workspace = true } diff --git a/crates/svg/Cargo.toml b/crates/svg/Cargo.toml index 7c506d2bb..9a1f4f543 100644 --- a/crates/svg/Cargo.toml +++ b/crates/svg/Cargo.toml @@ -36,7 +36,7 @@ simplecss = "0.2.2" skrifa = { workspace = true } # A variable font built in code (no font file is committed). vectorcraft-text = { workspace = true, features = ["test-fonts"] } -resvg = { version = "0.45", default-features = false, features = ["raster-images"] } +resvg = { version = "0.48", default-features = false, features = ["raster-images"] } # usvg as a reference viewer that lays text out in a font (text_layout.rs). usvg = { workspace = true, features = ["text"] } vectorcraft-testkit = { workspace = true }