diff --git a/Cargo.lock b/Cargo.lock index c344024..9f28424 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -801,7 +801,7 @@ dependencies = [ "parking_lot", "petname", "postcard", - "rand 0.9.4", + "rand 0.9.5", "serde", "thiserror 2.0.18", "tokio", @@ -879,6 +879,15 @@ dependencies = [ "bit-vec", ] +[[package]] +name = "bit-set" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2f926cc3060f09db9ebc5b52823d85268d24bb917e472c0c4bea35780a7d" +dependencies = [ + "bit-vec", +] + [[package]] name = "bit-vec" version = "0.9.1" @@ -1107,18 +1116,18 @@ checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" [[package]] name = "bytemuck" -version = "1.25.0" +version = "1.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8efb64bd706a16a1bdde310ae86b351e4d21550d98d056f22f8a7f7a2183fec" +checksum = "d6aedf8ae72766347502cf3cb4f41cf5e9cc37d28bee90f1fdaaae15f9cf9424" dependencies = [ "bytemuck_derive", ] [[package]] name = "bytemuck_derive" -version = "1.10.2" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" +checksum = "f65693059b6b9c588b9f62fed1cedbf0a8b805631457ea162d68f0de186f3de5" dependencies = [ "proc-macro2", "quote", @@ -1230,9 +1239,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.66" +version = "1.2.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5d6cac793997bd970000024b2934968efe83b382de4fdcf4fcb46b6ee4ad996" +checksum = "e17dd265a7d0f31ef544e1b20e03add05d3b45b491b633b10d67145d2acc1a38" dependencies = [ "find-msvc-tools", "jobserver", @@ -2752,9 +2761,9 @@ dependencies = [ [[package]] name = "exr" -version = "1.74.1" +version = "1.74.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6be87932f10230a4339ab394edd8e4611fcb72553d8295b4d52ea55249b3daa5" +checksum = "711fe42c9964295e01ee3fba3f9fe0e1d24b98886950d68efe81b1c76e21adf3" dependencies = [ "bit_field", "half", @@ -3025,9 +3034,9 @@ dependencies = [ [[package]] name = "freetype" -version = "0.7.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a440748e063798e4893ceb877151e84acef9bea9a8c6800645cf3f1b3a7806e" +checksum = "db318d6e5b1c90dd29eb4256666b3eeb5f38caf0a68f12d13d2d0793a50d0c77" dependencies = [ "freetype-sys", "libc", @@ -3035,12 +3044,12 @@ dependencies = [ [[package]] name = "freetype-sys" -version = "0.20.1" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7edc5b9669349acfda99533e9e0bcf26a51862ab43b08ee7745c55d28eb134" +checksum = "eab537ce43cab850c64b4cdc390ce7e4f47f877485ddc323208e268280c308ae" dependencies = [ "cc", - "libc", + "libz-sys", "pkg-config", ] @@ -3340,7 +3349,7 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2eecf2d5dc9b66b732b97707a0210906b1d30523eb773193ab777c0c84b3e8d5" dependencies = [ - "polyval 0.7.1", + "polyval 0.7.2", ] [[package]] @@ -4126,17 +4135,16 @@ dependencies = [ [[package]] name = "harfbuzz-sys" -version = "0.6.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb86e2fef3ba40cebffb8fa2cba811f06aa5c5fd296a4e469473e5398d166594" +checksum = "975b6181d2b2d16236036ae09f51cc2b1cdc1506cadd1958d9c6d88a06f8a1a4" dependencies = [ "cc", - "core-graphics", - "core-text", - "foreign-types", "freetype-sys", + "objc2-core-graphics", + "objc2-core-text", "pkg-config", - "winapi", + "windows 0.62.2", ] [[package]] @@ -4182,8 +4190,6 @@ dependencies = [ "allocator-api2", "equivalent", "foldhash 0.2.0", - "serde", - "serde_core", ] [[package]] @@ -4195,6 +4201,8 @@ dependencies = [ "allocator-api2", "equivalent", "foldhash 0.2.0", + "serde", + "serde_core", ] [[package]] @@ -4218,7 +4226,7 @@ dependencies = [ "http 0.2.12", "httpdate", "mime", - "sha1 0.10.6", + "sha1 0.10.7", ] [[package]] @@ -4233,7 +4241,7 @@ dependencies = [ "http 1.4.2", "httpdate", "mime", - "sha1 0.10.6", + "sha1 0.10.7", ] [[package]] @@ -4343,7 +4351,7 @@ dependencies = [ "idna", "ipnet", "once_cell", - "rand 0.9.4", + "rand 0.9.5", "ring", "thiserror 2.0.18", "tinyvec", @@ -4385,7 +4393,7 @@ dependencies = [ "moka", "once_cell", "parking_lot", - "rand 0.9.4", + "rand 0.9.5", "resolv-conf", "smallvec", "thiserror 2.0.18", @@ -5309,6 +5317,8 @@ checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" dependencies = [ "equivalent", "hashbrown 0.17.1", + "serde", + "serde_core", ] [[package]] @@ -5360,7 +5370,7 @@ dependencies = [ "libc", "mio", "postcard", - "rand 0.9.4", + "rand 0.9.5", "rustc-hash 2.1.3", "serde_core", "tempfile", @@ -6390,9 +6400,9 @@ dependencies = [ [[package]] name = "mozangle" -version = "0.5.5" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "298bc7f83d5cca3789e47779e92cda492b75f11e03995bf558475bd9df2f639b" +checksum = "60b428c032f0af701a3ca440c92e7b552c25b2a5af2b08a85077ee8e9d2ae699" dependencies = [ "bindgen", "cc", @@ -6403,9 +6413,9 @@ dependencies = [ [[package]] name = "mozjs" -version = "0.18.0" +version = "0.18.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e22429d9fe0dc27169cb3ce0631d20f64f7d1c8fa5a90e039437e9fa9a7f30f" +checksum = "17277cebd079c3eb424f8d56d8f9ca9333ec263f9383b3595931b665f544d876" dependencies = [ "bindgen", "cc", @@ -6418,9 +6428,9 @@ dependencies = [ [[package]] name = "mozjs_sys" -version = "140.12.0-1" +version = "140.12.0-2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d2c9df3f8007cf4b37f411602870d73f05f6cb70906766fe8639fcad1133a48" +checksum = "eaf1645d99277fe604091a848fecbde7b9b595cbc3a592247a68d954c8acb596" dependencies = [ "bindgen", "cc", @@ -6544,7 +6554,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2bf919621e7975acb27d881bae2fb993e0d45c8e0446e85e6272971e00dc8df" dependencies = [ "arrayvec", - "bit-set", + "bit-set 0.9.1", "bitflags 2.13.0", "cfg-if", "cfg_aliases", @@ -6563,6 +6573,45 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "naga" +version = "30.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23bf0a141a9ab6f07dbb492db53245e464bc9db42f407772d9ae03d83a2c1033" +dependencies = [ + "arrayvec", + "bit-set 0.10.0", + "bitflags 2.13.0", + "cfg-if", + "cfg_aliases", + "codespan-reporting", + "half", + "hashbrown 0.17.1", + "indexmap", + "libm", + "log", + "naga-types", + "num-traits", + "once_cell", + "rustc-hash 1.1.0", + "spirv", + "thiserror 2.0.18", + "unicode-ident", +] + +[[package]] +name = "naga-types" +version = "30.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "658200ddc25c6c7b860747516d132d1b284c0fafb7a380233acee9a72fb30e11" +dependencies = [ + "hashbrown 0.17.1", + "indexmap", + "rustc-hash 1.1.0", + "serde", + "thiserror 2.0.18", +] + [[package]] name = "ndk" version = "0.9.0" @@ -6871,7 +6920,7 @@ dependencies = [ "num-integer", "num-iter", "num-traits", - "rand 0.8.6", + "rand 0.8.7", "smallvec", "zeroize", ] @@ -7289,6 +7338,7 @@ dependencies = [ "bitflags 2.13.0", "objc2 0.6.4", "objc2-core-foundation", + "objc2-core-graphics", "objc2-foundation 0.3.2", "objc2-metal 0.3.2", ] @@ -7517,6 +7567,15 @@ dependencies = [ "libredox", ] +[[package]] +name = "ordered-channel" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95be4d57809897b5a7539fc15a7dfe0e84141bc3dfaa2e9b1b27caa90acf61ab" +dependencies = [ + "crossbeam-channel", +] + [[package]] name = "ordered-float" version = "5.3.0" @@ -8055,9 +8114,9 @@ dependencies = [ [[package]] name = "pollster" -version = "0.4.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f3a9f18d041e6d0e102a0a46750538147e5e8992d3b4873aaafee2520b00ce3" +checksum = "bc6355899e1c9462875b6757c79f3caa011a1fdae12bbb1a2e72dd1f234f8336" [[package]] name = "poly1305" @@ -8092,9 +8151,9 @@ dependencies = [ [[package]] name = "polyval" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dfc63250416fea14f5749b90725916a6c903f599d51cb635aa7a52bfd03eede" +checksum = "b20f20e954175de5f463f67781b35583397d916b1d148738923711b2ad16bee8" dependencies = [ "cpubits", "cpufeatures 0.3.0", @@ -8541,9 +8600,9 @@ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" [[package]] name = "rand" -version = "0.8.6" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca0ecfa931c29007047d1bc58e623ab12e5590e8c7cc53200d5202b69266d8a" +checksum = "22f6172bdec972074665ed81ed53b71da00bfc44b65a753cfde883ec4c702a1a" dependencies = [ "libc", "rand_chacha 0.3.1", @@ -8552,9 +8611,9 @@ dependencies = [ [[package]] name = "rand" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c5af06bb1b7d3216d91932aed5265164bf384dc89cd6ba05cf59a35f5f76ea" +checksum = "b9ef1d0d795eb7d84685bca4f72f3649f064e6641543d3a8c415898726a57b41" dependencies = [ "rand_chacha 0.9.0", "rand_core 0.9.5", @@ -8657,7 +8716,7 @@ dependencies = [ "num-traits", "paste", "profiling", - "rand 0.9.4", + "rand 0.9.5", "rand_chacha 0.9.0", "simd_helpers", "thiserror 2.0.18", @@ -9401,7 +9460,7 @@ dependencies = [ [[package]] name = "selectors" version = "0.39.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "bitflags 2.13.0", "cssparser", @@ -9906,7 +9965,7 @@ dependencies = [ "strum 0.27.2", "uuid", "webrender_api", - "wgpu-core", + "wgpu-core 30.0.0", "zeroize", ] @@ -10187,6 +10246,7 @@ dependencies = [ "unicode-script", "unicode_categories", "url", + "uuid", "web_atoms", "webrender_api", ] @@ -10220,6 +10280,7 @@ dependencies = [ "servo_arc", "stylo", "stylo_traits", + "uuid", "webrender_api", ] @@ -10536,6 +10597,7 @@ dependencies = [ "servo-default-resources", "servo-devtools-traits", "servo-embedder-traits", + "servo-fonts", "servo-hyper-serde", "servo-malloc-size-of", "servo-net", @@ -10582,6 +10644,7 @@ dependencies = [ "parking_lot", "percent-encoding", "rand 0.10.2", + "resvg", "rustc-hash 2.1.3", "rustls-pki-types", "serde", @@ -10803,6 +10866,7 @@ dependencies = [ "postcard", "rand 0.10.2", "regex", + "resvg", "rsa 0.10.0-rc.18", "rustc-hash 2.1.3", "selectors", @@ -10829,6 +10893,7 @@ dependencies = [ "servo-media", "servo-media-thread", "servo-metrics", + "servo-net", "servo-net-traits", "servo-paint-api", "servo-pixels", @@ -10867,8 +10932,8 @@ dependencies = [ "web_atoms", "webdriver", "webrender_api", - "wgpu-core", - "wgpu-types", + "wgpu-core 30.0.0", + "wgpu-types 30.0.0", "x25519-dalek", "x448", "xml5ever", @@ -11100,8 +11165,8 @@ dependencies = [ "servo-pixels", "servo-webgpu-traits", "webrender_api", - "wgpu-core", - "wgpu-types", + "wgpu-core 30.0.0", + "wgpu-types 30.0.0", ] [[package]] @@ -11115,8 +11180,8 @@ dependencies = [ "servo-malloc-size-of", "servo-pixels", "webrender_api", - "wgpu-core", - "wgpu-types", + "wgpu-core 30.0.0", + "wgpu-types 30.0.0", ] [[package]] @@ -11165,7 +11230,7 @@ dependencies = [ [[package]] name = "servo_arc" version = "0.4.3" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "serde", "stable_deref_trait", @@ -11173,9 +11238,9 @@ dependencies = [ [[package]] name = "sha1" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +checksum = "a978451301f4db1d02937a4ab3ccce137717b81826e79b7d49ffe3244a13c3b8" dependencies = [ "cfg-if", "cpufeatures 0.2.17", @@ -11708,7 +11773,7 @@ dependencies = [ [[package]] name = "stylo" version = "0.19.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "app_units", "arrayvec", @@ -11764,7 +11829,7 @@ dependencies = [ [[package]] name = "stylo_atoms" version = "0.19.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "string_cache", "string_cache_codegen", @@ -11773,7 +11838,7 @@ dependencies = [ [[package]] name = "stylo_derive" version = "0.19.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "darling", "proc-macro2", @@ -11785,7 +11850,7 @@ dependencies = [ [[package]] name = "stylo_dom" version = "0.19.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "bitflags 2.13.0", "stylo_malloc_size_of", @@ -11794,7 +11859,7 @@ dependencies = [ [[package]] name = "stylo_malloc_size_of" version = "0.19.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "app_units", "cssparser", @@ -11811,7 +11876,7 @@ dependencies = [ [[package]] name = "stylo_static_prefs" version = "0.19.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "toml 1.1.2+spec-1.1.0", ] @@ -11819,7 +11884,7 @@ dependencies = [ [[package]] name = "stylo_traits" version = "0.19.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "app_units", "bitflags 2.13.0", @@ -12170,9 +12235,9 @@ dependencies = [ [[package]] name = "thread_local" -version = "1.1.9" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" +checksum = "1ad99c4c6d32803332c548b1af0540b357b3f5fc0be8f6c6bfe8b2e6ae784070" dependencies = [ "cfg-if", ] @@ -12328,9 +12393,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" +checksum = "bb4ebadaa0af04fab11ae01eb5f9fdb5f9c5b875506e210e71c07873528baa7f" dependencies = [ "tinyvec_macros", ] @@ -12344,7 +12409,7 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "to_shmem" version = "0.5.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "cssparser", "servo_arc", @@ -12357,7 +12422,7 @@ dependencies = [ [[package]] name = "to_shmem_derive" version = "0.1.0" -source = "git+https://github.com/servo/stylo?rev=e90bb16403de93f469ae71665e0f047ddb00f9ed#e90bb16403de93f469ae71665e0f047ddb00f9ed" +source = "git+https://github.com/servo/stylo?rev=a64923b5d5c67313c81c5056f5e30ec0babb04d6#a64923b5d5c67313c81c5056f5e30ec0babb04d6" dependencies = [ "darling", "proc-macro2", @@ -12654,7 +12719,7 @@ dependencies = [ "bytes", "chrono", "prost", - "rand 0.8.6", + "rand 0.8.7", "thread-id", "tracing", "tracing-subscriber", @@ -12731,10 +12796,10 @@ dependencies = [ "http 1.4.2", "httparse", "log", - "rand 0.9.4", + "rand 0.9.5", "rustls", "rustls-pki-types", - "sha1 0.10.6", + "sha1 0.10.7", "thiserror 2.0.18", ] @@ -12945,9 +13010,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.23.4" +version = "1.23.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf80a72845275afea99e7f2b434723d3bc7e38470fcd1c7ed39a599c73319a53" +checksum = "ea5fab0d6c3c01ae70085a09cb03d4c7a1d6314e2b3e075392783396d724ca0a" dependencies = [ "getrandom 0.4.3", "js-sys", @@ -13022,9 +13087,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "588691169aed86b5c8fb487266afee01323234e6fd0a3f2aaec0eaa8e4007f23" dependencies = [ "bytemuck", + "crossbeam-channel", "glifo", "hashbrown 0.17.1", + "ordered-channel", "png 0.18.1", + "rayon", + "thread_local", "vello_common", ] @@ -13049,7 +13118,7 @@ checksum = "9dd38937516fa4b47423d9255bb5e4a65e839ec9d57c38c4af6189ce56bf46b7" dependencies = [ "bytemuck", "log", - "naga", + "naga 29.0.4", "thiserror 2.0.18", "vello_encoding", ] @@ -13451,9 +13520,9 @@ dependencies = [ [[package]] name = "webrender" -version = "0.69.0" +version = "0.70.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "384e260b5f94dd5459e58e37a4a336141ce1b91da3c3c403d579688922515731" +checksum = "ede9dbc3cfb3e2c073a68e20f8fd54d9f6be8587be1c7c948e1ac51112421ef6" dependencies = [ "allocator-api2", "bincode", @@ -13488,9 +13557,9 @@ dependencies = [ [[package]] name = "webrender_api" -version = "0.69.0" +version = "0.70.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61c9f6c3b8ea958f6c34c3eb82f46ac42dacd94e3c18c710bcd27879ade71492" +checksum = "11fa15766536df782680147d2ed7a2d2cebd2dc9f0f48e89c56ca39f11259d76" dependencies = [ "app_units", "bitflags 2.13.0", @@ -13508,9 +13577,9 @@ dependencies = [ [[package]] name = "webrender_build" -version = "0.69.0" +version = "0.70.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5476f637aa37fc5753921fb324cc9114cc158bfd7602382afefcd6afda4bad04" +checksum = "674538885dba825ee1ddda72ade941fef81364cb843bbb0452fe7d134068ed89" dependencies = [ "bitflags 2.13.0", "lazy_static", @@ -13537,7 +13606,7 @@ dependencies = [ "hashbrown 0.16.1", "js-sys", "log", - "naga", + "naga 29.0.4", "parking_lot", "portable-atomic", "profiling", @@ -13547,9 +13616,9 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "wgpu-core", - "wgpu-hal", - "wgpu-types", + "wgpu-core 29.0.4", + "wgpu-hal 29.0.4", + "wgpu-types 29.0.4", ] [[package]] @@ -13559,7 +13628,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f519832254e56965a9940c4af57dcb75f702b6f6fa4a0b172f685395843a4d7" dependencies = [ "arrayvec", - "bit-set", + "bit-set 0.9.1", "bit-vec", "bitflags 2.13.0", "bytemuck", @@ -13568,23 +13637,56 @@ dependencies = [ "hashbrown 0.16.1", "indexmap", "log", - "macro_rules_attribute", - "naga", + "naga 29.0.4", "once_cell", "parking_lot", "portable-atomic", "profiling", "raw-window-handle", "rustc-hash 1.1.0", + "smallvec", + "thiserror 2.0.18", + "wgpu-core-deps-apple 29.0.4", + "wgpu-core-deps-emscripten 29.0.4", + "wgpu-core-deps-windows-linux-android 29.0.4", + "wgpu-hal 29.0.4", + "wgpu-naga-bridge 29.0.4", + "wgpu-types 29.0.4", +] + +[[package]] +name = "wgpu-core" +version = "30.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08763620e76fc980bca7bf84de82568614487a53172dd968d89187282eb87fa2" +dependencies = [ + "arrayvec", + "bit-set 0.10.0", + "bit-vec", + "bitflags 2.13.0", + "bytemuck", + "cfg_aliases", + "document-features", + "hashbrown 0.17.1", + "indexmap", + "log", + "macro_rules_attribute", + "naga 30.0.0", + "naga-types", + "once_cell", + "parking_lot", + "profiling", + "raw-window-handle", + "rustc-hash 1.1.0", "serde", "smallvec", "thiserror 2.0.18", - "wgpu-core-deps-apple", - "wgpu-core-deps-emscripten", - "wgpu-core-deps-windows-linux-android", - "wgpu-hal", - "wgpu-naga-bridge", - "wgpu-types", + "wgpu-core-deps-apple 30.0.0", + "wgpu-core-deps-emscripten 30.0.0", + "wgpu-core-deps-windows-linux-android 30.0.0", + "wgpu-hal 30.0.0", + "wgpu-naga-bridge 30.0.0", + "wgpu-types 30.0.0", ] [[package]] @@ -13593,7 +13695,16 @@ version = "29.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f5e39e26c4c0e07589e67d18546cf79ff45383659fc72fca4dd293358a0347f3" dependencies = [ - "wgpu-hal", + "wgpu-hal 29.0.4", +] + +[[package]] +name = "wgpu-core-deps-apple" +version = "30.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3283b6da70d7fc892de95840215aa36381b5d0cbc479e88ee2b173c7b992b225" +dependencies = [ + "wgpu-hal 30.0.0", ] [[package]] @@ -13602,7 +13713,16 @@ version = "29.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "01e09be551dc939498bdd5f6b2c66e55ab275dad25825267a08605a80fc9f0af" dependencies = [ - "wgpu-hal", + "wgpu-hal 29.0.4", +] + +[[package]] +name = "wgpu-core-deps-emscripten" +version = "30.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85dcf2b2e5c2afb9eda64c570a87a4e570304bf39e52eddbaaf222d655b656ad" +dependencies = [ + "wgpu-hal 30.0.0", ] [[package]] @@ -13611,7 +13731,16 @@ version = "29.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4e592c1bbef6ad047647ae6e666ebd8cee7a32bb4544d9700ec96cbf73230257" dependencies = [ - "wgpu-hal", + "wgpu-hal 29.0.4", +] + +[[package]] +name = "wgpu-core-deps-windows-linux-android" +version = "30.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f76bc9c1c186ff3d9054e0d224c93c8c1c79d6653907c5249a5c1ea1a2cb1e43" +dependencies = [ + "wgpu-hal 30.0.0", ] [[package]] @@ -13623,7 +13752,7 @@ dependencies = [ "android_system_properties", "arrayvec", "ash", - "bit-set", + "bit-set 0.9.1", "bitflags 2.13.0", "block2 0.6.2", "bytemuck", @@ -13639,7 +13768,7 @@ dependencies = [ "libc", "libloading 0.8.9", "log", - "naga", + "naga 29.0.4", "ndk-sys", "objc2 0.6.4", "objc2-core-foundation", @@ -13661,8 +13790,61 @@ dependencies = [ "wasm-bindgen", "wayland-sys", "web-sys", - "wgpu-naga-bridge", - "wgpu-types", + "wgpu-naga-bridge 29.0.4", + "wgpu-types 29.0.4", + "windows 0.62.2", + "windows-core 0.62.2", + "windows-result 0.4.1", +] + +[[package]] +name = "wgpu-hal" +version = "30.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf765132d8d5f50e192e7880464890c13f4e7457aafe8e5466e8174586e9f101" +dependencies = [ + "android_system_properties", + "arrayvec", + "ash", + "bit-set 0.10.0", + "bitflags 2.13.0", + "block2 0.6.2", + "bytemuck", + "cfg-if", + "cfg_aliases", + "glow", + "glutin_wgl_sys", + "gpu-allocator", + "hashbrown 0.17.1", + "js-sys", + "khronos-egl", + "libc", + "libloading 0.8.9", + "log", + "naga 30.0.0", + "naga-types", + "ndk-sys", + "objc2 0.6.4", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-foundation 0.3.2", + "objc2-metal 0.3.2", + "objc2-quartz-core 0.3.2", + "once_cell", + "ordered-float", + "parking_lot", + "profiling", + "range-alloc", + "raw-window-handle", + "raw-window-metal", + "smallvec", + "static_assertions", + "thiserror 2.0.18", + "wasm-bindgen", + "wayland-sys", + "web-sys", + "wgpu-naga-bridge 30.0.0", + "wgpu-types 30.0.0", "windows 0.62.2", "windows-core 0.62.2", "windows-result 0.4.1", @@ -13674,8 +13856,18 @@ version = "29.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95226013f547544b223281cd16a4fb549aa9dcb562adbda0faae4c73ffbbc161" dependencies = [ - "naga", - "wgpu-types", + "naga 29.0.4", + "wgpu-types 29.0.4", +] + +[[package]] +name = "wgpu-naga-bridge" +version = "30.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9eaac644e5008925c78567d272b9d66ef83da55a53cc17fc7daade7bb6e66e5" +dependencies = [ + "naga 30.0.0", + "wgpu-types 30.0.0", ] [[package]] @@ -13689,7 +13881,23 @@ dependencies = [ "js-sys", "log", "raw-window-handle", + "web-sys", +] + +[[package]] +name = "wgpu-types" +version = "30.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a9c93c2b35edde326df60ffdee4c0f5864eac3011d6768b70d43f028ad93565" +dependencies = [ + "bitflags 2.13.0", + "bytemuck", + "js-sys", + "log", + "naga-types", + "raw-window-handle", "serde", + "static_assertions", "web-sys", ] @@ -14284,9 +14492,9 @@ dependencies = [ [[package]] name = "wr_glyph_rasterizer" -version = "0.69.0" +version = "0.70.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f35fd5520f25d3a02acc20464e53e48bb68e22ac78960f10a6fd76820e3bde2" +checksum = "bcda26d8788ba57a04cd75ae4a2c6da3aa8e5ab16ed1cfd5db09d0fbc04df2fb" dependencies = [ "core-foundation 0.9.4", "core-graphics", @@ -14711,9 +14919,9 @@ dependencies = [ [[package]] name = "zmij" -version = "1.0.21" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" +checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b" [[package]] name = "zstd" diff --git a/Cargo.toml b/Cargo.toml index 63b6d66..5ceb7d5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -82,7 +82,7 @@ fontconfig_sys = { package = "yeslogic-fontconfig-sys", version = "6" } fontsan = "0.6.1" fonts = { package = "servo-fonts", version = "0.1.0", path = "source/components/fonts" } fonts_traits = { package = "servo-fonts-traits", path = "source/components/shared/fonts" } -freetype-sys = "0.20" +freetype-sys = "0.23" fst = "0.4" futures = { version = "0.3", default-features = false } futures-core = { version = "0.3", default-features = false } @@ -108,7 +108,7 @@ gstreamer-sys = "0.25" gstreamer-video = "0.25" gstreamer-webrtc = { version = "0.25", features = ["v1_18"] } half = "2" -harfbuzz-sys = "0.6.1" +harfbuzz-sys = { version = "0.7", default-features = false } headers = "0.4" hitrace = "0.1.6" hkdf = "0.13" @@ -156,7 +156,7 @@ mime-multipart-hyper1 = "0.10.0" mime_guess = "2.0.5" ml-dsa = { version = "0.1", features = ["zeroize"] } ml-kem = { version = "0.3", features = ["getrandom", "pkcs8", "zeroize"] } -mozangle = "0.5.3" +mozangle = "0.6" net = { package = "servo-net", version = "0.1.0", path = "source/components/net" } net_traits = { package = "servo-net-traits", path = "source/components/shared/net" } nix = "0.30" @@ -193,7 +193,7 @@ phf_codegen = "0.13" phf_shared = "0.13" pixels = { package = "servo-pixels", version = "0.1.0", path = "source/components/pixels" } pkcs8 = "0.11" -pollster = "0.4" +pollster = "1.0" postcard = { version = "1.1.3", default-features = false, features = ["use-std"] } prettyplease = "0.2.32" proc-macro2 = "1" @@ -221,7 +221,7 @@ script_bindings = { package = "servo-script-bindings", version = "0.1.0", path = script_traits = { package = "servo-script-traits", path = "source/components/shared/script" } sea-query = { version = "1.0.0-rc.30", default-features = false, features = ["backend-sqlite", "derive"] } sea-query-rusqlite = { version = "0.8.0-rc.15" } -selectors = { git = "https://github.com/servo/stylo", rev = "e90bb16403de93f469ae71665e0f047ddb00f9ed" } +selectors = { git = "https://github.com/servo/stylo", rev = "a64923b5d5c67313c81c5056f5e30ec0babb04d6" } seq-macro = "0.3.6" serde = "1.0.228" serde_bytes = "0.11" @@ -260,7 +260,7 @@ servo-media-webrtc = { version = "0.1.0", path = "source/components/media/webrtc servo-wakelock = { version = "0.1.0", path = "source/components/wakelock" } servo_allocator = { package = "servo-allocator", version = "0.1.0", path = "source/components/allocator" } servo-tracing = { path = "source/components/servo_tracing" } -servo_arc = { git = "https://github.com/servo/stylo", rev = "e90bb16403de93f469ae71665e0f047ddb00f9ed" } +servo_arc = { git = "https://github.com/servo/stylo", rev = "a64923b5d5c67313c81c5056f5e30ec0babb04d6" } servo-url = { version = "0.1.0", path = "source/components/url" } sha1 = "0.11" sha2 = "0.11" @@ -272,13 +272,13 @@ storage = { package = "servo-storage", version = "0.1.0", path = "source/compone storage_traits = { package = "servo-storage-traits", path = "source/components/shared/storage" } string_cache = "0.9" strum = { version = "0.27", features = ["derive"] } -stylo = { git = "https://github.com/servo/stylo", rev = "e90bb16403de93f469ae71665e0f047ddb00f9ed" } -stylo_atoms = { git = "https://github.com/servo/stylo", rev = "e90bb16403de93f469ae71665e0f047ddb00f9ed" } -stylo_config = { git = "https://github.com/servo/stylo", rev = "e90bb16403de93f469ae71665e0f047ddb00f9ed" } -stylo_dom = { git = "https://github.com/servo/stylo", rev = "e90bb16403de93f469ae71665e0f047ddb00f9ed" } -stylo_malloc_size_of = { git = "https://github.com/servo/stylo", rev = "e90bb16403de93f469ae71665e0f047ddb00f9ed" } -stylo_static_prefs = { git = "https://github.com/servo/stylo", rev = "e90bb16403de93f469ae71665e0f047ddb00f9ed" } -stylo_traits = { git = "https://github.com/servo/stylo", rev = "e90bb16403de93f469ae71665e0f047ddb00f9ed" } +stylo = { git = "https://github.com/servo/stylo", rev = "a64923b5d5c67313c81c5056f5e30ec0babb04d6" } +stylo_atoms = { git = "https://github.com/servo/stylo", rev = "a64923b5d5c67313c81c5056f5e30ec0babb04d6" } +stylo_config = { git = "https://github.com/servo/stylo", rev = "a64923b5d5c67313c81c5056f5e30ec0babb04d6" } +stylo_dom = { git = "https://github.com/servo/stylo", rev = "a64923b5d5c67313c81c5056f5e30ec0babb04d6" } +stylo_malloc_size_of = { git = "https://github.com/servo/stylo", rev = "a64923b5d5c67313c81c5056f5e30ec0babb04d6" } +stylo_static_prefs = { git = "https://github.com/servo/stylo", rev = "a64923b5d5c67313c81c5056f5e30ec0babb04d6" } +stylo_traits = { git = "https://github.com/servo/stylo", rev = "a64923b5d5c67313c81c5056f5e30ec0babb04d6" } surfman = { version = "0.13.0", features = ["chains"] } swapper = "0.1" syn = { version = "2", default-features = false, features = ["clone-impls", "derive", "parsing"] } @@ -311,7 +311,7 @@ urlpattern = "0.6" utf-8 = "0.7" uuid = { version = "1.20.0", features = ["v4", "v5"] } vello = "0.9" -vello_cpu = "0.0.9" +vello_cpu = { version = "0.0.9", features = ["multithreading"] } warp = "0.4.2" web_atoms = "0.2" webdriver = "0.53.0" @@ -319,12 +319,12 @@ webgl = { package = "servo-webgl", version = "0.1.0", path = "source/components/ webgpu = { package = "servo-webgpu", version = "0.1.0", path = "source/components/webgpu" } webgpu_traits = { package = "servo-webgpu-traits", path = "source/components/shared/webgpu" } webpki-roots = "1.0" -webrender = { version = "0.69", features = ["capture"] } -webrender_api = "0.69" +webrender = { version = "0.70", features = ["capture"] } +webrender_api = "0.70" webxr = { package = "servo-webxr", version = "0.1.0", path = "source/components/webxr" } webxr-api = { package = "servo-webxr-api", path = "source/components/shared/webxr" } -wgpu-core = "29" -wgpu-types = "29" +wgpu-core = "30" +wgpu-types = "30" winapi = "0.3" windows-sys = "0.61" winit = "0.30.12" diff --git a/forkme.lock b/forkme.lock index e8c6864..996c5e0 100644 --- a/forkme.lock +++ b/forkme.lock @@ -1 +1 @@ -58d831b6edbe4194c706ca264f798c15fe169389 +023f08b8a1f76c653555ac788548718744c5ce6e diff --git a/patches/Cargo.lock.patch b/patches/Cargo.lock.patch index ee22d93..7bad2d3 100644 --- a/patches/Cargo.lock.patch +++ b/patches/Cargo.lock.patch @@ -47,7 +47,7 @@ name = "base16ct" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -1176,6 +1209,15 @@ +@@ -1185,6 +1218,15 @@ ] [[package]] @@ -63,7 +63,7 @@ name = "cc" version = "1.2.66" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -1312,6 +1354,20 @@ +@@ -1321,6 +1363,20 @@ ] [[package]] @@ -84,7 +84,7 @@ name = "cipher" version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -1572,11 +1628,20 @@ +@@ -1581,11 +1637,20 @@ dependencies = [ "core-foundation 0.9.4", "core-graphics", @@ -106,7 +106,7 @@ name = "core_maths" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -1654,6 +1719,12 @@ +@@ -1663,6 +1728,12 @@ ] [[package]] @@ -119,7 +119,7 @@ name = "crossbeam-channel" version = "0.5.16" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -1890,6 +1961,26 @@ +@@ -1899,6 +1970,26 @@ checksum = "a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8" [[package]] @@ -146,7 +146,7 @@ name = "data-url" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -2348,6 +2439,8 @@ +@@ -2357,6 +2448,8 @@ "pkcs8", "rand_core 0.10.1", "sec1", @@ -155,7 +155,7 @@ "subtle", "zeroize", ] -@@ -2408,6 +2501,18 @@ +@@ -2417,6 +2510,18 @@ checksum = "66b7e2430c6dff6a955451e2cfc438f09cea1965a9d6f87f7e3b90decc014099" [[package]] @@ -174,7 +174,7 @@ name = "enumflags2" version = "0.7.12" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -2786,12 +2891,21 @@ +@@ -2795,12 +2900,21 @@ [[package]] name = "foreign-types" @@ -197,7 +197,7 @@ ] [[package]] -@@ -2807,6 +2921,12 @@ +@@ -2816,6 +2930,12 @@ [[package]] name = "foreign-types-shared" @@ -210,7 +210,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" -@@ -3002,6 +3122,7 @@ +@@ -3011,6 +3131,7 @@ checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" dependencies = [ "cfg-if", @@ -218,7 +218,7 @@ "libc", "wasi", ] -@@ -3013,9 +3134,11 @@ +@@ -3022,9 +3143,11 @@ checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" dependencies = [ "cfg-if", @@ -230,16 +230,7 @@ ] [[package]] -@@ -3664,7 +3787,7 @@ - "cc", - "core-graphics", - "core-text", -- "foreign-types", -+ "foreign-types 0.5.0", - "freetype-sys", - "pkg-config", - "winapi", -@@ -3787,6 +3910,52 @@ +@@ -3795,6 +3918,52 @@ checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" [[package]] @@ -292,7 +283,7 @@ name = "hilog" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -3959,6 +4128,22 @@ +@@ -3967,6 +4136,22 @@ ] [[package]] @@ -315,7 +306,7 @@ name = "hyper-util" version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -3979,6 +4164,7 @@ +@@ -3987,6 +4172,7 @@ "tokio", "tower-service", "tracing", @@ -323,7 +314,7 @@ ] [[package]] -@@ -4595,6 +4781,29 @@ +@@ -4603,6 +4789,29 @@ ] [[package]] @@ -353,7 +344,7 @@ name = "ipnet" version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -4601,6 +4810,27 @@ +@@ -4609,6 +4818,27 @@ checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" [[package]] @@ -381,7 +372,7 @@ name = "is_terminal_polyfill" version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -5080,6 +5310,17 @@ +@@ -5088,6 +5318,17 @@ ] [[package]] @@ -399,7 +390,7 @@ name = "matchers" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -5273,6 +5514,29 @@ +@@ -5281,6 +5522,29 @@ checksum = "956787520e75e9bd233246045d19f42fb73242759cc57fba9611d940ae96d4b0" [[package]] @@ -429,7 +420,7 @@ name = "naga" version = "29.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -5356,6 +5620,23 @@ +@@ -5403,6 +5667,23 @@ ] [[package]] @@ -453,7 +444,7 @@ name = "ndk" version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -6080,6 +6361,10 @@ +@@ -6128,6 +6409,10 @@ version = "1.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" @@ -464,7 +455,7 @@ [[package]] name = "once_cell_polyfill" -@@ -6100,6 +6385,18 @@ +@@ -6148,6 +6433,18 @@ checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" [[package]] @@ -483,7 +474,7 @@ name = "openxr" version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -6790,6 +7087,61 @@ +@@ -6847,6 +7144,61 @@ ] [[package]] @@ -545,7 +536,7 @@ name = "quote" version = "1.0.46" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -7088,6 +7440,56 @@ +@@ -7145,6 +7497,56 @@ checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832" [[package]] @@ -602,7 +593,7 @@ name = "resvg" version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -7260,6 +7662,7 @@ +@@ -7317,6 +7719,7 @@ "aws-lc-rs", "log", "once_cell", @@ -610,7 +601,7 @@ "rustls-pki-types", "rustls-webpki", "subtle", -@@ -7284,6 +7687,7 @@ +@@ -7341,6 +7744,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "764899a24af3980067ee14bc143654f297b22eaebfe3c7b6b211920a5a59b046" dependencies = [ @@ -618,7 +609,7 @@ "zeroize", ] -@@ -7574,6 +7978,18 @@ +@@ -7631,6 +8035,18 @@ ] [[package]] @@ -637,7 +628,7 @@ name = "serde_json" version = "1.0.150" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -7914,6 +8330,7 @@ +@@ -7971,6 +8387,7 @@ "rand 0.10.2", "rustc-hash 2.1.3", "serde", @@ -645,7 +636,7 @@ "servo-background-hang-monitor", "servo-background-hang-monitor-api", "servo-base", -@@ -7940,6 +8357,8 @@ +@@ -7997,6 +8414,8 @@ "servo-webxr-api", "stylo", "stylo_traits", @@ -654,7 +645,7 @@ "tracing", ] -@@ -8572,9 +8991,11 @@ +@@ -8632,9 +9051,11 @@ name = "servo-net" version = "0.4.0" dependencies = [ @@ -666,7 +657,7 @@ "base64", "bytes", "chrono", -@@ -8604,6 +9025,7 @@ +@@ -8664,6 +9085,7 @@ "parking_lot", "quick_cache", "regex", @@ -674,7 +665,7 @@ "resvg", "rustc-hash 2.1.3", "rustls", -@@ -8610,9 +9032,11 @@ +@@ -8670,9 +9092,11 @@ "rustls-pki-types", "rustls-platform-verifier", "serde", @@ -685,8 +676,8 @@ + "servo-constellation-traits", "servo-devtools-traits", "servo-embedder-traits", - "servo-hyper-serde", -@@ -8663,6 +9087,7 @@ + "servo-fonts", +@@ -8725,6 +9149,7 @@ "rustc-hash 2.1.3", "rustls-pki-types", "serde", @@ -694,7 +685,7 @@ "servo-base", "servo-config", "servo-default-resources", -@@ -8674,8 +9099,10 @@ +@@ -8736,8 +9161,10 @@ "servo-profile-traits", "servo-url", "servo_arc", @@ -705,7 +696,7 @@ "url", "uuid", "webrender_api", -@@ -9255,6 +9682,7 @@ +@@ -9319,6 +9746,7 @@ "bpaf", "cc", "cfg-if", @@ -713,7 +704,7 @@ "crossbeam-channel", "dirs", "dpi", -@@ -9269,6 +9697,7 @@ +@@ -9333,6 +9761,7 @@ "headers", "hilog", "hitrace", @@ -721,7 +712,7 @@ "image", "ipc-channel", "jni 0.22.4", -@@ -9289,6 +9718,7 @@ +@@ -9353,6 +9782,7 @@ "ohos-window-manager-sys", "raw-window-handle", "rustls", @@ -729,7 +720,7 @@ "serde_json", "servo", "servo-allocator", -@@ -9295,6 +9725,7 @@ +@@ -9359,6 +9789,7 @@ "servo-base", "servo-webdriver-server", "signal-hook-registry", @@ -737,7 +728,7 @@ "surfman", "tokio", "tracing", -@@ -9929,6 +10360,9 @@ +@@ -9993,6 +10424,9 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" @@ -747,7 +738,7 @@ [[package]] name = "synstructure" -@@ -9963,6 +10397,27 @@ +@@ -10027,6 +10461,27 @@ ] [[package]] @@ -775,7 +766,7 @@ name = "system-deps" version = "7.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -9988,6 +10443,12 @@ +@@ -10052,6 +10507,12 @@ ] [[package]] @@ -788,7 +779,7 @@ name = "tar" version = "0.4.46" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -10305,6 +10766,16 @@ +@@ -10369,6 +10830,16 @@ ] [[package]] @@ -805,16 +796,16 @@ name = "tokio-rustls" version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -10406,6 +10877,25 @@ +@@ -10470,11 +10941,30 @@ "futures-util", "pin-project-lite", "sync_wrapper", + "tokio", -+ "tower-layer", -+ "tower-service", -+] -+ -+[[package]] + "tower-layer", + "tower-service", + ] + + [[package]] +name = "tower-http" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" @@ -828,10 +819,15 @@ + "iri-string", + "pin-project-lite", + "tower", - "tower-layer", - "tower-service", - ] -@@ -10725,6 +11215,12 @@ ++ "tower-layer", ++ "tower-service", ++] ++ ++[[package]] + name = "tower-layer" + version = "0.3.3" + source = "registry+https://github.com/rust-lang/crates.io-index" +@@ -10789,6 +11279,12 @@ ] [[package]] @@ -844,7 +840,7 @@ name = "urlpattern" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -@@ -11704,6 +12200,17 @@ +@@ -11911,6 +12407,17 @@ ] [[package]] diff --git a/patches/components/net/Cargo.toml.patch b/patches/components/net/Cargo.toml.patch index 74a41e1..e374ae2 100644 --- a/patches/components/net/Cargo.toml.patch +++ b/patches/components/net/Cargo.toml.patch @@ -16,7 +16,7 @@ content-security-policy = { workspace = true } cookie = { workspace = true } crossbeam-channel = { workspace = true } -@@ -46,6 +49,7 @@ +@@ -47,6 +50,7 @@ hyper_serde = { workspace = true } imsz = { workspace = true } ipc-channel = { workspace = true } @@ -24,7 +24,7 @@ itertools = { workspace = true } log = { workspace = true } malloc_size_of = { workspace = true } -@@ -60,20 +64,26 @@ +@@ -61,20 +65,26 @@ profile_traits = { workspace = true } quick_cache = { workspace = true, features = ["ahash"] } regex = { workspace = true } diff --git a/patches/components/net/http_loader.rs.patch b/patches/components/net/http_loader.rs.patch index da2735e..12d8f4d 100644 --- a/patches/components/net/http_loader.rs.patch +++ b/patches/components/net/http_loader.rs.patch @@ -1,14 +1,14 @@ --- original +++ modified -@@ -4,6 +4,7 @@ - +@@ -5,6 +5,7 @@ + use std::cmp::min; use std::collections::HashSet; use std::iter::FromIterator; +use std::path::PathBuf; use std::sync::Arc as StdArc; use std::sync::atomic::{AtomicBool, Ordering}; use std::time::{Duration, SystemTime}; -@@ -51,9 +52,9 @@ +@@ -52,9 +53,9 @@ }; use net_traits::response::{CacheState, RedirectTaint, Response, ResponseBody, ResponseType}; use net_traits::{ @@ -21,7 +21,7 @@ }; use parking_lot::{Mutex, RwLock}; use profile_traits::mem::{Report, ReportKind}; -@@ -94,6 +95,7 @@ +@@ -96,6 +97,7 @@ invalidate_cached_resources, refresh, }; use crate::resource_thread::{AuthCache, AuthCacheEntry}; @@ -29,7 +29,7 @@ use crate::websocket_loader::start_websocket; /// The various states an entry of the HttpCache can be in. -@@ -108,6 +110,7 @@ +@@ -110,6 +112,7 @@ } pub struct HttpState { @@ -37,7 +37,7 @@ pub hsts_list: RwLock, pub cookie_jar: RwLock, pub http_cache: HttpCache, -@@ -116,9 +119,28 @@ +@@ -118,9 +121,28 @@ pub client: ServoClient, pub override_manager: CertificateErrorOverrideManager, pub embedder_proxy: GenericEmbedderProxy, @@ -66,7 +66,7 @@ pub(crate) fn memory_reports(&self, suffix: &str, ops: &mut MallocSizeOfOps) -> Vec { vec![ Report { -@@ -158,6 +180,31 @@ +@@ -160,6 +182,31 @@ )); receiver.await.ok()? } diff --git a/patches/components/net/image_cache.rs.patch b/patches/components/net/image_cache.rs.patch index e615dea..cb2163c 100644 --- a/patches/components/net/image_cache.rs.patch +++ b/patches/components/net/image_cache.rs.patch @@ -1,6 +1,6 @@ --- original +++ modified -@@ -626,7 +626,9 @@ +@@ -642,7 +642,9 @@ self.key_cache.cache = KeyCacheState::PendingBatch } } else { diff --git a/patches/components/script/dom/bindings/constructor.rs.patch b/patches/components/script/dom/bindings/constructor.rs.patch index 18d42c0..b9ee80f 100644 --- a/patches/components/script/dom/bindings/constructor.rs.patch +++ b/patches/components/script/dom/bindings/constructor.rs.patch @@ -9,7 +9,7 @@ }; use crate::dom::bindings::codegen::PrototypeList; use crate::dom::bindings::conversions::DerivedFrom; -@@ -373,6 +373,8 @@ +@@ -374,6 +374,8 @@ local_name!("video") => HTMLVideoElementBinding::GetConstructorObject, local_name!("wbr") => HTMLElementBinding::GetConstructorObject, local_name!("xmp") => HTMLPreElementBinding::GetConstructorObject, diff --git a/patches/components/script/dom/document/document.rs.patch b/patches/components/script/dom/document/document.rs.patch index a18e098..55c6caf 100644 --- a/patches/components/script/dom/document/document.rs.patch +++ b/patches/components/script/dom/document/document.rs.patch @@ -156,7 +156,7 @@ pub(crate) fn set_navigation_start(&self, navigation_start: CrossProcessInstant) { self.interactive_time .borrow_mut() -@@ -3765,6 +3821,7 @@ +@@ -3770,6 +3826,7 @@ anchors: Default::default(), applets: Default::default(), iframes: RefCell::new(IFrameCollection::new()), @@ -164,7 +164,7 @@ shared_style_locks, stylesheets: DomRefCell::new(DocumentStylesheetSet::new()), stylesheet_list: MutNullableDom::new(None), -@@ -3845,6 +3902,7 @@ +@@ -3850,6 +3907,7 @@ active_sandboxing_flag_set: Cell::new(creation_sandboxing_flag_set), creation_sandboxing_flag_set: Cell::new(creation_sandboxing_flag_set), favicon: RefCell::new(None), @@ -172,7 +172,7 @@ websockets: DOMTracker::new(), details_name_groups: Default::default(), protocol_handler_automation_mode: Default::default(), -@@ -3865,6 +3923,7 @@ +@@ -3870,6 +3928,7 @@ )), image_cache, history: Default::default(), @@ -180,7 +180,7 @@ } } -@@ -4906,6 +4965,36 @@ +@@ -4911,6 +4970,36 @@ pub(crate) fn notify_embedder_favicon(&self) { if let Some(ref image) = *self.favicon.borrow() { @@ -217,7 +217,7 @@ self.send_to_embedder(EmbedderMsg::NewFavicon(self.webview_id(), image.clone())); } } -@@ -4984,6 +5073,30 @@ +@@ -4989,6 +5078,30 @@ pub(crate) fn set_iframe_load_in_progress(&self, value: bool) { self.iframe_load_in_progress.set(value) } diff --git a/patches/components/script/dom/html/htmlwebviewelement.rs.patch b/patches/components/script/dom/html/htmlwebviewelement.rs.patch index 81e0779..1a04168 100644 --- a/patches/components/script/dom/html/htmlwebviewelement.rs.patch +++ b/patches/components/script/dom/html/htmlwebviewelement.rs.patch @@ -292,7 +292,7 @@ + CreatorBrowsingContextInfo::from(None, None), + ); + self.script_window_proxies -+ .insert(response.new_browsing_context_id, window_proxy); ++ .insert(response.new_browsing_context_id, &window_proxy); + } + }, + Ok(None) => { diff --git a/patches/components/script/dom/notification.rs.patch b/patches/components/script/dom/notification.rs.patch index baf7907..706864e 100644 --- a/patches/components/script/dom/notification.rs.patch +++ b/patches/components/script/dom/notification.rs.patch @@ -36,7 +36,7 @@ } // TODO: step 7: If shown is false or oldNotification is non-null, -@@ -881,6 +893,11 @@ +@@ -888,6 +900,11 @@ for (request, resource_type) in pending_requests { self.fetch_and_show_when_ready(request, resource_type); } diff --git a/patches/components/script/dom/processingoptions.rs.patch b/patches/components/script/dom/processingoptions.rs.patch index c53d718..0f2f426 100644 --- a/patches/components/script/dom/processingoptions.rs.patch +++ b/patches/components/script/dom/processingoptions.rs.patch @@ -32,7 +32,7 @@ // Step 11.6. If processResponse is given, then call processResponse with response. // // Part of Preload -@@ -540,6 +549,60 @@ +@@ -544,6 +553,60 @@ } } diff --git a/patches/components/script/dom/workers/workerglobalscope.rs.patch b/patches/components/script/dom/workers/workerglobalscope.rs.patch index 490ae96..aae2c9f 100644 --- a/patches/components/script/dom/workers/workerglobalscope.rs.patch +++ b/patches/components/script/dom/workers/workerglobalscope.rs.patch @@ -1,6 +1,6 @@ --- original +++ modified -@@ -385,6 +385,8 @@ +@@ -389,6 +389,8 @@ gpu_id_hub, init.inherited_secure_context, init.unminify_js, diff --git a/patches/components/script/lib.rs.patch b/patches/components/script/lib.rs.patch index 705411f..961284b 100644 --- a/patches/components/script/lib.rs.patch +++ b/patches/components/script/lib.rs.patch @@ -1,6 +1,6 @@ --- original +++ modified -@@ -67,6 +67,7 @@ +@@ -68,6 +68,7 @@ pub mod textinput; mod timers; mod webdriver_handlers; diff --git a/patches/components/script/script_thread.rs.patch b/patches/components/script/script_thread.rs.patch index 4257345..5e8688a 100644 --- a/patches/components/script/script_thread.rs.patch +++ b/patches/components/script/script_thread.rs.patch @@ -57,7 +57,7 @@ use crate::dom::servoparser::{ParserContext, ServoParser}; use crate::dom::types::DebuggerGlobalScope; #[cfg(feature = "webgpu")] -@@ -1978,12 +1986,47 @@ +@@ -1980,12 +1988,47 @@ self.handle_refresh_cursor(pipeline_id); }, ScriptThreadMessage::PreferencesUpdated(updates) => { @@ -109,7 +109,7 @@ ScriptThreadMessage::ForwardKeyboardScroll(pipeline_id, scroll) => { if let Some(document) = self.documents.borrow().find_document(pipeline_id) { document.event_handler().do_keyboard_scroll(cx, scroll); -@@ -2015,6 +2058,46 @@ +@@ -2017,6 +2060,46 @@ ScriptThreadMessage::TriggerGarbageCollection => unsafe { JS_GC(cx, GCReason::API); }, @@ -156,7 +156,7 @@ } } -@@ -3076,16 +3159,32 @@ +@@ -3078,16 +3161,32 @@ reason: UpdatePipelineIdReason, cx: &mut js::context::JSContext, ) { @@ -193,7 +193,7 @@ let Some(window) = self.documents.borrow().find_window(new_pipeline_id) else { return; -@@ -3104,6 +3203,7 @@ +@@ -3106,6 +3205,7 @@ // is no need to pass along existing opener information that // will be discarded. None, @@ -201,7 +201,7 @@ ); } -@@ -3390,6 +3490,186 @@ +@@ -3392,6 +3492,186 @@ } } @@ -388,7 +388,7 @@ fn ask_constellation_for_top_level_info( &self, sender_webview_id: WebViewId, -@@ -3497,7 +3777,13 @@ +@@ -3504,7 +3784,13 @@ self.senders.pipeline_to_embedder_sender.clone(), self.senders.constellation_sender.clone(), incomplete.pipeline_id, @@ -403,7 +403,7 @@ incomplete.viewport_details, origin.clone(), final_url.clone(), -@@ -3519,6 +3805,8 @@ +@@ -3526,6 +3812,8 @@ #[cfg(feature = "webgpu")] self.gpu_id_hub.clone(), incomplete.load_data.inherited_secure_context, @@ -412,7 +412,7 @@ incomplete.theme, self.this.clone(), ); -@@ -3624,6 +3912,8 @@ +@@ -3631,6 +3919,8 @@ ); } @@ -421,7 +421,7 @@ document.set_ready_state(cx, DocumentReadyState::Loading); self.documents -@@ -3630,8 +3920,6 @@ +@@ -3637,8 +3927,6 @@ .borrow_mut() .insert(incomplete.pipeline_id, &document); @@ -430,7 +430,7 @@ // Initialize the browsing context for the window. let window_proxy = self.window_proxies.local_window_proxy( cx, -@@ -3642,6 +3930,7 @@ +@@ -3649,6 +3937,7 @@ incomplete.webview_id, incomplete.parent_info, incomplete.opener, @@ -438,7 +438,7 @@ ); if window_proxy.parent().is_some() { // https://html.spec.whatwg.org/multipage/#navigating-across-documents:delaying-load-events-mode-2 -@@ -3814,11 +4103,11 @@ +@@ -3821,11 +4110,11 @@ target_snapshot_params: TargetSnapshotParams, cx: &mut js::context::JSContext, ) { @@ -453,7 +453,7 @@ iframe.navigate_or_reload_child_browsing_context( load_data, history_handling, -@@ -3826,7 +4115,17 @@ +@@ -3833,7 +4122,17 @@ target_snapshot_params, cx, ); @@ -471,7 +471,7 @@ } /// Turn javascript: URL into JS code to eval, according to the steps in -@@ -4378,10 +4677,88 @@ +@@ -4386,10 +4685,88 @@ document.event_handler().handle_refresh_cursor(); } @@ -560,7 +560,7 @@ fn handle_request_screenshot_readiness( &self, webview_id: WebViewId, -@@ -4422,7 +4799,7 @@ +@@ -4430,7 +4807,7 @@ pinch_zoom_infos: PinchZoomInfos, ) { let Some(window) = self.documents.borrow().find_window(pipeline_id) else { diff --git a/patches/components/script_bindings/codegen/Bindings.conf.patch b/patches/components/script_bindings/codegen/Bindings.conf.patch index b92063d..8658409 100644 --- a/patches/components/script_bindings/codegen/Bindings.conf.patch +++ b/patches/components/script_bindings/codegen/Bindings.conf.patch @@ -51,7 +51,7 @@ 'Event': { 'cx': ['TimeStamp'], }, -@@ -789,6 +819,10 @@ +@@ -778,6 +808,10 @@ 'weakReferenceable': True, }, @@ -62,7 +62,7 @@ 'IDBCursor': { 'cx': ['Key', 'PrimaryKey'] }, -@@ -912,7 +946,7 @@ +@@ -901,7 +935,7 @@ }, 'Navigator': { @@ -71,7 +71,7 @@ 'Storage', 'Plugins', 'UserActivation', 'WakeLock', 'Xr', 'MediaDevices', 'MediaSession', 'Permissions', 'GetGamepads'], }, -@@ -961,6 +995,10 @@ +@@ -950,6 +984,10 @@ 'cx': ['RegisterPaint'], }, @@ -82,7 +82,7 @@ 'Performance': { 'cx': ['Mark', 'Measure', 'Navigation'], }, -@@ -1300,6 +1338,7 @@ +@@ -1321,6 +1359,7 @@ 'additionalTraits': ['crate::interfaces::WindowHelpers', 'crate::interfaces::HasOrigin'], 'realm': ['CreateImageBitmap', 'CreateImageBitmap_', 'WebdriverCallback', 'GetOpener', 'Fetch'], 'cx': [ diff --git a/patches/components/shared/net/Cargo.toml.patch b/patches/components/shared/net/Cargo.toml.patch index e9593d8..a4d1464 100644 --- a/patches/components/shared/net/Cargo.toml.patch +++ b/patches/components/shared/net/Cargo.toml.patch @@ -1,6 +1,6 @@ --- original +++ modified -@@ -43,12 +43,15 @@ +@@ -44,12 +44,15 @@ rustc-hash = { workspace = true } rustls-pki-types = { workspace = true } serde = { workspace = true } diff --git a/patches/components/shared/net/fetch/utils.rs.patch b/patches/components/shared/net/fetch/utils.rs.patch index 8f61332..08dc56b 100644 --- a/patches/components/shared/net/fetch/utils.rs.patch +++ b/patches/components/shared/net/fetch/utils.rs.patch @@ -1,6 +1,6 @@ --- original +++ modified -@@ -0,0 +1,338 @@ +@@ -0,0 +1,341 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +use std::fmt::Debug; @@ -41,6 +41,9 @@ + *response.body.lock() = ResponseBody::Done(self.body.clone()); + } + fn process_csp_violations(&mut self, _: &Request, _: Vec) {} ++ fn process_response_length_hint(&mut self, _: &Request, length: usize) { ++ self.body.reserve(length); ++ } +} + +/// Rewrites a response to replace the url. diff --git a/patches/components/shared/net/lib.rs.patch b/patches/components/shared/net/lib.rs.patch index 241bdde..a9561eb 100644 --- a/patches/components/shared/net/lib.rs.patch +++ b/patches/components/shared/net/lib.rs.patch @@ -26,7 +26,7 @@ } /// A loading context, for context-specific sniffing, as defined in -@@ -689,6 +694,58 @@ +@@ -700,6 +705,58 @@ Prefetch, } @@ -85,7 +85,7 @@ #[derive(Debug, Deserialize, Serialize)] pub enum CoreResourceMsg { Fetch(RequestBuilder, FetchChannels), -@@ -774,6 +831,13 @@ +@@ -785,6 +842,13 @@ CollectMemoryReport(ReportsChan), RevokeTokenForFile(BlobTokenRevocationRequest), RefreshTokenForFile(BlobTokenRefreshRequest), @@ -99,7 +99,7 @@ } #[derive(Debug, Deserialize, MallocSizeOf, Serialize)] -@@ -894,7 +958,8 @@ +@@ -905,7 +969,8 @@ ), };