Rewild Your Web
18
fork

Configure Feed

Select the types of activity you want to include in your feed.

chore: update Servo to e73c010bb18f7c84c3ce12721a08b6fcccc8dca7

Signed-off-by: webbeef <me@webbeef.org>

webbeef b4d2e115 458576f7

+474 -506
+249 -315
Cargo.lock
··· 491 491 492 492 [[package]] 493 493 name = "atproto-dasl" 494 - version = "0.14.3" 494 + version = "0.14.4" 495 495 source = "registry+https://github.com/rust-lang/crates.io-index" 496 - checksum = "e5f634261c10c472d173f65d8d509d173698ed32fda8b038a8429fc6557bec8f" 496 + checksum = "cffec10c2a595ecda5ec8e1e5e3ab3eac5c3bf8c89fd6018c13817fc94c431c0" 497 497 dependencies = [ 498 498 "blake3", 499 499 "cid", ··· 511 511 512 512 [[package]] 513 513 name = "atproto-identity" 514 - version = "0.14.3" 514 + version = "0.14.4" 515 515 source = "registry+https://github.com/rust-lang/crates.io-index" 516 - checksum = "8b74b36a5562cc745842699e3baf92a541b983fc2e07bcd1d88f4df245098f4a" 516 + checksum = "6c3e37150c834ef98dd4bcc383b57927b616a77182bf3f133c883b8e77e2d182" 517 517 dependencies = [ 518 518 "anyhow", 519 519 "async-trait", ··· 522 522 "chrono", 523 523 "data-encoding", 524 524 "ecdsa", 525 + "ed25519-dalek 2.2.0", 525 526 "elliptic-curve", 526 527 "hickory-resolver", 528 + "idna", 527 529 "k256", 528 530 "lru 0.12.5", 529 531 "multibase", ··· 854 856 source = "registry+https://github.com/rust-lang/crates.io-index" 855 857 checksum = "96eb4cdd6cf1b31d671e9efe75c5d1ec614776856cefbe109ca373554a6d514f" 856 858 dependencies = [ 857 - "hybrid-array 0.4.9", 859 + "hybrid-array 0.4.10", 858 860 ] 859 861 860 862 [[package]] ··· 1121 1123 1122 1124 [[package]] 1123 1125 name = "cc" 1124 - version = "1.2.58" 1126 + version = "1.2.59" 1125 1127 source = "registry+https://github.com/rust-lang/crates.io-index" 1126 - checksum = "e1e928d4b69e3077709075a938a05ffbedfa53a84c8f766efbf8220bb1ff60e1" 1128 + checksum = "b7a4d3ec6524d28a329fc53654bbadc9bdd7b0431f5d65f1a56ffb28a1ee5283" 1127 1129 dependencies = [ 1128 1130 "find-msvc-tools", 1129 1131 "jobserver", ··· 1549 1551 "bitflags 1.3.2", 1550 1552 "core-foundation 0.9.4", 1551 1553 "core-graphics-types 0.1.3", 1552 - "foreign-types 0.5.0", 1554 + "foreign-types", 1553 1555 "libc", 1554 1556 ] 1555 1557 ··· 1583 1585 dependencies = [ 1584 1586 "core-foundation 0.9.4", 1585 1587 "core-graphics", 1586 - "foreign-types 0.5.0", 1588 + "foreign-types", 1587 1589 "libc", 1588 1590 ] 1589 1591 ··· 1743 1745 source = "registry+https://github.com/rust-lang/crates.io-index" 1744 1746 checksum = "77727bb15fa921304124b128af125e7e3b968275d1b108b379190264f4423710" 1745 1747 dependencies = [ 1746 - "hybrid-array 0.4.9", 1748 + "hybrid-array 0.4.10", 1747 1749 ] 1748 1750 1749 1751 [[package]] ··· 2264 2266 dependencies = [ 2265 2267 "curve25519-dalek 4.1.3", 2266 2268 "ed25519 2.2.3", 2269 + "rand_core 0.6.4", 2267 2270 "serde", 2268 2271 "sha2 0.10.9", 2269 2272 "subtle", ··· 2517 2520 2518 2521 [[package]] 2519 2522 name = "fastrand" 2520 - version = "2.3.0" 2523 + version = "2.4.0" 2521 2524 source = "registry+https://github.com/rust-lang/crates.io-index" 2522 - checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" 2525 + checksum = "a043dc74da1e37d6afe657061213aa6f425f855399a11d3463c6ecccc4dfda1f" 2523 2526 2524 2527 [[package]] 2525 2528 name = "fax" ··· 2712 2715 dependencies = [ 2713 2716 "brotli-decompressor", 2714 2717 "cc", 2715 - ] 2716 - 2717 - [[package]] 2718 - name = "foreign-types" 2719 - version = "0.3.2" 2720 - source = "registry+https://github.com/rust-lang/crates.io-index" 2721 - checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 2722 - dependencies = [ 2723 - "foreign-types-shared 0.1.1", 2724 2718 ] 2725 2719 2726 2720 [[package]] ··· 2730 2724 checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" 2731 2725 dependencies = [ 2732 2726 "foreign-types-macros", 2733 - "foreign-types-shared 0.3.1", 2727 + "foreign-types-shared", 2734 2728 ] 2735 2729 2736 2730 [[package]] ··· 2743 2737 "quote", 2744 2738 "syn 2.0.117", 2745 2739 ] 2746 - 2747 - [[package]] 2748 - name = "foreign-types-shared" 2749 - version = "0.1.1" 2750 - source = "registry+https://github.com/rust-lang/crates.io-index" 2751 - checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 2752 2740 2753 2741 [[package]] 2754 2742 name = "foreign-types-shared" ··· 3156 3144 "glib-sys 0.22.3", 3157 3145 "gobject-sys 0.22.0", 3158 3146 "libc", 3159 - "system-deps 7.0.7", 3147 + "system-deps 7.0.8", 3160 3148 "windows-sys 0.61.2", 3161 3149 ] 3162 3150 ··· 3205 3193 3206 3194 [[package]] 3207 3195 name = "glib" 3208 - version = "0.22.3" 3196 + version = "0.22.4" 3209 3197 source = "registry+https://github.com/rust-lang/crates.io-index" 3210 - checksum = "039f93465ac17e6cb02d16f16572cd3e43a77e736d5ecc461e71b9c9c5c0569c" 3198 + checksum = "02856b71413e175be50eff37fe0aefa53e227054ee3d96196faee8a0823cac80" 3211 3199 dependencies = [ 3212 3200 "bitflags 2.11.0", 3213 3201 "futures-channel", ··· 3267 3255 checksum = "1eb23a616a3dbc7fc15bbd26f58756ff0b04c8a894df3f0680cd21011db6a642" 3268 3256 dependencies = [ 3269 3257 "libc", 3270 - "system-deps 7.0.7", 3258 + "system-deps 7.0.8", 3271 3259 ] 3272 3260 3273 3261 [[package]] ··· 3354 3342 dependencies = [ 3355 3343 "glib-sys 0.22.3", 3356 3344 "libc", 3357 - "system-deps 7.0.7", 3345 + "system-deps 7.0.8", 3358 3346 ] 3359 3347 3360 3348 [[package]] ··· 3435 3423 "futures-channel", 3436 3424 "futures-core", 3437 3425 "futures-util", 3438 - "glib 0.22.3", 3426 + "glib 0.22.4", 3439 3427 "gstreamer-sys", 3440 3428 "itertools 0.14.0", 3441 3429 "kstring", ··· 3458 3446 dependencies = [ 3459 3447 "futures-core", 3460 3448 "futures-sink", 3461 - "glib 0.22.3", 3449 + "glib 0.22.4", 3462 3450 "gstreamer", 3463 3451 "gstreamer-app-sys", 3464 3452 "gstreamer-base", ··· 3475 3463 "gstreamer-base-sys", 3476 3464 "gstreamer-sys", 3477 3465 "libc", 3478 - "system-deps 7.0.7", 3466 + "system-deps 7.0.8", 3479 3467 ] 3480 3468 3481 3469 [[package]] ··· 3485 3473 checksum = "46e64660e1963ff3b6a4a5175f917524254a6ae36ac7b83e29b760d879a33073" 3486 3474 dependencies = [ 3487 3475 "cfg-if", 3488 - "glib 0.22.3", 3476 + "glib 0.22.4", 3489 3477 "gstreamer", 3490 3478 "gstreamer-audio-sys", 3491 3479 "gstreamer-base", ··· 3504 3492 "gstreamer-base-sys", 3505 3493 "gstreamer-sys", 3506 3494 "libc", 3507 - "system-deps 7.0.7", 3495 + "system-deps 7.0.8", 3508 3496 ] 3509 3497 3510 3498 [[package]] ··· 3515 3503 dependencies = [ 3516 3504 "atomic_refcell", 3517 3505 "cfg-if", 3518 - "glib 0.22.3", 3506 + "glib 0.22.4", 3519 3507 "gstreamer", 3520 3508 "gstreamer-base-sys", 3521 3509 "libc", ··· 3531 3519 "gobject-sys 0.22.0", 3532 3520 "gstreamer-sys", 3533 3521 "libc", 3534 - "system-deps 7.0.7", 3522 + "system-deps 7.0.8", 3535 3523 ] 3536 3524 3537 3525 [[package]] ··· 3540 3528 source = "registry+https://github.com/rust-lang/crates.io-index" 3541 3529 checksum = "94f83397da547ce27d7b912980ecb21c99c6aedee4015765355fe66cdf0bd9b9" 3542 3530 dependencies = [ 3543 - "glib 0.22.3", 3531 + "glib 0.22.4", 3544 3532 "gstreamer", 3545 3533 "gstreamer-base", 3546 3534 "gstreamer-gl-sys", ··· 3554 3542 source = "registry+https://github.com/rust-lang/crates.io-index" 3555 3543 checksum = "ff3c29e6d4b92ef22b0bacc2cff02902d40516942fead63c656d7fccc75221e8" 3556 3544 dependencies = [ 3557 - "glib 0.22.3", 3545 + "glib 0.22.4", 3558 3546 "gstreamer", 3559 3547 "gstreamer-gl", 3560 3548 "gstreamer-gl-egl-sys", ··· 3570 3558 "glib-sys 0.22.3", 3571 3559 "gstreamer-gl-sys", 3572 3560 "libc", 3573 - "system-deps 7.0.7", 3561 + "system-deps 7.0.8", 3574 3562 ] 3575 3563 3576 3564 [[package]] ··· 3585 3573 "gstreamer-sys", 3586 3574 "gstreamer-video-sys", 3587 3575 "libc", 3588 - "system-deps 7.0.7", 3576 + "system-deps 7.0.8", 3589 3577 ] 3590 3578 3591 3579 [[package]] ··· 3594 3582 source = "registry+https://github.com/rust-lang/crates.io-index" 3595 3583 checksum = "9a83ca3d2030846f01be738b8b867ecb4b95269497bcfa459b8fc1ce897ad9f4" 3596 3584 dependencies = [ 3597 - "glib 0.22.3", 3585 + "glib 0.22.4", 3598 3586 "gstreamer", 3599 3587 "gstreamer-gl", 3600 3588 "gstreamer-gl-wayland-sys", ··· 3610 3598 "glib-sys 0.22.3", 3611 3599 "gstreamer-gl-sys", 3612 3600 "libc", 3613 - "system-deps 7.0.7", 3601 + "system-deps 7.0.8", 3614 3602 ] 3615 3603 3616 3604 [[package]] ··· 3619 3607 source = "registry+https://github.com/rust-lang/crates.io-index" 3620 3608 checksum = "642d86fed827466e2d1ff4f430313fdab5d113bc2bf1e9c9736a873e8832c6ca" 3621 3609 dependencies = [ 3622 - "glib 0.22.3", 3610 + "glib 0.22.4", 3623 3611 "gstreamer", 3624 3612 "gstreamer-gl", 3625 3613 "gstreamer-gl-x11-sys", ··· 3635 3623 "glib-sys 0.22.3", 3636 3624 "gstreamer-gl-sys", 3637 3625 "libc", 3638 - "system-deps 7.0.7", 3626 + "system-deps 7.0.8", 3639 3627 ] 3640 3628 3641 3629 [[package]] ··· 3644 3632 source = "registry+https://github.com/rust-lang/crates.io-index" 3645 3633 checksum = "3355c2c37bfd824cbd974bf0b8c004d71ca3755f825065957bc16356d79e6e34" 3646 3634 dependencies = [ 3647 - "glib 0.22.3", 3635 + "glib 0.22.4", 3648 3636 "gstreamer", 3649 3637 "gstreamer-play-sys", 3650 3638 "gstreamer-video", ··· 3662 3650 "gstreamer-sys", 3663 3651 "gstreamer-video-sys", 3664 3652 "libc", 3665 - "system-deps 7.0.7", 3653 + "system-deps 7.0.8", 3666 3654 ] 3667 3655 3668 3656 [[package]] ··· 3671 3659 source = "registry+https://github.com/rust-lang/crates.io-index" 3672 3660 checksum = "11650b5fbc5994877bc525519c554cb66166f155f9cc3119b0fe88a33dc5176e" 3673 3661 dependencies = [ 3674 - "glib 0.22.3", 3662 + "glib 0.22.4", 3675 3663 "gstreamer", 3676 3664 "gstreamer-sdp-sys", 3677 3665 ] ··· 3685 3673 "glib-sys 0.22.3", 3686 3674 "gstreamer-sys", 3687 3675 "libc", 3688 - "system-deps 7.0.7", 3676 + "system-deps 7.0.8", 3689 3677 ] 3690 3678 3691 3679 [[package]] ··· 3698 3686 "glib-sys 0.22.3", 3699 3687 "gobject-sys 0.22.0", 3700 3688 "libc", 3701 - "system-deps 7.0.7", 3689 + "system-deps 7.0.8", 3702 3690 ] 3703 3691 3704 3692 [[package]] ··· 3709 3697 dependencies = [ 3710 3698 "cfg-if", 3711 3699 "futures-channel", 3712 - "glib 0.22.3", 3700 + "glib 0.22.4", 3713 3701 "gstreamer", 3714 3702 "gstreamer-base", 3715 3703 "gstreamer-video-sys", ··· 3728 3716 "gstreamer-base-sys", 3729 3717 "gstreamer-sys", 3730 3718 "libc", 3731 - "system-deps 7.0.7", 3719 + "system-deps 7.0.8", 3732 3720 ] 3733 3721 3734 3722 [[package]] ··· 3737 3725 source = "registry+https://github.com/rust-lang/crates.io-index" 3738 3726 checksum = "7def31f08759da6f658462d7def7138e00346e5345958ba291926e9511e97d16" 3739 3727 dependencies = [ 3740 - "glib 0.22.3", 3728 + "glib 0.22.4", 3741 3729 "gstreamer", 3742 3730 "gstreamer-sdp", 3743 3731 "gstreamer-webrtc-sys", ··· 3754 3742 "gstreamer-sdp-sys", 3755 3743 "gstreamer-sys", 3756 3744 "libc", 3757 - "system-deps 7.0.7", 3745 + "system-deps 7.0.8", 3758 3746 ] 3759 3747 3760 3748 [[package]] ··· 3878 3866 "cc", 3879 3867 "core-graphics", 3880 3868 "core-text", 3881 - "foreign-types 0.5.0", 3869 + "foreign-types", 3882 3870 "freetype-sys", 3883 3871 "pkg-config", 3884 3872 "winapi", ··· 4191 4179 4192 4180 [[package]] 4193 4181 name = "hybrid-array" 4194 - version = "0.4.9" 4182 + version = "0.4.10" 4195 4183 source = "registry+https://github.com/rust-lang/crates.io-index" 4196 - checksum = "1a79f2aff40c18ab8615ddc5caa9eb5b96314aef18fe5823090f204ad988e813" 4184 + checksum = "3944cf8cf766b40e2a1a333ee5e9b563f854d5fa49d6a8ca2764e97c6eddb214" 4197 4185 dependencies = [ 4198 4186 "typenum", 4199 4187 ] ··· 4224 4212 4225 4213 [[package]] 4226 4214 name = "hyper" 4227 - version = "1.8.1" 4215 + version = "1.9.0" 4228 4216 source = "registry+https://github.com/rust-lang/crates.io-index" 4229 - checksum = "2ab2d4f250c3d7b1c9fcdff1cece94ea4e2dfbec68614f7b87cb205f24ca9d11" 4217 + checksum = "6299f016b246a94207e63da54dbe807655bf9e00044f73ded42c3ac5305fbcca" 4230 4218 dependencies = [ 4231 4219 "atomic-waker", 4232 4220 "bytes", ··· 4239 4227 "httpdate", 4240 4228 "itoa", 4241 4229 "pin-project-lite", 4242 - "pin-utils", 4243 4230 "smallvec", 4244 4231 "tokio", 4245 4232 "want", ··· 4252 4239 checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" 4253 4240 dependencies = [ 4254 4241 "http 1.4.0", 4255 - "hyper 1.8.1", 4242 + "hyper 1.9.0", 4256 4243 "hyper-util", 4257 4244 "log", 4258 4245 "rustls", ··· 4264 4251 ] 4265 4252 4266 4253 [[package]] 4267 - name = "hyper-tls" 4268 - version = "0.6.0" 4269 - source = "registry+https://github.com/rust-lang/crates.io-index" 4270 - checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" 4271 - dependencies = [ 4272 - "bytes", 4273 - "http-body-util", 4274 - "hyper 1.8.1", 4275 - "hyper-util", 4276 - "native-tls", 4277 - "tokio", 4278 - "tokio-native-tls", 4279 - "tower-service", 4280 - ] 4281 - 4282 - [[package]] 4283 4254 name = "hyper-util" 4284 4255 version = "0.1.20" 4285 4256 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 4291 4262 "futures-util", 4292 4263 "http 1.4.0", 4293 4264 "http-body 1.0.1", 4294 - "hyper 1.8.1", 4265 + "hyper 1.9.0", 4295 4266 "ipnet", 4296 4267 "libc", 4297 4268 "percent-encoding", ··· 4374 4345 "icu_properties 1.5.1", 4375 4346 "icu_provider 1.5.0", 4376 4347 "icu_provider_adapters", 4377 - "icu_segmenter", 4348 + "icu_segmenter 1.5.0", 4378 4349 "icu_timezone", 4379 4350 "tinystr 0.7.6", 4380 4351 "unicode-bidi", ··· 4442 4413 4443 4414 [[package]] 4444 4415 name = "icu_collections" 4445 - version = "2.1.1" 4416 + version = "2.2.0" 4446 4417 source = "registry+https://github.com/rust-lang/crates.io-index" 4447 - checksum = "4c6b649701667bbe825c3b7e6388cb521c23d88644678e83c0c4d0a621a34b43" 4418 + checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c" 4448 4419 dependencies = [ 4449 4420 "displaydoc", 4450 4421 "potential_utf", 4451 - "yoke 0.8.1", 4422 + "utf8_iter", 4423 + "yoke 0.8.2", 4452 4424 "zerofrom", 4453 - "zerovec 0.11.5", 4425 + "zerovec 0.11.6", 4454 4426 ] 4455 4427 4456 4428 [[package]] ··· 4559 4531 checksum = "52b1a7fbdbf3958f1be8354cb59ac73f165b7b7082d447ff2090355c9a069120" 4560 4532 4561 4533 [[package]] 4534 + name = "icu_locale" 4535 + version = "2.2.0" 4536 + source = "registry+https://github.com/rust-lang/crates.io-index" 4537 + checksum = "d5a396343c7208121dc86e35623d3dfe19814a7613cfd14964994cdc9c9a2e26" 4538 + dependencies = [ 4539 + "icu_collections 2.2.0", 4540 + "icu_locale_core", 4541 + "icu_locale_data", 4542 + "icu_provider 2.2.0", 4543 + "potential_utf", 4544 + "tinystr 0.8.3", 4545 + "zerovec 0.11.6", 4546 + ] 4547 + 4548 + [[package]] 4562 4549 name = "icu_locale_core" 4563 - version = "2.1.1" 4550 + version = "2.2.0" 4564 4551 source = "registry+https://github.com/rust-lang/crates.io-index" 4565 - checksum = "edba7861004dd3714265b4db54a3c390e880ab658fec5f7db895fae2046b5bb6" 4552 + checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29" 4566 4553 dependencies = [ 4567 4554 "displaydoc", 4568 - "litemap 0.8.1", 4569 - "tinystr 0.8.2", 4570 - "writeable 0.6.2", 4571 - "zerovec 0.11.5", 4555 + "litemap 0.8.2", 4556 + "serde", 4557 + "tinystr 0.8.3", 4558 + "writeable 0.6.3", 4559 + "zerovec 0.11.6", 4572 4560 ] 4573 4561 4574 4562 [[package]] 4563 + name = "icu_locale_data" 4564 + version = "2.2.0" 4565 + source = "registry+https://github.com/rust-lang/crates.io-index" 4566 + checksum = "d5fdcc9ac77c6d74ff5cf6e65ef3181d6af32003b16fce3a77fb451d2f695993" 4567 + 4568 + [[package]] 4575 4569 name = "icu_locid" 4576 4570 version = "1.5.0" 4577 4571 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 4624 4618 4625 4619 [[package]] 4626 4620 name = "icu_normalizer" 4627 - version = "2.1.1" 4621 + version = "2.2.0" 4628 4622 source = "registry+https://github.com/rust-lang/crates.io-index" 4629 - checksum = "5f6c8828b67bf8908d82127b2054ea1b4427ff0230ee9141c54251934ab1b599" 4623 + checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4" 4630 4624 dependencies = [ 4631 - "icu_collections 2.1.1", 4632 - "icu_normalizer_data 2.1.1", 4633 - "icu_properties 2.1.2", 4634 - "icu_provider 2.1.1", 4625 + "icu_collections 2.2.0", 4626 + "icu_normalizer_data 2.2.0", 4627 + "icu_properties 2.2.0", 4628 + "icu_provider 2.2.0", 4635 4629 "smallvec", 4636 - "zerovec 0.11.5", 4630 + "zerovec 0.11.6", 4637 4631 ] 4638 4632 4639 4633 [[package]] ··· 4644 4638 4645 4639 [[package]] 4646 4640 name = "icu_normalizer_data" 4647 - version = "2.1.1" 4641 + version = "2.2.0" 4648 4642 source = "registry+https://github.com/rust-lang/crates.io-index" 4649 - checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a" 4643 + checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38" 4650 4644 4651 4645 [[package]] 4652 4646 name = "icu_pattern" ··· 4699 4693 4700 4694 [[package]] 4701 4695 name = "icu_properties" 4702 - version = "2.1.2" 4696 + version = "2.2.0" 4703 4697 source = "registry+https://github.com/rust-lang/crates.io-index" 4704 - checksum = "020bfc02fe870ec3a66d93e677ccca0562506e5872c650f893269e08615d74ec" 4698 + checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de" 4705 4699 dependencies = [ 4706 - "icu_collections 2.1.1", 4700 + "icu_collections 2.2.0", 4707 4701 "icu_locale_core", 4708 - "icu_properties_data 2.1.2", 4709 - "icu_provider 2.1.1", 4710 - "zerotrie 0.2.3", 4711 - "zerovec 0.11.5", 4702 + "icu_properties_data 2.2.0", 4703 + "icu_provider 2.2.0", 4704 + "zerotrie 0.2.4", 4705 + "zerovec 0.11.6", 4712 4706 ] 4713 4707 4714 4708 [[package]] ··· 4719 4713 4720 4714 [[package]] 4721 4715 name = "icu_properties_data" 4722 - version = "2.1.2" 4716 + version = "2.2.0" 4723 4717 source = "registry+https://github.com/rust-lang/crates.io-index" 4724 - checksum = "616c294cf8d725c6afcd8f55abc17c56464ef6211f9ed59cccffe534129c77af" 4718 + checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14" 4725 4719 4726 4720 [[package]] 4727 4721 name = "icu_provider" ··· 4742 4736 4743 4737 [[package]] 4744 4738 name = "icu_provider" 4745 - version = "2.1.1" 4739 + version = "2.2.0" 4746 4740 source = "registry+https://github.com/rust-lang/crates.io-index" 4747 - checksum = "85962cf0ce02e1e0a629cc34e7ca3e373ce20dda4c4d7294bbd0bf1fdb59e614" 4741 + checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421" 4748 4742 dependencies = [ 4749 4743 "displaydoc", 4750 4744 "icu_locale_core", 4751 - "writeable 0.6.2", 4752 - "yoke 0.8.1", 4745 + "serde", 4746 + "stable_deref_trait", 4747 + "writeable 0.6.3", 4748 + "yoke 0.8.2", 4753 4749 "zerofrom", 4754 - "zerotrie 0.2.3", 4755 - "zerovec 0.11.5", 4750 + "zerotrie 0.2.4", 4751 + "zerovec 0.11.6", 4756 4752 ] 4757 4753 4758 4754 [[package]] ··· 4790 4786 "icu_collections 1.5.0", 4791 4787 "icu_locid", 4792 4788 "icu_provider 1.5.0", 4793 - "icu_segmenter_data", 4789 + "icu_segmenter_data 1.5.1", 4794 4790 "utf8_iter", 4795 4791 "zerovec 0.10.4", 4796 4792 ] 4797 4793 4798 4794 [[package]] 4795 + name = "icu_segmenter" 4796 + version = "2.2.0" 4797 + source = "registry+https://github.com/rust-lang/crates.io-index" 4798 + checksum = "5c0794db0b1a86193ac9c48768d0e6c52c54448e0870ad87907d456ee0dac964" 4799 + dependencies = [ 4800 + "core_maths", 4801 + "icu_collections 2.2.0", 4802 + "icu_locale", 4803 + "icu_provider 2.2.0", 4804 + "icu_segmenter_data 2.2.0", 4805 + "potential_utf", 4806 + "utf8_iter", 4807 + "zerovec 0.11.6", 4808 + ] 4809 + 4810 + [[package]] 4799 4811 name = "icu_segmenter_data" 4800 4812 version = "1.5.1" 4801 4813 source = "registry+https://github.com/rust-lang/crates.io-index" 4802 4814 checksum = "a1e52775179941363cc594e49ce99284d13d6948928d8e72c755f55e98caa1eb" 4803 4815 4804 4816 [[package]] 4817 + name = "icu_segmenter_data" 4818 + version = "2.2.0" 4819 + source = "registry+https://github.com/rust-lang/crates.io-index" 4820 + checksum = "e4a2c462a4d927d512f5f882a033ddd62f33a05bb9f230d98f736ac3dc85938f" 4821 + 4822 + [[package]] 4805 4823 name = "icu_timezone" 4806 4824 version = "1.5.0" 4807 4825 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 4855 4873 source = "registry+https://github.com/rust-lang/crates.io-index" 4856 4874 checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" 4857 4875 dependencies = [ 4858 - "icu_normalizer 2.1.1", 4859 - "icu_properties 2.1.2", 4876 + "icu_normalizer 2.2.0", 4877 + "icu_properties 2.2.0", 4860 4878 ] 4861 4879 4862 4880 [[package]] ··· 4912 4930 4913 4931 [[package]] 4914 4932 name = "indexmap" 4915 - version = "2.13.0" 4933 + version = "2.13.1" 4916 4934 source = "registry+https://github.com/rust-lang/crates.io-index" 4917 - checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" 4935 + checksum = "45a8a2b9cb3e0b0c1803dbb0758ffac5de2f425b23c28f518faabd9d805342ff" 4918 4936 dependencies = [ 4919 4937 "equivalent", 4920 4938 "hashbrown 0.16.1", ··· 5144 5162 "hickory-resolver", 5145 5163 "http 1.4.0", 5146 5164 "http-body-util", 5147 - "hyper 1.8.1", 5165 + "hyper 1.9.0", 5148 5166 "hyper-util", 5149 5167 "iroh-base", 5150 5168 "iroh-metrics", ··· 5359 5377 5360 5378 [[package]] 5361 5379 name = "js-sys" 5362 - version = "0.3.92" 5380 + version = "0.3.94" 5363 5381 source = "registry+https://github.com/rust-lang/crates.io-index" 5364 - checksum = "cc4c90f45aa2e6eacbe8645f77fdea542ac97a494bcd117a67df9ff4d611f995" 5382 + checksum = "2e04e2ef80ce82e13552136fabeef8a5ed1f985a96805761cbb9a2c34e7664d9" 5365 5383 dependencies = [ 5366 5384 "cfg-if", 5367 5385 "futures-util", ··· 5520 5538 5521 5539 [[package]] 5522 5540 name = "libc" 5523 - version = "0.2.183" 5541 + version = "0.2.184" 5524 5542 source = "registry+https://github.com/rust-lang/crates.io-index" 5525 - checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d" 5543 + checksum = "48f5d2a454e16a5ea0f4ced81bd44e4cfc7bd3a507b61887c99fd3538b28e4af" 5526 5544 5527 5545 [[package]] 5528 5546 name = "libdbus-sys" ··· 5613 5631 5614 5632 [[package]] 5615 5633 name = "libz-sys" 5616 - version = "1.1.25" 5634 + version = "1.1.28" 5617 5635 source = "registry+https://github.com/rust-lang/crates.io-index" 5618 - checksum = "d52f4c29e2a68ac30c9087e1b772dc9f44a2b66ed44edf2266cf2be9b03dafc1" 5636 + checksum = "fc3a226e576f50782b3305c5ccf458698f92798987f551c6a02efe8276721e22" 5619 5637 dependencies = [ 5620 5638 "cc", 5621 5639 "libc", ··· 5649 5667 5650 5668 [[package]] 5651 5669 name = "litemap" 5652 - version = "0.8.1" 5670 + version = "0.8.2" 5653 5671 source = "registry+https://github.com/rust-lang/crates.io-index" 5654 - checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77" 5672 + checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0" 5655 5673 5656 5674 [[package]] 5657 5675 name = "litrs" ··· 5827 5845 "bitflags 2.11.0", 5828 5846 "block", 5829 5847 "core-graphics-types 0.2.0", 5830 - "foreign-types 0.5.0", 5848 + "foreign-types", 5831 5849 "log", 5832 5850 "objc", 5833 5851 "paste", ··· 5993 6011 5994 6012 [[package]] 5995 6013 name = "muda" 5996 - version = "0.17.1" 6014 + version = "0.17.2" 5997 6015 source = "registry+https://github.com/rust-lang/crates.io-index" 5998 - checksum = "01c1738382f66ed56b3b9c8119e794a2e23148ac8ea214eda86622d4cb9d415a" 6016 + checksum = "7c9fec5a4e89860383d778d10563a605838f8f0b2f9303868937e5ff32e86177" 5999 6017 dependencies = [ 6000 6018 "crossbeam-channel", 6001 6019 "dpi", ··· 6117 6135 "spirv", 6118 6136 "thiserror 2.0.18", 6119 6137 "unicode-ident", 6120 - ] 6121 - 6122 - [[package]] 6123 - name = "native-tls" 6124 - version = "0.2.18" 6125 - source = "registry+https://github.com/rust-lang/crates.io-index" 6126 - checksum = "465500e14ea162429d264d44189adc38b199b62b1c21eea9f69e4b73cb03bbf2" 6127 - dependencies = [ 6128 - "libc", 6129 - "log", 6130 - "openssl", 6131 - "openssl-probe", 6132 - "openssl-sys", 6133 - "schannel", 6134 - "security-framework", 6135 - "security-framework-sys", 6136 - "tempfile", 6137 6138 ] 6138 6139 6139 6140 [[package]] ··· 6979 6980 checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" 6980 6981 6981 6982 [[package]] 6982 - name = "openssl" 6983 - version = "0.10.76" 6984 - source = "registry+https://github.com/rust-lang/crates.io-index" 6985 - checksum = "951c002c75e16ea2c65b8c7e4d3d51d5530d8dfa7d060b4776828c88cfb18ecf" 6986 - dependencies = [ 6987 - "bitflags 2.11.0", 6988 - "cfg-if", 6989 - "foreign-types 0.3.2", 6990 - "libc", 6991 - "once_cell", 6992 - "openssl-macros", 6993 - "openssl-sys", 6994 - ] 6995 - 6996 - [[package]] 6997 - name = "openssl-macros" 6998 - version = "0.1.1" 6999 - source = "registry+https://github.com/rust-lang/crates.io-index" 7000 - checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" 7001 - dependencies = [ 7002 - "proc-macro2", 7003 - "quote", 7004 - "syn 2.0.117", 7005 - ] 7006 - 7007 - [[package]] 7008 6983 name = "openssl-probe" 7009 6984 version = "0.2.1" 7010 6985 source = "registry+https://github.com/rust-lang/crates.io-index" 7011 6986 checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" 7012 - 7013 - [[package]] 7014 - name = "openssl-sys" 7015 - version = "0.9.112" 7016 - source = "registry+https://github.com/rust-lang/crates.io-index" 7017 - checksum = "57d55af3b3e226502be1526dfdba67ab0e9c96fc293004e79576b2b9edb0dbdb" 7018 - dependencies = [ 7019 - "cc", 7020 - "libc", 7021 - "pkg-config", 7022 - "vcpkg", 7023 - ] 7024 6987 7025 6988 [[package]] 7026 6989 name = "openxr" ··· 7400 7363 checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" 7401 7364 7402 7365 [[package]] 7403 - name = "pin-utils" 7404 - version = "0.1.0" 7405 - source = "registry+https://github.com/rust-lang/crates.io-index" 7406 - checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 7407 - 7408 - [[package]] 7409 7366 name = "pkarr" 7410 7367 version = "5.0.4" 7411 7368 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 7453 7410 checksum = "12922b6296c06eb741b02d7b5161e3aaa22864af38dfa025a1a3ba3f68c84577" 7454 7411 dependencies = [ 7455 7412 "der 0.8.0", 7456 - "spki 0.8.0-rc.4", 7413 + "spki 0.8.0", 7457 7414 ] 7458 7415 7459 7416 [[package]] ··· 7634 7591 7635 7592 [[package]] 7636 7593 name = "potential_utf" 7637 - version = "0.1.4" 7594 + version = "0.1.5" 7638 7595 source = "registry+https://github.com/rust-lang/crates.io-index" 7639 - checksum = "b73949432f5e2a09657003c25bca5e19a0e9c84f8058ca374f49e0ebe605af77" 7596 + checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564" 7640 7597 dependencies = [ 7641 - "zerovec 0.11.5", 7598 + "serde_core", 7599 + "writeable 0.6.3", 7600 + "zerovec 0.11.6", 7642 7601 ] 7643 7602 7644 7603 [[package]] ··· 7713 7672 source = "registry+https://github.com/rust-lang/crates.io-index" 7714 7673 checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" 7715 7674 dependencies = [ 7716 - "toml_edit 0.25.8+spec-1.1.0", 7675 + "toml_edit 0.25.10+spec-1.1.0", 7717 7676 ] 7718 7677 7719 7678 [[package]] ··· 8224 8183 "http 1.4.0", 8225 8184 "http-body 1.0.1", 8226 8185 "http-body-util", 8227 - "hyper 1.8.1", 8186 + "hyper 1.9.0", 8228 8187 "hyper-rustls", 8229 - "hyper-tls", 8230 8188 "hyper-util", 8231 8189 "js-sys", 8232 8190 "log", 8233 8191 "mime", 8234 - "native-tls", 8235 8192 "percent-encoding", 8236 8193 "pin-project-lite", 8237 8194 "quinn", ··· 8242 8199 "serde_urlencoded", 8243 8200 "sync_wrapper", 8244 8201 "tokio", 8245 - "tokio-native-tls", 8246 8202 "tokio-rustls", 8247 8203 "tokio-util", 8248 8204 "tower", ··· 8680 8636 8681 8637 [[package]] 8682 8638 name = "semver" 8683 - version = "1.0.27" 8639 + version = "1.0.28" 8684 8640 source = "registry+https://github.com/rust-lang/crates.io-index" 8685 - checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" 8641 + checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" 8686 8642 8687 8643 [[package]] 8688 8644 name = "send_wrapper" ··· 8767 8723 8768 8724 [[package]] 8769 8725 name = "serde_spanned" 8770 - version = "1.1.0" 8726 + version = "1.1.1" 8771 8727 source = "registry+https://github.com/rust-lang/crates.io-index" 8772 - checksum = "876ac351060d4f882bb1032b6369eb0aef79ad9df1ea8bc404874d8cc3d0cd98" 8728 + checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" 8773 8729 dependencies = [ 8774 8730 "serde_core", 8775 8731 ] ··· 8822 8778 "gstreamer", 8823 8779 "http 1.4.0", 8824 8780 "http-body-util", 8825 - "hyper 1.8.1", 8781 + "hyper 1.9.0", 8826 8782 "image", 8827 8783 "ipc-channel", 8828 8784 "itertools 0.14.0", ··· 9329 9285 "cookie 0.18.1", 9330 9286 "headers 0.4.1", 9331 9287 "http 1.4.0", 9332 - "hyper 1.8.1", 9288 + "hyper 1.9.0", 9333 9289 "mime", 9334 9290 "serde", 9335 9291 "serde_bytes", ··· 9357 9313 "euclid", 9358 9314 "html5ever", 9359 9315 "icu_locid", 9360 - "icu_segmenter", 9316 + "icu_segmenter 1.5.0", 9361 9317 "itertools 0.14.0", 9362 9318 "kurbo 0.12.0", 9363 9319 "log", ··· 9534 9490 version = "0.1.0" 9535 9491 dependencies = [ 9536 9492 "byte-slice-cast", 9537 - "glib 0.22.3", 9493 + "glib 0.22.4", 9538 9494 "glib-sys 0.22.3", 9539 9495 "gstreamer", 9540 9496 "gstreamer-app", ··· 9574 9530 name = "servo-media-gstreamer-render-android" 9575 9531 version = "0.1.0" 9576 9532 dependencies = [ 9577 - "glib 0.22.3", 9533 + "glib 0.22.4", 9578 9534 "gstreamer", 9579 9535 "gstreamer-gl", 9580 9536 "gstreamer-gl-egl", ··· 9587 9543 name = "servo-media-gstreamer-render-unix" 9588 9544 version = "0.1.0" 9589 9545 dependencies = [ 9590 - "glib 0.22.3", 9546 + "glib 0.22.4", 9591 9547 "gstreamer", 9592 9548 "gstreamer-gl", 9593 9549 "gstreamer-gl-egl", ··· 9693 9649 "headers 0.4.1", 9694 9650 "http 1.4.0", 9695 9651 "http-body-util", 9696 - "hyper 1.8.1", 9652 + "hyper 1.9.0", 9697 9653 "hyper-rustls", 9698 9654 "hyper-util", 9699 9655 "imsz", ··· 10611 10567 10612 10568 [[package]] 10613 10569 name = "spki" 10614 - version = "0.8.0-rc.4" 10570 + version = "0.8.0" 10615 10571 source = "registry+https://github.com/rust-lang/crates.io-index" 10616 - checksum = "8baeff88f34ed0691978ec34440140e1572b68c7dd4a495fd14a3dc1944daa80" 10572 + checksum = "1d9efca8738c78ee9484207732f728b1ef517bbb1833d6fc0879ca898a522f6f" 10617 10573 dependencies = [ 10618 10574 "base64ct", 10619 10575 "der 0.8.0", ··· 10785 10741 "derive_more", 10786 10742 "encoding_rs", 10787 10743 "euclid", 10788 - "icu_segmenter", 10744 + "icu_segmenter 2.2.0", 10789 10745 "indexmap", 10790 10746 "itertools 0.14.0", 10791 10747 "itoa", ··· 11059 11015 11060 11016 [[package]] 11061 11017 name = "system-deps" 11062 - version = "7.0.7" 11018 + version = "7.0.8" 11063 11019 source = "registry+https://github.com/rust-lang/crates.io-index" 11064 - checksum = "48c8f33736f986f16d69b6cb8b03f55ddcad5c41acc4ccc39dd88e84aa805e7f" 11020 + checksum = "396a35feb67335377e0251fcbc1092fc85c484bd4e3a7a54319399da127796e7" 11065 11021 dependencies = [ 11066 11022 "cfg-expr 0.20.7", 11067 11023 "heck 0.5.0", 11068 11024 "pkg-config", 11069 - "toml 0.9.12+spec-1.1.0", 11025 + "toml 1.1.2+spec-1.1.0", 11070 11026 "version-compare", 11071 11027 ] 11072 11028 ··· 11347 11303 11348 11304 [[package]] 11349 11305 name = "tinystr" 11350 - version = "0.8.2" 11306 + version = "0.8.3" 11351 11307 source = "registry+https://github.com/rust-lang/crates.io-index" 11352 - checksum = "42d3e9c45c09de15d06dd8acf5f4e0e399e85927b7f00711024eb7ae10fa4869" 11308 + checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d" 11353 11309 dependencies = [ 11354 11310 "displaydoc", 11355 - "zerovec 0.11.5", 11311 + "serde_core", 11312 + "zerovec 0.11.6", 11356 11313 ] 11357 11314 11358 11315 [[package]] ··· 11407 11364 11408 11365 [[package]] 11409 11366 name = "tokio" 11410 - version = "1.50.0" 11367 + version = "1.51.0" 11411 11368 source = "registry+https://github.com/rust-lang/crates.io-index" 11412 - checksum = "27ad5e34374e03cfffefc301becb44e9dc3c17584f414349ebe29ed26661822d" 11369 + checksum = "2bd1c4c0fc4a7ab90fc15ef6daaa3ec3b893f004f915f2392557ed23237820cd" 11413 11370 dependencies = [ 11414 11371 "bytes", 11415 11372 "libc", ··· 11423 11380 11424 11381 [[package]] 11425 11382 name = "tokio-macros" 11426 - version = "2.6.1" 11383 + version = "2.7.0" 11427 11384 source = "registry+https://github.com/rust-lang/crates.io-index" 11428 - checksum = "5c55a2eff8b69ce66c84f85e1da1c233edc36ceb85a2058d11b0d6a3c7e7569c" 11385 + checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" 11429 11386 dependencies = [ 11430 11387 "proc-macro2", 11431 11388 "quote", 11432 11389 "syn 2.0.117", 11433 - ] 11434 - 11435 - [[package]] 11436 - name = "tokio-native-tls" 11437 - version = "0.3.1" 11438 - source = "registry+https://github.com/rust-lang/crates.io-index" 11439 - checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" 11440 - dependencies = [ 11441 - "native-tls", 11442 - "tokio", 11443 11390 ] 11444 11391 11445 11392 [[package]] ··· 11514 11461 11515 11462 [[package]] 11516 11463 name = "toml" 11517 - version = "0.9.12+spec-1.1.0" 11464 + version = "1.1.2+spec-1.1.0" 11518 11465 source = "registry+https://github.com/rust-lang/crates.io-index" 11519 - checksum = "cf92845e79fc2e2def6a5d828f0801e29a2f8acc037becc5ab08595c7d5e9863" 11466 + checksum = "81f3d15e84cbcd896376e6730314d59fb5a87f31e4b038454184435cd57defee" 11520 11467 dependencies = [ 11521 11468 "indexmap", 11522 11469 "serde_core", 11523 - "serde_spanned 1.1.0", 11524 - "toml_datetime 0.7.5+spec-1.1.0", 11470 + "serde_spanned 1.1.1", 11471 + "toml_datetime 1.1.1+spec-1.1.0", 11525 11472 "toml_parser", 11526 11473 "toml_writer", 11527 - "winnow 0.7.15", 11474 + "winnow 1.0.1", 11528 11475 ] 11529 11476 11530 11477 [[package]] ··· 11538 11485 11539 11486 [[package]] 11540 11487 name = "toml_datetime" 11541 - version = "0.7.5+spec-1.1.0" 11488 + version = "1.1.1+spec-1.1.0" 11542 11489 source = "registry+https://github.com/rust-lang/crates.io-index" 11543 - checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" 11544 - dependencies = [ 11545 - "serde_core", 11546 - ] 11547 - 11548 - [[package]] 11549 - name = "toml_datetime" 11550 - version = "1.1.0+spec-1.1.0" 11551 - source = "registry+https://github.com/rust-lang/crates.io-index" 11552 - checksum = "97251a7c317e03ad83774a8752a7e81fb6067740609f75ea2b585b569a59198f" 11490 + checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" 11553 11491 dependencies = [ 11554 11492 "serde_core", 11555 11493 ] ··· 11580 11518 11581 11519 [[package]] 11582 11520 name = "toml_edit" 11583 - version = "0.25.8+spec-1.1.0" 11521 + version = "0.25.10+spec-1.1.0" 11584 11522 source = "registry+https://github.com/rust-lang/crates.io-index" 11585 - checksum = "16bff38f1d86c47f9ff0647e6838d7bb362522bdf44006c7068c2b1e606f1f3c" 11523 + checksum = "a82418ca169e235e6c399a84e395ab6debeb3bc90edc959bf0f48647c6a32d1b" 11586 11524 dependencies = [ 11587 11525 "indexmap", 11588 - "toml_datetime 1.1.0+spec-1.1.0", 11526 + "toml_datetime 1.1.1+spec-1.1.0", 11589 11527 "toml_parser", 11590 11528 "winnow 1.0.1", 11591 11529 ] 11592 11530 11593 11531 [[package]] 11594 11532 name = "toml_parser" 11595 - version = "1.1.0+spec-1.1.0" 11533 + version = "1.1.2+spec-1.1.0" 11596 11534 source = "registry+https://github.com/rust-lang/crates.io-index" 11597 - checksum = "2334f11ee363607eb04df9b8fc8a13ca1715a72ba8662a26ac285c98aabb4011" 11535 + checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" 11598 11536 dependencies = [ 11599 11537 "winnow 1.0.1", 11600 11538 ] 11601 11539 11602 11540 [[package]] 11603 11541 name = "toml_writer" 11604 - version = "1.1.0+spec-1.1.0" 11542 + version = "1.1.1+spec-1.1.0" 11605 11543 source = "registry+https://github.com/rust-lang/crates.io-index" 11606 - checksum = "d282ade6016312faf3e41e57ebbba0c073e4056dab1232ab1cb624199648f8ed" 11544 + checksum = "756daf9b1013ebe47a8776667b466417e2d4c5679d441c26230efd9ef78692db" 11607 11545 11608 11546 [[package]] 11609 11547 name = "topological-sort" ··· 12270 12208 12271 12209 [[package]] 12272 12210 name = "wasm-bindgen" 12273 - version = "0.2.115" 12211 + version = "0.2.117" 12274 12212 source = "registry+https://github.com/rust-lang/crates.io-index" 12275 - checksum = "6523d69017b7633e396a89c5efab138161ed5aafcbc8d3e5c5a42ae38f50495a" 12213 + checksum = "0551fc1bb415591e3372d0bc4780db7e587d84e2a7e79da121051c5c4b89d0b0" 12276 12214 dependencies = [ 12277 12215 "cfg-if", 12278 12216 "once_cell", ··· 12283 12221 12284 12222 [[package]] 12285 12223 name = "wasm-bindgen-futures" 12286 - version = "0.4.65" 12224 + version = "0.4.67" 12287 12225 source = "registry+https://github.com/rust-lang/crates.io-index" 12288 - checksum = "2d1faf851e778dfa54db7cd438b70758eba9755cb47403f3496edd7c8fc212f0" 12226 + checksum = "03623de6905b7206edd0a75f69f747f134b7f0a2323392d664448bf2d3c5d87e" 12289 12227 dependencies = [ 12290 12228 "js-sys", 12291 12229 "wasm-bindgen", ··· 12293 12231 12294 12232 [[package]] 12295 12233 name = "wasm-bindgen-macro" 12296 - version = "0.2.115" 12234 + version = "0.2.117" 12297 12235 source = "registry+https://github.com/rust-lang/crates.io-index" 12298 - checksum = "4e3a6c758eb2f701ed3d052ff5737f5bfe6614326ea7f3bbac7156192dc32e67" 12236 + checksum = "7fbdf9a35adf44786aecd5ff89b4563a90325f9da0923236f6104e603c7e86be" 12299 12237 dependencies = [ 12300 12238 "quote", 12301 12239 "wasm-bindgen-macro-support", ··· 12303 12241 12304 12242 [[package]] 12305 12243 name = "wasm-bindgen-macro-support" 12306 - version = "0.2.115" 12244 + version = "0.2.117" 12307 12245 source = "registry+https://github.com/rust-lang/crates.io-index" 12308 - checksum = "921de2737904886b52bcbb237301552d05969a6f9c40d261eb0533c8b055fedf" 12246 + checksum = "dca9693ef2bab6d4e6707234500350d8dad079eb508dca05530c85dc3a529ff2" 12309 12247 dependencies = [ 12310 12248 "bumpalo", 12311 12249 "proc-macro2", ··· 12316 12254 12317 12255 [[package]] 12318 12256 name = "wasm-bindgen-shared" 12319 - version = "0.2.115" 12257 + version = "0.2.117" 12320 12258 source = "registry+https://github.com/rust-lang/crates.io-index" 12321 - checksum = "a93e946af942b58934c604527337bad9ae33ba1d5c6900bbb41c2c07c2364a93" 12259 + checksum = "39129a682a6d2d841b6c429d0c51e5cb0ed1a03829d8b3d1e69a011e62cb3d3b" 12322 12260 dependencies = [ 12323 12261 "unicode-ident", 12324 12262 ] ··· 12372 12310 12373 12311 [[package]] 12374 12312 name = "wayland-backend" 12375 - version = "0.3.14" 12313 + version = "0.3.15" 12376 12314 source = "registry+https://github.com/rust-lang/crates.io-index" 12377 - checksum = "aa75f400b7f719bcd68b3f47cd939ba654cedeef690f486db71331eec4c6a406" 12315 + checksum = "2857dd20b54e916ec7253b3d6b4d5c4d7d4ca2c33c2e11c6c76a99bd8744755d" 12378 12316 dependencies = [ 12379 12317 "cc", 12380 12318 "downcast-rs", ··· 12386 12324 12387 12325 [[package]] 12388 12326 name = "wayland-client" 12389 - version = "0.31.13" 12327 + version = "0.31.14" 12390 12328 source = "registry+https://github.com/rust-lang/crates.io-index" 12391 - checksum = "ab51d9f7c071abeee76007e2b742499e535148035bb835f97aaed1338cf516c3" 12329 + checksum = "645c7c96bb74690c3189b5c9cb4ca1627062bb23693a4fad9d8c3de958260144" 12392 12330 dependencies = [ 12393 12331 "bitflags 2.11.0", 12394 12332 "rustix 1.1.4", ··· 12409 12347 12410 12348 [[package]] 12411 12349 name = "wayland-cursor" 12412 - version = "0.31.13" 12350 + version = "0.31.14" 12413 12351 source = "registry+https://github.com/rust-lang/crates.io-index" 12414 - checksum = "4b3298683470fbdc6ca40151dfc48c8f2fd4c41a26e13042f801f85002384091" 12352 + checksum = "4a52d18780be9b1314328a3de5f930b73d2200112e3849ca6cb11822793fb34d" 12415 12353 dependencies = [ 12416 12354 "rustix 1.1.4", 12417 12355 "wayland-client", ··· 12420 12358 12421 12359 [[package]] 12422 12360 name = "wayland-protocols" 12423 - version = "0.32.11" 12361 + version = "0.32.12" 12424 12362 source = "registry+https://github.com/rust-lang/crates.io-index" 12425 - checksum = "b23b5df31ceff1328f06ac607591d5ba360cf58f90c8fad4ac8d3a55a3c4aec7" 12363 + checksum = "563a85523cade2429938e790815fd7319062103b9f4a2dc806e9b53b95982d8f" 12426 12364 dependencies = [ 12427 12365 "bitflags 2.11.0", 12428 12366 "wayland-backend", ··· 12432 12370 12433 12371 [[package]] 12434 12372 name = "wayland-protocols-plasma" 12435 - version = "0.3.11" 12373 + version = "0.3.12" 12436 12374 source = "registry+https://github.com/rust-lang/crates.io-index" 12437 - checksum = "d392fc283a87774afc9beefcd6f931582bb97fe0e6ced0b306a62cb1d026527c" 12375 + checksum = "2b6d8cf1eb2c1c31ed1f5643c88a6e53538129d4af80030c8cabd1f9fa884d91" 12438 12376 dependencies = [ 12439 12377 "bitflags 2.11.0", 12440 12378 "wayland-backend", ··· 12445 12383 12446 12384 [[package]] 12447 12385 name = "wayland-protocols-wlr" 12448 - version = "0.3.11" 12386 + version = "0.3.12" 12449 12387 source = "registry+https://github.com/rust-lang/crates.io-index" 12450 - checksum = "78248e4cc0eff8163370ba5c158630dcae1f3497a586b826eca2ef5f348d6235" 12388 + checksum = "eb04e52f7836d7c7976c78ca0250d61e33873c34156a2a1fc9474828ec268234" 12451 12389 dependencies = [ 12452 12390 "bitflags 2.11.0", 12453 12391 "wayland-backend", ··· 12458 12396 12459 12397 [[package]] 12460 12398 name = "wayland-scanner" 12461 - version = "0.31.9" 12399 + version = "0.31.10" 12462 12400 source = "registry+https://github.com/rust-lang/crates.io-index" 12463 - checksum = "c86287151a309799b821ca709b7345a048a2956af05957c89cb824ab919fa4e3" 12401 + checksum = "9c324a910fd86ebdc364a3e61ec1f11737d3b1d6c273c0239ee8ff4bc0d24b4a" 12464 12402 dependencies = [ 12465 12403 "proc-macro2", 12466 12404 "quick-xml 0.39.2", ··· 12469 12407 12470 12408 [[package]] 12471 12409 name = "wayland-sys" 12472 - version = "0.31.10" 12410 + version = "0.31.11" 12473 12411 source = "registry+https://github.com/rust-lang/crates.io-index" 12474 - checksum = "374f6b70e8e0d6bf9461a32988fd553b59ff630964924dad6e4a4eb6bd538d17" 12412 + checksum = "d8eab23fefc9e41f8e841df4a9c707e8a8c4ed26e944ef69297184de2785e3be" 12475 12413 dependencies = [ 12476 12414 "dlib", 12477 12415 "log", ··· 12481 12419 12482 12420 [[package]] 12483 12421 name = "web-sys" 12484 - version = "0.3.92" 12422 + version = "0.3.94" 12485 12423 source = "registry+https://github.com/rust-lang/crates.io-index" 12486 - checksum = "84cde8507f4d7cfcb1185b8cb5890c494ffea65edbe1ba82cfd63661c805ed94" 12424 + checksum = "cd70027e39b12f0849461e08ffc50b9cd7688d942c1c8e3c7b22273236b4dd0a" 12487 12425 dependencies = [ 12488 12426 "js-sys", 12489 12427 "wasm-bindgen", ··· 12521 12459 "bytes", 12522 12460 "cookie 0.16.2", 12523 12461 "http 0.2.12", 12524 - "icu_segmenter", 12462 + "icu_segmenter 1.5.0", 12525 12463 "log", 12526 12464 "serde", 12527 12465 "serde_derive", ··· 13381 13319 13382 13320 [[package]] 13383 13321 name = "winnow" 13384 - version = "0.7.15" 13385 - source = "registry+https://github.com/rust-lang/crates.io-index" 13386 - checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" 13387 - 13388 - [[package]] 13389 - name = "winnow" 13390 13322 version = "1.0.1" 13391 13323 source = "registry+https://github.com/rust-lang/crates.io-index" 13392 13324 checksum = "09dac053f1cd375980747450bfc7250c264eaae0583872e845c0c7cd578872b5" ··· 13559 13491 13560 13492 [[package]] 13561 13493 name = "writeable" 13562 - version = "0.6.2" 13494 + version = "0.6.3" 13563 13495 source = "registry+https://github.com/rust-lang/crates.io-index" 13564 - checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9" 13496 + checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4" 13565 13497 13566 13498 [[package]] 13567 13499 name = "ws_stream_wasm" ··· 13736 13668 13737 13669 [[package]] 13738 13670 name = "yoke" 13739 - version = "0.8.1" 13671 + version = "0.8.2" 13740 13672 source = "registry+https://github.com/rust-lang/crates.io-index" 13741 - checksum = "72d6e5c6afb84d73944e5cedb052c4680d5657337201555f9f2a16b7406d4954" 13673 + checksum = "abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca" 13742 13674 dependencies = [ 13743 13675 "stable_deref_trait", 13744 - "yoke-derive 0.8.1", 13676 + "yoke-derive 0.8.2", 13745 13677 "zerofrom", 13746 13678 ] 13747 13679 ··· 13759 13691 13760 13692 [[package]] 13761 13693 name = "yoke-derive" 13762 - version = "0.8.1" 13694 + version = "0.8.2" 13763 13695 source = "registry+https://github.com/rust-lang/crates.io-index" 13764 - checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" 13696 + checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" 13765 13697 dependencies = [ 13766 13698 "proc-macro2", 13767 13699 "quote", ··· 13809 13741 13810 13742 [[package]] 13811 13743 name = "zerofrom" 13812 - version = "0.1.6" 13744 + version = "0.1.7" 13813 13745 source = "registry+https://github.com/rust-lang/crates.io-index" 13814 - checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" 13746 + checksum = "69faa1f2a1ea75661980b013019ed6687ed0e83d069bc1114e2cc74c6c04c4df" 13815 13747 dependencies = [ 13816 13748 "zerofrom-derive", 13817 13749 ] 13818 13750 13819 13751 [[package]] 13820 13752 name = "zerofrom-derive" 13821 - version = "0.1.6" 13753 + version = "0.1.7" 13822 13754 source = "registry+https://github.com/rust-lang/crates.io-index" 13823 - checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" 13755 + checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" 13824 13756 dependencies = [ 13825 13757 "proc-macro2", 13826 13758 "quote", ··· 13861 13793 13862 13794 [[package]] 13863 13795 name = "zerotrie" 13864 - version = "0.2.3" 13796 + version = "0.2.4" 13865 13797 source = "registry+https://github.com/rust-lang/crates.io-index" 13866 - checksum = "2a59c17a5562d507e4b54960e8569ebee33bee890c70aa3fe7b97e85a9fd7851" 13798 + checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf" 13867 13799 dependencies = [ 13868 13800 "displaydoc", 13869 - "yoke 0.8.1", 13801 + "yoke 0.8.2", 13870 13802 "zerofrom", 13803 + "zerovec 0.11.6", 13871 13804 ] 13872 13805 13873 13806 [[package]] ··· 13883 13816 13884 13817 [[package]] 13885 13818 name = "zerovec" 13886 - version = "0.11.5" 13819 + version = "0.11.6" 13887 13820 source = "registry+https://github.com/rust-lang/crates.io-index" 13888 - checksum = "6c28719294829477f525be0186d13efa9a3c602f7ec202ca9e353d310fb9a002" 13821 + checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239" 13889 13822 dependencies = [ 13890 - "yoke 0.8.1", 13823 + "serde", 13824 + "yoke 0.8.2", 13891 13825 "zerofrom", 13892 - "zerovec-derive 0.11.2", 13826 + "zerovec-derive 0.11.3", 13893 13827 ] 13894 13828 13895 13829 [[package]] ··· 13905 13839 13906 13840 [[package]] 13907 13841 name = "zerovec-derive" 13908 - version = "0.11.2" 13842 + version = "0.11.3" 13909 13843 source = "registry+https://github.com/rust-lang/crates.io-index" 13910 - checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" 13844 + checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555" 13911 13845 dependencies = [ 13912 13846 "proc-macro2", 13913 13847 "quote",
+1 -1
forkme.lock
··· 1 - 7c05e1556f3c23c46aa925ec3f7c9ea22cc23da3 1 + e73c010bb18f7c84c3ce12721a08b6fcccc8dca7
+13 -11
patches/Cargo.lock.patch
··· 365 365 name = "hyper-util" 366 366 version = "0.1.20" 367 367 source = "registry+https://github.com/rust-lang/crates.io-index" 368 - @@ -3849,9 +4052,11 @@ 368 + @@ -3848,10 +4051,12 @@ 369 + "libc", 369 370 "percent-encoding", 370 371 "pin-project-lite", 371 - "socket2 0.6.1", 372 + - "socket2 0.5.10", 373 + + "socket2 0.6.1", 372 374 + "system-configuration", 373 375 "tokio", 374 376 "tower-service", ··· 1092 1094 version = "0.52.0" 1093 1095 source = "registry+https://github.com/rust-lang/crates.io-index" 1094 1096 checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" 1095 - @@ -11450,6 +12070,21 @@ 1097 + @@ -11441,6 +12061,21 @@ 1096 1098 1097 1099 [[package]] 1098 1100 name = "windows-targets" ··· 1114 1116 version = "0.52.6" 1115 1117 source = "registry+https://github.com/rust-lang/crates.io-index" 1116 1118 checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" 1117 - @@ -11507,6 +12142,12 @@ 1119 + @@ -11481,6 +12116,12 @@ 1118 1120 1119 1121 [[package]] 1120 1122 name = "windows_aarch64_gnullvm" ··· 1127 1129 version = "0.52.6" 1128 1130 source = "registry+https://github.com/rust-lang/crates.io-index" 1129 1131 checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" 1130 - @@ -11525,6 +12166,12 @@ 1132 + @@ -11493,6 +12134,12 @@ 1131 1133 1132 1134 [[package]] 1133 1135 name = "windows_aarch64_msvc" ··· 1140 1142 version = "0.52.6" 1141 1143 source = "registry+https://github.com/rust-lang/crates.io-index" 1142 1144 checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" 1143 - @@ -11543,6 +12190,12 @@ 1145 + @@ -11505,6 +12152,12 @@ 1144 1146 1145 1147 [[package]] 1146 1148 name = "windows_i686_gnu" ··· 1153 1155 version = "0.52.6" 1154 1156 source = "registry+https://github.com/rust-lang/crates.io-index" 1155 1157 checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" 1156 - @@ -11573,6 +12226,12 @@ 1158 + @@ -11523,6 +12176,12 @@ 1157 1159 1158 1160 [[package]] 1159 1161 name = "windows_i686_msvc" ··· 1166 1168 version = "0.52.6" 1167 1169 source = "registry+https://github.com/rust-lang/crates.io-index" 1168 1170 checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" 1169 - @@ -11591,6 +12250,12 @@ 1171 + @@ -11535,6 +12194,12 @@ 1170 1172 1171 1173 [[package]] 1172 1174 name = "windows_x86_64_gnu" ··· 1179 1181 version = "0.52.6" 1180 1182 source = "registry+https://github.com/rust-lang/crates.io-index" 1181 1183 checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" 1182 - @@ -11609,6 +12274,12 @@ 1184 + @@ -11547,6 +12212,12 @@ 1183 1185 1184 1186 [[package]] 1185 1187 name = "windows_x86_64_gnullvm" ··· 1192 1194 version = "0.52.6" 1193 1195 source = "registry+https://github.com/rust-lang/crates.io-index" 1194 1196 checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" 1195 - @@ -11627,6 +12298,12 @@ 1197 + @@ -11559,6 +12230,12 @@ 1196 1198 1197 1199 [[package]] 1198 1200 name = "windows_x86_64_msvc" ··· 1205 1207 version = "0.52.6" 1206 1208 source = "registry+https://github.com/rust-lang/crates.io-index" 1207 1209 checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 1208 - @@ -11699,6 +12376,16 @@ 1210 + @@ -11625,6 +12302,16 @@ 1209 1211 ] 1210 1212 1211 1213 [[package]]
+1 -1
patches/components/net/Cargo.toml.patch
··· 20 20 profile_traits = { workspace = true } 21 21 quick_cache = { version = "0.6.18", default-features = false, features = ["ahash"] } 22 22 regex = { workspace = true } 23 - +reqwest = "0.12" 23 + +reqwest = { version = "0.12", default-features = false, features = ["rustls-tls"] } 24 24 resvg = { workspace = true } 25 25 rustc-hash = { workspace = true } 26 26 rustls = { workspace = true, features = ["aws-lc-rs"] }
+11 -6
patches/components/net/atproto/xrpc.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -0,0 +1,282 @@ 3 + @@ -0,0 +1,287 @@ 4 4 +// SPDX-License-Identifier: AGPL-3.0-or-later 5 5 + 6 6 +use async_recursion::async_recursion; ··· 9 9 +use http::{HeaderMap, Method}; 10 10 +use log::error; 11 11 +use net_traits::AtProtoSessionState; 12 + +use net_traits::blob_url_store::UrlWithBlobClaim; 12 13 +use net_traits::fetch::utils::{SimpleFetchTarget, rewrite_response_url}; 13 14 +use net_traits::request::{ 14 15 + Referrer, Request, RequestBody, RequestBuilder, create_request_body_with_content, ··· 71 72 + request_headers.typed_insert(Authorization::bearer(&session.access_jwt).unwrap()); 72 73 + } 73 74 + } 74 - + let builder = RequestBuilder::new(None, xrpc_url.clone(), Referrer::NoReferrer) 75 - + .method(method.unwrap_or(Method::GET)) 76 - + .headers(request_headers) 77 - + .origin(xrpc_url.origin()) 78 - + .body(body); 75 + + let builder = RequestBuilder::new( 76 + + None, 77 + + UrlWithBlobClaim::from_url_without_having_claimed_blob(xrpc_url.clone()), 78 + + Referrer::NoReferrer, 79 + + ) 80 + + .method(method.unwrap_or(Method::GET)) 81 + + .headers(request_headers) 82 + + .origin(xrpc_url.origin()) 83 + + .body(body); 79 84 + (builder.build(), xrpc_url) 80 85 + } 81 86 +
+9 -9
patches/components/net/http_loader.rs.patch
··· 17 17 use headers::{ 18 18 AccessControlAllowCredentials, AccessControlAllowHeaders, AccessControlAllowMethods, 19 19 AccessControlMaxAge, AccessControlRequestMethod, Authorization, CacheControl, ContentLength, 20 - @@ -56,9 +57,10 @@ 20 + @@ -57,9 +58,10 @@ 21 21 CacheState, HttpsState, RedirectTaint, Response, ResponseBody, ResponseType, 22 22 }; 23 23 use net_traits::{ ··· 31 31 }; 32 32 use parking_lot::{Mutex, RwLock}; 33 33 use profile_traits::mem::{Report, ReportKind}; 34 - @@ -91,7 +93,8 @@ 34 + @@ -92,7 +94,8 @@ 35 35 use crate::http_cache::{ 36 36 CacheKey, CachedResourcesOrGuard, HttpCache, construct_response, invalidate, refresh, 37 37 }; ··· 41 41 use crate::websocket_loader::start_websocket; 42 42 43 43 /// The various states an entry of the HttpCache can be in. 44 - @@ -106,6 +109,7 @@ 44 + @@ -107,6 +110,7 @@ 45 45 } 46 46 47 47 pub struct HttpState { ··· 49 49 pub hsts_list: RwLock<HstsList>, 50 50 pub cookie_jar: RwLock<CookieStorage>, 51 51 pub http_cache: HttpCache, 52 - @@ -114,9 +118,28 @@ 52 + @@ -115,9 +119,28 @@ 53 53 pub client: ServoClient, 54 54 pub override_manager: CertificateErrorOverrideManager, 55 55 pub embedder_proxy: GenericEmbedderProxy<NetToEmbedderMsg>, ··· 78 78 pub(crate) fn memory_reports(&self, suffix: &str, ops: &mut MallocSizeOfOps) -> Vec<Report> { 79 79 vec![ 80 80 Report { 81 - @@ -156,6 +179,28 @@ 81 + @@ -157,6 +180,28 @@ 82 82 )); 83 83 receiver.await.ok()? 84 84 } ··· 107 107 } 108 108 109 109 /// Step 11 of <https://fetch.spec.whatwg.org/#concept-fetch>. 110 - @@ -577,14 +622,40 @@ 110 + @@ -578,14 +623,40 @@ 111 111 } 112 112 } 113 113 ··· 152 152 } else { 153 153 None 154 154 } 155 - @@ -1645,15 +1716,15 @@ 155 + @@ -1665,15 +1736,15 @@ 156 156 authorization_value.is_none() && 157 157 has_credentials(&current_url) 158 158 { ··· 171 171 } 172 172 } 173 173 } 174 - @@ -1860,7 +1931,7 @@ 174 + @@ -1875,7 +1946,7 @@ 175 175 }; 176 176 177 177 // Store the credentials as a proxy-authentication entry. ··· 180 180 user_name: credentials.username, 181 181 password: credentials.password, 182 182 }; 183 - @@ -1867,7 +1938,7 @@ 183 + @@ -1882,7 +1953,7 @@ 184 184 { 185 185 let mut auth_cache = context.state.auth_cache.write(); 186 186 let key = request.current_url().origin().ascii_serialization();
+2 -2
patches/components/net/protocols/mod.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -21,13 +21,19 @@ 3 + @@ -22,13 +22,19 @@ 4 4 5 5 use crate::fetch::methods::{DoneChannel, FetchContext, RangeRequestBounds, fetch}; 6 6 ··· 20 20 21 21 type FutureResponse<'a> = Pin<Box<dyn Future<Output = Response> + Send + 'a>>; 22 22 23 - @@ -97,6 +103,15 @@ 23 + @@ -98,6 +104,15 @@ 24 24 .register("file", FileProtocolHander::default()) 25 25 .expect("Infallible"); 26 26 registry
+16 -8
patches/components/net/protocols/trusted/protocol.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -0,0 +1,142 @@ 3 + @@ -0,0 +1,150 @@ 4 4 +/// SPDX-License-Identifier: AGPL-3.0-or-later 5 5 +use std::future::{self, Future}; 6 6 +use std::pin::Pin; ··· 14 14 + 15 15 +use super::zone_description::{TrustedZoneUrl, ZoneFile}; 16 16 +use crate::fetch::methods::{DoneChannel, FetchContext, fetch}; 17 - +use crate::protocols::ProtocolHandler; 17 + +use crate::protocols::{ProtocolHandler, UrlWithBlobClaim}; 18 18 + 19 19 +async fn fetch_json<T: DeserializeOwned>( 20 20 + url: ServoUrl, 21 21 + context: &FetchContext, 22 22 +) -> Result<T, StatusCode> { 23 - + let request = RequestBuilder::new(None, url.clone(), Referrer::NoReferrer) 24 - + .origin(url.origin()) 25 - + .build(); 23 + + let request = RequestBuilder::new( 24 + + None, 25 + + UrlWithBlobClaim::from_url_without_having_claimed_blob(url.clone()), 26 + + Referrer::NoReferrer, 27 + + ) 28 + + .origin(url.origin()) 29 + + .build(); 26 30 + let mut target = SimpleFetchTarget::default(); 27 31 + let response = fetch(request, &mut target, context).await; 28 32 + if response.is_network_error() { ··· 125 129 + return http_response(url, StatusCode::BAD_REQUEST, "Failed to build final url"); 126 130 + }; 127 131 + 128 - + let request = RequestBuilder::new(None, inner_url.clone(), Referrer::NoReferrer) 129 - + .origin(inner_url.origin()) 130 - + .build(); 132 + + let request = RequestBuilder::new( 133 + + None, 134 + + UrlWithBlobClaim::from_url_without_having_claimed_blob(inner_url.clone()), 135 + + Referrer::NoReferrer, 136 + + ) 137 + + .origin(inner_url.origin()) 138 + + .build(); 131 139 + let mut target = SimpleFetchTarget::default(); 132 140 + 133 141 + let fetched = fetch(request, &mut target, &context2).await;
+12 -6
patches/components/net/resource_thread.rs.patch
··· 23 23 use crate::websocket_loader::create_handshake_request; 24 24 25 25 /// Load a file with CA certificate and produce a RootCertStore with the results. 26 - @@ -199,14 +200,19 @@ 26 + @@ -208,14 +209,19 @@ 27 27 let mut hsts_list = HstsList::default(); 28 28 let mut auth_cache = AuthCache::default(); 29 29 let mut cookie_jar = CookieStorage::new(150); ··· 43 43 hsts_list: RwLock::new(hsts_list), 44 44 cookie_jar: RwLock::new(cookie_jar), 45 45 auth_cache: RwLock::new(auth_cache), 46 - @@ -219,10 +225,13 @@ 46 + @@ -228,10 +234,13 @@ 47 47 )), 48 48 override_manager, 49 49 embedder_proxy: embedder_proxy.clone(), ··· 57 57 hsts_list: RwLock::new(HstsList::default()), 58 58 cookie_jar: RwLock::new(CookieStorage::new(150)), 59 59 auth_cache: RwLock::new(AuthCache::default()), 60 - @@ -235,6 +244,8 @@ 60 + @@ -244,6 +253,8 @@ 61 61 )), 62 62 override_manager, 63 63 embedder_proxy, ··· 66 66 }; 67 67 68 68 (Arc::new(http_state), Arc::new(private_http_state)) 69 - @@ -609,17 +620,18 @@ 69 + @@ -646,20 +657,21 @@ 70 + return false; 70 71 }, 71 - // Ignore this message as we handle it only in the reporter chan 72 - CoreResourceMsg::CollectMemoryReport(_) => {}, 72 + // Ignore these messages as they are only sent on very specific channels. 73 + - CoreResourceMsg::CollectMemoryReport(_) | 74 + - CoreResourceMsg::RevokeTokenForFile(..) | 75 + - CoreResourceMsg::RefreshTokenForFile(..) => {}, 76 + + CoreResourceMsg::CollectMemoryReport(_) => {}, 77 + + CoreResourceMsg::RevokeTokenForFile(..) | CoreResourceMsg::RefreshTokenForFile(..) => { 78 + + }, 73 79 + CoreResourceMsg::UpdateAtProtoSession(session) => { 74 80 + http_state.update_atproto_session(session); 75 81 + },
+15 -9
patches/components/script/dom/atproto.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -0,0 +1,143 @@ 3 + @@ -0,0 +1,149 @@ 4 4 +// SPDX-License-Identifier: AGPL-3.0-or-later 5 5 + 6 6 +use std::rc::Rc; 7 7 + 8 8 +use dom_struct::dom_struct; 9 + +use js::context::JSContext; 9 10 +use js::jsval::UndefinedValue; 10 11 +use script_bindings::error::Error; 11 12 +use script_bindings::str::{DOMString, USVString}; ··· 106 107 +} 107 108 + 108 109 +impl RoutedPromiseListener<AtProtoResult> for AtProto { 109 - + fn handle_response(&self, response: AtProtoResult, promise: &Rc<Promise>, can_gc: CanGc) { 110 + + fn handle_response(&self, cx: &mut JSContext, response: AtProtoResult, promise: &Rc<Promise>) { 110 111 + match response { 111 112 + AtProtoResult::NewSession(session, _) => { 112 113 + println!("New session is {session:?}"); ··· 114 115 + did: session.did.into(), 115 116 + handle: session.handle.into(), 116 117 + }; 117 - + promise.resolve_native(&dom_session, can_gc); 118 + + promise.resolve_native(&dom_session, CanGc::from_cx(cx)); 118 119 + }, 119 120 + AtProtoResult::CurrentSession(session) => { 120 121 + println!("Current session is {session:?}"); ··· 122 123 + did: session.did.into(), 123 124 + handle: session.handle.into(), 124 125 + }; 125 - + promise.resolve_native(&dom_session, can_gc); 126 + + promise.resolve_native(&dom_session, CanGc::from_cx(cx)); 127 + + }, 128 + + AtProtoResult::Logout => promise.resolve_native(&UndefinedValue(), CanGc::from_cx(cx)), 129 + + AtProtoResult::OriginUpdated => { 130 + + promise.resolve_native(&UndefinedValue(), CanGc::from_cx(cx)) 126 131 + }, 127 - + AtProtoResult::Logout => promise.resolve_native(&UndefinedValue(), can_gc), 128 - + AtProtoResult::OriginUpdated => promise.resolve_native(&UndefinedValue(), can_gc), 129 132 + AtProtoResult::AuthorizedOrigins(origins) => { 130 133 + let origins: Vec<DOMString> = origins.into_iter().map(DOMString::from).collect(); 131 - + promise.resolve_native(&origins, can_gc); 134 + + promise.resolve_native(&origins, CanGc::from_cx(cx)); 132 135 + }, 133 136 + AtProtoResult::Error => { 134 137 + error!("ATProto error :("); 135 - + promise.reject_error(Error::Operation(Some("ATProto error".to_owned())), can_gc) 138 + + promise.reject_error( 139 + + Error::Operation(Some("ATProto error".to_owned())), 140 + + CanGc::from_cx(cx), 141 + + ) 136 142 + }, 137 143 + AtProtoResult::RefreshRequired => { 138 144 + error!("ATProto refresh required :("); 139 145 + promise.reject_error( 140 146 + Error::Operation(Some("ATProto refresh required".to_owned())), 141 - + can_gc, 147 + + CanGc::from_cx(cx), 142 148 + ) 143 149 + }, 144 150 + }
+3 -3
patches/components/script/dom/document/document.rs.patch
··· 109 109 pub(crate) fn dirty_all_nodes(&self) { 110 110 let root = match self.GetDocumentElement() { 111 111 Some(root) => root, 112 - @@ -2944,9 +2981,59 @@ 112 + @@ -2940,9 +2977,59 @@ 113 113 current_rendering_epoch, 114 114 ); 115 115 ··· 169 169 pub(crate) fn handle_no_longer_waiting_on_asynchronous_image_updates(&self) { 170 170 self.waiting_on_canvas_image_updates.set(false); 171 171 } 172 - @@ -3684,6 +3771,7 @@ 172 + @@ -3680,6 +3767,7 @@ 173 173 active_sandboxing_flag_set: Cell::new(creation_sandboxing_flag_set), 174 174 creation_sandboxing_flag_set: Cell::new(creation_sandboxing_flag_set), 175 175 favicon: RefCell::new(None), ··· 177 177 websockets: DOMTracker::new(), 178 178 details_name_groups: Default::default(), 179 179 protocol_handler_automation_mode: Default::default(), 180 - @@ -4623,6 +4711,36 @@ 180 + @@ -4619,6 +4707,36 @@ 181 181 182 182 pub(crate) fn notify_embedder_favicon(&self) { 183 183 if let Some(ref image) = *self.favicon.borrow() {
+9 -5
patches/components/script/dom/html/htmlembeddedwebview.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -0,0 +1,1071 @@ 3 + @@ -0,0 +1,1075 @@ 4 4 +/* This Source Code Form is subject to the terms of the Mozilla Public 5 5 + * License, v. 2.0. If a copy of the MPL was not distributed with this 6 6 + * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ ··· 17 17 + MediaSessionEvent, MediaSessionPlaybackState, PermissionFeature, PromptResponse, RgbColor, 18 18 + ScreenshotImageType, SimpleDialogRequest, 19 19 +}; 20 + +use js::context::JSContext; 20 21 +use js::jsval::UndefinedValue; 21 22 +use script_bindings::codegen::GenericBindings::CustomEventBinding::CustomEventMethods; 22 23 +use script_bindings::conversions::SafeToJSValConvertible; ··· 1026 1027 +{ 1027 1028 + fn handle_response( 1028 1029 + &self, 1030 + + cx: &mut JSContext, 1029 1031 + response: Result<EmbeddedWebViewScreenshotResult, EmbeddedWebViewScreenshotError>, 1030 1032 + promise: &Rc<Promise>, 1031 - + can_gc: CanGc, 1032 1033 + ) { 1033 1034 + match response { 1034 1035 + Ok(result) => { 1035 1036 + // Create a Blob from the encoded bytes 1036 1037 + let global = self.owner_global(); 1037 1038 + let blob_impl = BlobImpl::new_from_bytes(result.bytes, result.mime_type); 1038 - + let blob = Blob::new(&global, blob_impl, can_gc); 1039 - + promise.resolve_native(&blob, can_gc); 1039 + + let blob = Blob::new(&global, blob_impl, CanGc::from_cx(cx)); 1040 + + promise.resolve_native(&blob, CanGc::from_cx(cx)); 1040 1041 + }, 1041 1042 + Err(error) => { 1042 1043 + let error_msg = match error { ··· 1049 1050 + EmbeddedWebViewScreenshotError::CaptureFailed => "Failed to capture screenshot", 1050 1051 + EmbeddedWebViewScreenshotError::EncodingFailed => "Failed to encode screenshot", 1051 1052 + }; 1052 - + promise.reject_error(Error::InvalidState(Some(error_msg.to_string())), can_gc); 1053 + + promise.reject_error( 1054 + + Error::InvalidState(Some(error_msg.to_string())), 1055 + + CanGc::from_cx(cx), 1056 + + ); 1053 1057 + }, 1054 1058 + } 1055 1059 + }
+1 -1
patches/components/script/dom/html/htmllinkelement.rs.patch
··· 27 27 + let Some(request) = options.create_link_request(self.owner_window().webview_id()) else { 28 28 + return; 29 29 + }; 30 - + let url = request.url.clone(); 30 + + let url = request.url.url(); 31 31 + 32 32 + let document = self.upcast::<Node>().owner_doc(); 33 33 + let fetch_context = LinkFetchContext {
+3 -3
patches/components/script/dom/mod.rs.patch
··· 8 8 pub(crate) mod attr; 9 9 pub(crate) mod audio; 10 10 pub(crate) use self::audio::*; 11 - @@ -273,6 +274,7 @@ 11 + @@ -271,6 +272,7 @@ 12 12 pub(crate) mod elementinternals; 13 13 pub(crate) mod encoding; 14 14 pub(crate) use self::encoding::*; ··· 16 16 pub(crate) mod event; 17 17 pub(crate) use self::event::*; 18 18 pub(crate) mod eventsource; 19 - @@ -298,6 +300,7 @@ 19 + @@ -296,6 +298,7 @@ 20 20 pub(crate) use self::indexeddb::*; 21 21 pub(crate) mod intersectionobserver; 22 22 pub(crate) mod intersectionobserverentry; ··· 24 24 pub(crate) mod location; 25 25 pub(crate) mod media; 26 26 pub(crate) use self::media::*; 27 - @@ -319,6 +322,10 @@ 27 + @@ -317,6 +320,10 @@ 28 28 pub(crate) mod origin; 29 29 pub(crate) mod paintsize; 30 30 pub(crate) mod paintworkletglobalscope;
+22 -17
patches/components/script/dom/navigator.rs.patch
··· 14 14 use http::header::{self, HeaderValue}; 15 15 -use js::rust::MutableHandleValue; 16 16 +use js::rust::{HandleValue, MutableHandleValue}; 17 + use net_traits::blob_url_store::UrlWithBlobClaim; 17 18 use net_traits::request::{ 18 19 CredentialsMode, Destination, RequestBuilder, RequestId, RequestMode, 19 - is_cors_safelisted_request_content_type, 20 - @@ -20,10 +21,13 @@ 20 + @@ -21,10 +22,13 @@ 21 21 use net_traits::{FetchMetadata, NetworkError, ResourceFetchTiming}; 22 22 use regex::Regex; 23 23 use servo_base::generic_channel; ··· 31 31 #[cfg(feature = "gamepad")] 32 32 use crate::dom::bindings::cell::DomRefCell; 33 33 use crate::dom::bindings::codegen::Bindings::NavigatorBinding::NavigatorMethods; 34 - @@ -34,6 +38,7 @@ 34 + @@ -35,6 +39,7 @@ 35 35 use crate::dom::bindings::reflector::{DomGlobal, Reflector, reflect_dom_object}; 36 36 use crate::dom::bindings::root::{DomRoot, MutNullableDom}; 37 37 use crate::dom::bindings::str::{DOMString, USVString}; ··· 39 39 use crate::dom::bindings::utils::to_frozen_array; 40 40 #[cfg(feature = "bluetooth")] 41 41 use crate::dom::bluetooth::Bluetooth; 42 - @@ -40,6 +45,7 @@ 42 + @@ -41,6 +46,7 @@ 43 43 use crate::dom::clipboard::Clipboard; 44 44 use crate::dom::credentialmanagement::credentialscontainer::CredentialsContainer; 45 45 use crate::dom::csp::{GlobalCspReporting, Violation}; ··· 47 47 #[cfg(feature = "gamepad")] 48 48 use crate::dom::gamepad::Gamepad; 49 49 #[cfg(feature = "gamepad")] 50 - @@ -46,13 +52,16 @@ 50 + @@ -47,13 +53,16 @@ 51 51 use crate::dom::gamepad::gamepadevent::GamepadEventType; 52 52 use crate::dom::geolocation::Geolocation; 53 53 use crate::dom::globalscope::GlobalScope; ··· 64 64 use crate::dom::serviceworkercontainer::ServiceWorkerContainer; 65 65 use crate::dom::servointernals::ServoInternals; 66 66 use crate::dom::types::UserActivation; 67 - @@ -63,6 +72,8 @@ 67 + @@ -64,6 +73,8 @@ 68 68 use crate::dom::xrsystem::XRSystem; 69 69 use crate::fetch::RequestWithGlobalScope; 70 70 use crate::network_listener::{FetchResponseListener, ResourceTimingListener, submit_timing}; ··· 73 73 use crate::script_runtime::{CanGc, JSContext}; 74 74 75 75 pub(super) fn hardware_concurrency() -> u64 { 76 - @@ -132,6 +143,9 @@ 76 + @@ -133,6 +144,9 @@ 77 77 has_gamepad_gesture: Cell<bool>, 78 78 servo_internals: MutNullableDom<ServoInternals>, 79 79 user_activation: MutNullableDom<UserActivation>, ··· 83 83 } 84 84 85 85 impl Navigator { 86 - @@ -158,6 +172,9 @@ 86 + @@ -159,6 +173,9 @@ 87 87 has_gamepad_gesture: Cell::new(false), 88 88 servo_internals: Default::default(), 89 89 user_activation: Default::default(), ··· 93 93 } 94 94 } 95 95 96 - @@ -170,6 +187,11 @@ 96 + @@ -171,6 +188,11 @@ 97 97 self.xr.get() 98 98 } 99 99 ··· 105 105 #[cfg(feature = "gamepad")] 106 106 pub(crate) fn get_gamepad(&self, index: usize) -> Option<DomRoot<Gamepad>> { 107 107 self.gamepads.borrow().get(index).and_then(|g| g.get()) 108 - @@ -561,6 +583,18 @@ 108 + @@ -566,6 +588,18 @@ 109 109 .or_init(|| ServoInternals::new(&self.global(), CanGc::note())) 110 110 } 111 111 ··· 124 124 /// <https://html.spec.whatwg.org/multipage/#dom-navigator-registerprotocolhandler> 125 125 fn RegisterProtocolHandler(&self, scheme: DOMString, url: USVString) -> Fallible<()> { 126 126 // Step 1. Let (normalizedScheme, normalizedURLString) be the result of 127 - @@ -604,6 +638,214 @@ 127 + @@ -609,6 +643,214 @@ 128 128 self.user_activation 129 129 .or_init(|| UserActivation::new(&self.global(), can_gc)) 130 130 } ··· 339 339 } 340 340 341 341 struct BeaconFetchListener { 342 - @@ -659,3 +901,35 @@ 342 + @@ -664,3 +906,40 @@ 343 343 self.global.root() 344 344 } 345 345 } ··· 348 348 +impl RoutedPromiseListener<Result<StructuredSerializedData, String>> for Navigator { 349 349 + fn handle_response( 350 350 + &self, 351 + + ccx: &mut js::context::JSContext, 351 352 + response: Result<StructuredSerializedData, String>, 352 353 + promise: &Rc<Promise>, 353 - + can_gc: CanGc, 354 354 + ) { 355 355 + match response { 356 356 + Ok(data) => { 357 357 + let global = self.global(); 358 358 + let cx = GlobalScope::get_cx(); 359 359 + rooted!(in(*cx) let mut result_val = js::jsval::UndefinedValue()); 360 - + match structuredclone::read(&global, data, result_val.handle_mut(), can_gc) { 360 + + match structuredclone::read( 361 + + &global, 362 + + data, 363 + + result_val.handle_mut(), 364 + + CanGc::from_cx(ccx), 365 + + ) { 361 366 + Ok(_ports) => { 362 - + promise.resolve_native(&result_val.handle(), can_gc); 367 + + promise.resolve_native(&result_val.handle(), CanGc::from_cx(ccx)); 363 368 + }, 364 369 + Err(e) => { 365 - + promise.reject_error(e, can_gc); 370 + + promise.reject_error(e, CanGc::from_cx(ccx)); 366 371 + }, 367 372 + } 368 373 + }, 369 374 + Err(e) => { 370 375 + promise.reject_error( 371 376 + script_bindings::error::Error::Operation(Some(e.into())), 372 - + can_gc, 377 + + CanGc::from_cx(ccx), 373 378 + ); 374 379 + }, 375 380 + }
+21 -15
patches/components/script/dom/pairing.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -0,0 +1,315 @@ 3 + @@ -0,0 +1,321 @@ 4 4 +/* SPDX Id: AGPL-3.0-or-later */ 5 5 + 6 6 +use std::rc::Rc; 7 7 + 8 8 +use dom_struct::dom_struct; 9 + +use js::context::JSContext; 9 10 +use script_bindings::error::Error; 10 11 +use servo_constellation_traits::{ 11 12 + EndpointStatus, LocalPeerInfo, PairingEvent, PeerInfo, ScriptToConstellationMessage, ··· 243 244 +} 244 245 + 245 246 +impl RoutedPromiseListener<Result<(), String>> for Pairing { 246 - + fn handle_response(&self, response: Result<(), String>, promise: &Rc<Promise>, can_gc: CanGc) { 247 + + fn handle_response( 248 + + &self, 249 + + cx: &mut JSContext, 250 + + response: Result<(), String>, 251 + + promise: &Rc<Promise>, 252 + + ) { 247 253 + match response { 248 - + Ok(()) => promise.resolve_native(&(), can_gc), 249 - + Err(msg) => promise.reject_error(Error::Operation(Some(msg)), can_gc), 254 + + Ok(()) => promise.resolve_native(&(), CanGc::from_cx(cx)), 255 + + Err(msg) => promise.reject_error(Error::Operation(Some(msg)), CanGc::from_cx(cx)), 250 256 + } 251 257 + } 252 258 +} ··· 254 260 +impl RoutedPromiseListener<Result<LocalPeerInfo, String>> for Pairing { 255 261 + fn handle_response( 256 262 + &self, 263 + + cx: &mut JSContext, 257 264 + response: Result<LocalPeerInfo, String>, 258 265 + promise: &Rc<Promise>, 259 - + can_gc: CanGc, 260 266 + ) { 261 267 + match response { 262 268 + Ok(info) => { 263 269 + let global = self.global(); 264 - + let peer = Peer::new(&global, info.id, info.name, can_gc); 265 - + promise.resolve_native(&peer, can_gc); 270 + + let peer = Peer::new(&global, info.id, info.name, CanGc::from_cx(cx)); 271 + + promise.resolve_native(&peer, CanGc::from_cx(cx)); 266 272 + }, 267 - + Err(msg) => promise.reject_error(Error::Operation(Some(msg)), can_gc), 273 + + Err(msg) => promise.reject_error(Error::Operation(Some(msg)), CanGc::from_cx(cx)), 268 274 + } 269 275 + } 270 276 +} ··· 272 278 +impl RoutedPromiseListener<Result<Vec<PeerInfo>, String>> for Pairing { 273 279 + fn handle_response( 274 280 + &self, 281 + + cx: &mut JSContext, 275 282 + response: Result<Vec<PeerInfo>, String>, 276 283 + promise: &Rc<Promise>, 277 - + can_gc: CanGc, 278 284 + ) { 279 285 + match response { 280 286 + Ok(peers) => { ··· 292 298 + info.id, 293 299 + info.name, 294 300 + status.to_owned(), 295 - + can_gc, 301 + + CanGc::from_cx(cx), 296 302 + ) 297 303 + }) 298 304 + .collect(); 299 - + promise.resolve_native(&peer_objects, can_gc); 305 + + promise.resolve_native(&peer_objects, CanGc::from_cx(cx)); 300 306 + }, 301 - + Err(msg) => promise.reject_error(Error::Operation(Some(msg)), can_gc), 307 + + Err(msg) => promise.reject_error(Error::Operation(Some(msg)), CanGc::from_cx(cx)), 302 308 + } 303 309 + } 304 310 +} ··· 306 312 +impl RoutedPromiseListener<Result<bool, String>> for Pairing { 307 313 + fn handle_response( 308 314 + &self, 315 + + cx: &mut JSContext, 309 316 + response: Result<bool, String>, 310 317 + promise: &Rc<Promise>, 311 - + can_gc: CanGc, 312 318 + ) { 313 319 + match response { 314 - + Ok(accepted) => promise.resolve_native(&accepted, can_gc), 315 - + Err(msg) => promise.reject_error(Error::Operation(Some(msg)), can_gc), 320 + + Ok(accepted) => promise.resolve_native(&accepted, CanGc::from_cx(cx)), 321 + + Err(msg) => promise.reject_error(Error::Operation(Some(msg)), CanGc::from_cx(cx)), 316 322 + } 317 323 + } 318 324 +}
+1 -1
patches/components/script/dom/servointernals.rs.patch
··· 163 163 } 164 164 } 165 165 166 - @@ -206,7 +268,10 @@ 166 + @@ -211,7 +273,10 @@ 167 167 /// The navigator.servo api is exposed to about: pages except about:blank, as 168 168 /// well as any URLs provided by embedders that register new protocol handlers. 169 169 #[expect(unsafe_code)]
-32
patches/components/script/dom/servoparser/mod.rs.patch
··· 1 - --- original 2 - +++ modified 3 - @@ -1064,9 +1064,10 @@ 4 - // Return the result of loading an XML document given navigationParams and type. 5 - MediaType::Xml => self.load_xml_document(parser), 6 - // Return the result of loading a text document given navigationParams and type. 7 - - MediaType::JavaScript | MediaType::Json | MediaType::Text | MediaType::Css => { 8 - + MediaType::JavaScript | MediaType::Text | MediaType::Css => { 9 - self.load_text_document(parser, cx) 10 - }, 11 - + MediaType::Json => self.load_json_document(parser, cx), 12 - // Return the result of loading a media document given navigationParams and type. 13 - MediaType::Image | MediaType::AudioVideo => { 14 - self.load_media_document(parser, media_type, &mime_type, cx); 15 - @@ -1134,6 +1135,17 @@ 16 - self.process_link_headers_in_media_phase_with_task(&parser.document); 17 - } 18 - 19 - + /// Load a JSON document with a pretty-printed, interactive viewer. 20 - + fn load_json_document(&mut self, parser: &ServoParser, cx: &mut js::context::JSContext) { 21 - + self.initialize_document_object(&parser.document); 22 - + let template = resources::read_string(Resource::JsonViewerHTML); 23 - + let page = format!("<html><head>{template}</head><body><pre id=\"json-raw\">",); 24 - + parser.push_string_input_chunk(page); 25 - + parser.parse_sync(cx); 26 - + parser.tokenizer.set_plaintext_state(); 27 - + self.process_link_headers_in_media_phase_with_task(&parser.document); 28 - + } 29 - + 30 - /// <https://html.spec.whatwg.org/multipage/#navigate-media> 31 - fn load_media_document( 32 - &mut self,
+33 -25
patches/components/script/dom/window.rs.patch
··· 9 9 }; 10 10 use euclid::default::Rect as UntypedRect; 11 11 use euclid::{Point2D, Rect, Scale, Size2D, Vector2D}; 12 - @@ -190,7 +190,7 @@ 12 + @@ -34,9 +34,10 @@ 13 + use js::context::JSContext; 14 + use js::glue::DumpJSStack; 15 + use js::jsapi::{ 16 + - GCReason, Heap, JS_GC, JSAutoRealm, JSContext as RawJSContext, JSObject, JSPROP_ENUMERATE, 17 + + GCReason, Heap, JS_GC, JS_NewObject, JSAutoRealm, JSContext as RawJSContext, JSObject, 18 + + JSPROP_ENUMERATE, 19 + }; 20 + -use js::jsval::{NullValue, UndefinedValue}; 21 + +use js::jsval::{NullValue, ObjectValue, UndefinedValue}; 22 + use js::realm::CurrentRealm; 23 + use js::rust::wrappers::JS_DefineProperty; 24 + use js::rust::{ 25 + @@ -190,7 +191,7 @@ 13 26 use crate::messaging::{MainThreadScriptMsg, ScriptEventLoopReceiver, ScriptEventLoopSender}; 14 27 use crate::microtask::{Microtask, UserMicrotask}; 15 28 use crate::network_listener::{ResourceTimingListener, submit_timing}; ··· 18 31 use crate::script_runtime::{CanGc, JSContext as SafeJSContext, Runtime}; 19 32 use crate::script_thread::ScriptThread; 20 33 use crate::script_window_proxies::ScriptWindowProxies; 21 - @@ -1144,12 +1144,22 @@ 34 + @@ -1144,12 +1145,22 @@ 22 35 23 36 let (sender, receiver) = 24 37 ProfiledGenericChannel::channel(self.global().time_profiler_chan().clone()).unwrap(); ··· 42 55 receiver.recv().unwrap_or_else(|_| { 43 56 // If the receiver is closed, we assume the dialog was cancelled. 44 57 debug!("Alert dialog was cancelled or failed to show."); 45 - @@ -1177,13 +1187,22 @@ 58 + @@ -1177,13 +1188,22 @@ 46 59 // the user to respond with a positive or negative response. 47 60 let (sender, receiver) = 48 61 ProfiledGenericChannel::channel(self.global().time_profiler_chan().clone()).unwrap(); ··· 66 79 // Step 5: Let userPromptHandler be WebDriver BiDi user prompt opened with this, 67 80 // "confirm", and message. 68 81 // 69 - @@ -1228,6 +1247,7 @@ 82 + @@ -1228,6 +1248,7 @@ 70 83 // defaulted to the value given by default. 71 84 let (sender, receiver) = 72 85 ProfiledGenericChannel::channel(self.global().time_profiler_chan().clone()).unwrap(); ··· 74 87 let dialog = SimpleDialogRequest::Prompt { 75 88 id: self.Document().embedder_controls().next_control_id(), 76 89 message: message.to_string(), 77 - @@ -1234,8 +1254,16 @@ 90 + @@ -1234,8 +1255,16 @@ 78 91 default: default.to_string(), 79 92 response_sender: sender, 80 93 }; ··· 92 105 // Step 6: Let userPromptHandler be WebDriver BiDi user prompt opened with this, 93 106 // "prompt", and message. 94 107 // TODO: Add support for WebDriver BiDi. 95 - @@ -1668,6 +1696,26 @@ 108 + @@ -1668,6 +1697,26 @@ 96 109 // https://html.spec.whatwg.org/multipage/#windoweventhandlers 97 110 window_event_handlers!(); 98 111 ··· 119 132 /// <https://developer.mozilla.org/en-US/docs/Web/API/Window/screen> 120 133 fn Screen(&self, can_gc: CanGc) -> DomRoot<Screen> { 121 134 self.screen.or_init(|| Screen::new(self, can_gc)) 122 - @@ -3039,9 +3087,33 @@ 135 + @@ -3039,9 +3088,33 @@ 123 136 &self, 124 137 input_event: &ConstellationInputEvent, 125 138 ) -> Option<HitTestResult> { ··· 156 169 } 157 170 158 171 #[expect(unsafe_code)] 159 - @@ -3060,8 +3132,25 @@ 172 + @@ -3060,8 +3133,25 @@ 160 173 // SAFETY: This is safe because `Window::query_elements_from_point` has ensured that 161 174 // layout has run and any OpaqueNodes that no longer refer to real nodes are gone. 162 175 let address = UntrustedNodeAddress(result.node.0 as *const c_void); ··· 183 196 cursor: result.cursor, 184 197 point_in_node: result.point_in_target, 185 198 point_in_frame, 186 - @@ -3604,6 +3693,8 @@ 199 + @@ -3604,6 +3694,8 @@ 187 200 player_context: WindowGLContext, 188 201 #[cfg(feature = "webgpu")] gpu_id_hub: Arc<IdentityHub>, 189 202 inherited_secure_context: Option<bool>, ··· 192 205 theme: Theme, 193 206 weak_script_thread: Weak<ScriptThread>, 194 207 ) -> DomRoot<Self> { 195 - @@ -3630,6 +3721,8 @@ 208 + @@ -3630,6 +3722,8 @@ 196 209 gpu_id_hub, 197 210 inherited_secure_context, 198 211 unminify_js, ··· 201 214 Some(font_context), 202 215 ), 203 216 ongoing_navigation: Default::default(), 204 - @@ -3905,3 +3998,120 @@ 217 + @@ -3905,3 +3999,115 @@ 205 218 Self::create_named_properties_object(cx, proto, object) 206 219 } 207 220 } ··· 215 228 + #[expect(unsafe_code)] 216 229 + fn handle_response( 217 230 + &self, 231 + + ccx: &mut JSContext, 218 232 + response: Option<(String, Option<StructuredSerializedData>, Vec<u8>)>, 219 233 + promise: &Rc<Promise>, 220 - + can_gc: CanGc, 221 234 + ) { 222 - + use js::jsapi::{JS_NewObject, JSPROP_ENUMERATE}; 223 - + use js::jsval::{ObjectValue, UndefinedValue}; 224 - + use js::rust::wrappers::JS_DefineProperty; 225 - + use script_bindings::conversions::SafeToJSValConvertible; 226 - + 227 235 + let Some((task_name, data, port_id_bytes)) = response else { 228 236 + promise.reject_error( 229 237 + script_bindings::error::Error::Operation(Some( 230 238 + "No task assigned to this page".into(), 231 239 + )), 232 - + can_gc, 240 + + CanGc::from_cx(ccx), 233 241 + ); 234 242 + return; 235 243 + }; ··· 242 250 + else { 243 251 + promise.reject_error( 244 252 + script_bindings::error::Error::Operation(Some("Invalid port ID".into())), 245 - + can_gc, 253 + + CanGc::from_cx(ccx), 246 254 + ); 247 255 + return; 248 256 + }; 249 257 + 250 258 + // Create a local port entangled with the provider_port_id. 251 - + let local_port = crate::dom::messageport::MessagePort::new(global, can_gc); 259 + + let local_port = crate::dom::messageport::MessagePort::new(global, CanGc::from_cx(ccx)); 252 260 + global.track_message_port(&local_port, None); 253 261 + global.set_port_entanglement(*local_port.message_port_id(), provider_port_id); 254 262 + ··· 268 276 + global, 269 277 + data, 270 278 + data_val.handle_mut(), 271 - + can_gc, 279 + + CanGc::from_cx(ccx), 272 280 + ); 273 281 + } 274 282 + ··· 280 288 + script_bindings::error::Error::Operation(Some( 281 289 + "Failed to create result".into(), 282 290 + )), 283 - + can_gc, 291 + + CanGc::from_cx(ccx), 284 292 + ); 285 293 + return; 286 294 + } ··· 288 296 + rooted!(in(*cx) let mut val = UndefinedValue()); 289 297 + 290 298 + // name 291 - + task_name.safe_to_jsval(cx, val.handle_mut(), can_gc); 299 + + task_name.safe_to_jsval(cx, val.handle_mut(), CanGc::from_cx(ccx)); 292 300 + JS_DefineProperty( 293 301 + *cx, 294 302 + result_obj.handle(), ··· 308 316 + 309 317 + // port 310 318 + rooted!(in(*cx) let mut port_val = UndefinedValue()); 311 - + local_port.safe_to_jsval(cx, port_val.handle_mut(), can_gc); 319 + + local_port.safe_to_jsval(cx, port_val.handle_mut(), CanGc::from_cx(ccx)); 312 320 + JS_DefineProperty( 313 321 + *cx, 314 322 + result_obj.handle(), ··· 318 326 + ); 319 327 + 320 328 + rooted!(in(*cx) let result_val = ObjectValue(result_obj.get())); 321 - + promise.resolve_native(&result_val.handle(), can_gc); 329 + + promise.resolve_native(&result_val.handle(), CanGc::from_cx(ccx)); 322 330 + } 323 331 + } 324 332 +}
+1 -1
patches/components/script/dom/workers/workerglobalscope.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -353,6 +353,8 @@ 3 + @@ -354,6 +354,8 @@ 4 4 gpu_id_hub, 5 5 init.inherited_secure_context, 6 6 init.unminify_js,
+2 -2
patches/components/script/navigation.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -185,6 +185,10 @@ 3 + @@ -186,6 +186,10 @@ 4 4 /// The [`TargetSnapshotParams`] to use when creating this document. 5 5 #[no_trace] 6 6 pub(crate) target_snapshot_params: TargetSnapshotParams, ··· 11 11 } 12 12 13 13 impl InProgressLoad { 14 - @@ -207,6 +211,8 @@ 14 + @@ -208,6 +212,8 @@ 15 15 user_content_manager_id: new_pipeline_info.user_content_manager_id, 16 16 theme: new_pipeline_info.theme, 17 17 target_snapshot_params: new_pipeline_info.target_snapshot_params,
+10 -10
patches/components/script/script_thread.rs.patch
··· 55 55 use crate::dom::servoparser::{ParserContext, ServoParser}; 56 56 use crate::dom::types::DebuggerGlobalScope; 57 57 #[cfg(feature = "webgpu")] 58 - @@ -1932,11 +1940,44 @@ 58 + @@ -1933,11 +1941,44 @@ 59 59 self.handle_refresh_cursor(pipeline_id); 60 60 }, 61 61 ScriptThreadMessage::PreferencesUpdated(updates) => { ··· 104 104 }, 105 105 ScriptThreadMessage::ForwardKeyboardScroll(pipeline_id, scroll) => { 106 106 if let Some(document) = self.documents.borrow().find_document(pipeline_id) { 107 - @@ -1977,6 +2018,35 @@ 107 + @@ -1978,6 +2019,35 @@ 108 108 ScriptThreadMessage::TriggerGarbageCollection => unsafe { 109 109 JS_GC(*GlobalScope::get_cx(), GCReason::API); 110 110 }, ··· 140 140 } 141 141 } 142 142 143 - @@ -3030,6 +3100,9 @@ 143 + @@ -3026,6 +3096,9 @@ 144 144 .documents 145 145 .borrow() 146 146 .find_iframe(parent_pipeline_id, browsing_context_id); ··· 150 150 if let Some(frame_element) = frame_element { 151 151 frame_element.update_pipeline_id(new_pipeline_id, reason, cx); 152 152 } 153 - @@ -3049,6 +3122,7 @@ 153 + @@ -3045,6 +3118,7 @@ 154 154 // is no need to pass along existing opener information that 155 155 // will be discarded. 156 156 None, ··· 158 158 ); 159 159 } 160 160 } 161 - @@ -3328,6 +3402,155 @@ 161 + @@ -3324,6 +3398,155 @@ 162 162 } 163 163 } 164 164 ··· 314 314 fn ask_constellation_for_top_level_info( 315 315 &self, 316 316 sender_webview_id: WebViewId, 317 - @@ -3435,7 +3658,13 @@ 317 + @@ -3431,7 +3654,13 @@ 318 318 self.senders.pipeline_to_embedder_sender.clone(), 319 319 self.senders.constellation_sender.clone(), 320 320 incomplete.pipeline_id, ··· 329 329 incomplete.viewport_details, 330 330 origin.clone(), 331 331 final_url.clone(), 332 - @@ -3457,6 +3686,8 @@ 332 + @@ -3453,6 +3682,8 @@ 333 333 #[cfg(feature = "webgpu")] 334 334 self.gpu_id_hub.clone(), 335 335 incomplete.load_data.inherited_secure_context, ··· 338 338 incomplete.theme, 339 339 self.this.clone(), 340 340 ); 341 - @@ -3480,6 +3711,7 @@ 341 + @@ -3476,6 +3707,7 @@ 342 342 incomplete.webview_id, 343 343 incomplete.parent_info, 344 344 incomplete.opener, ··· 346 346 ); 347 347 if window_proxy.parent().is_some() { 348 348 // https://html.spec.whatwg.org/multipage/#navigating-across-documents:delaying-load-events-mode-2 349 - @@ -4311,10 +4543,71 @@ 349 + @@ -4307,10 +4539,71 @@ 350 350 document.event_handler().handle_refresh_cursor(); 351 351 } 352 352 ··· 418 418 fn handle_request_screenshot_readiness( 419 419 &self, 420 420 webview_id: WebViewId, 421 - @@ -4355,7 +4648,7 @@ 421 + @@ -4351,7 +4644,7 @@ 422 422 can_gc: CanGc, 423 423 ) { 424 424 let Some(window) = self.documents.borrow().find_window(pipeline_id) else {
+5 -5
patches/components/script_bindings/codegen/Bindings.conf.patch
··· 12 12 'Attr': { 13 13 'cx':['SetValue'], 14 14 }, 15 - @@ -289,6 +294,11 @@ 15 + @@ -301,6 +306,11 @@ 16 16 'cx': ['CheckValidity', 'ReportValidity'], 17 17 }, 18 18 ··· 24 24 'EventSource': { 25 25 'weakReferenceable': True, 26 26 }, 27 - @@ -668,8 +678,8 @@ 27 + @@ -681,8 +691,8 @@ 28 28 }, 29 29 30 30 'Navigator': { ··· 32 32 - 'canGc': ['Languages', 'SendBeacon', 'UserActivation'], 33 33 + 'inRealms': ['GetVRDisplays', 'CreatePeerStream', 'RequestTask'], 34 34 + 'canGc': ['Languages', 'SendBeacon', 'UserActivation', 'CreatePeerStream', 'RequestTask'], 35 + 'cx': ['Clipboard'] 35 36 }, 36 37 37 - 'Node': { 38 - @@ -702,6 +712,11 @@ 38 + @@ -716,6 +726,11 @@ 39 39 'cx': ['CreateLinearGradient', 'CreatePattern', 'CreateRadialGradient', 'GetTransform'], 40 40 }, 41 41 ··· 47 47 'PerformanceObserver': { 48 48 'canGc': ['SupportedEntryTypes'], 49 49 }, 50 - @@ -853,7 +868,8 @@ 50 + @@ -867,7 +882,8 @@ 51 51 }, 52 52 53 53 'Window': {
+3 -3
patches/components/servo/webview_delegate.rs.patch
··· 9 9 use servo_constellation_traits::EmbedderToConstellationMessage; 10 10 use tokio::sync::mpsc::UnboundedSender as TokioSender; 11 11 use tokio::sync::oneshot::Sender; 12 - @@ -962,6 +962,14 @@ 12 + @@ -968,6 +968,14 @@ 13 13 /// 14 14 /// [`window.open`]: https://developer.mozilla.org/en-US/docs/Web/API/Window/open 15 - fn request_create_new(&self, _parent_webview: WebView, _: CreateNewWebViewRequest) {} 15 + fn request_create_new(&self, _parent_webview: WebView, _request: CreateNewWebViewRequest) {} 16 16 + /// This method is called when an iframe with the "embed" attribute requests to create 17 17 + /// an embedded webview. Unlike `request_create_new`, embedded webviews should NOT 18 18 + /// create new tabs in the UI - they are displayed within the iframe element itself. ··· 24 24 /// Content in a [`WebView`] is requesting permission to access a feature requiring 25 25 /// permission from the user. The embedder should allow or deny the request, either by 26 26 /// reading a cached value or querying the user for permission via the user interface. 27 - @@ -1015,6 +1023,25 @@ 27 + @@ -1026,6 +1034,25 @@ 28 28 _tree_update: accesskit::TreeUpdate, 29 29 ) { 30 30 }
+8 -2
patches/components/shared/embedder/resources.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -136,6 +136,10 @@ 3 + @@ -136,10 +136,12 @@ 4 4 DirectoryListingHTML, 5 5 /// A HTML page that is used for the about:memory url. 6 6 AboutMemoryHTML, ··· 10 10 + JsonViewerHTML, 11 11 /// RPC script for the Debugger API on behalf of devtools. 12 12 DebuggerJS, 13 + - /// A HTML page to display a pretty printed view of a json document. 14 + - JsonViewerHTML, 13 15 } 14 - @@ -152,6 +156,7 @@ 16 + 17 + impl Resource { 18 + @@ -154,8 +156,8 @@ 15 19 Resource::CrashHTML => "crash.html", 16 20 Resource::DirectoryListingHTML => "directory-listing.html", 17 21 Resource::AboutMemoryHTML => "about-memory.html", 18 22 + Resource::JsonViewerHTML => "json-viewer.html", 19 23 Resource::DebuggerJS => "debugger.js", 24 + - Resource::JsonViewerHTML => "json-viewer.html", 20 25 } 21 26 } 27 + }
+1 -1
patches/components/shared/net/blob_url_store.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -51,7 +51,12 @@ 3 + @@ -67,7 +67,12 @@ 4 4 // See https://url.spec.whatwg.org/#origin - "blob" case 5 5 let origin = Url::parse(url.path()) 6 6 .ok()
+11 -6
patches/components/shared/net/fetch/utils.rs.patch
··· 1 1 --- original 2 2 +++ modified 3 - @@ -0,0 +1,240 @@ 3 + @@ -0,0 +1,245 @@ 4 4 +// SPDX-License-Identifier: AGPL-3.0-or-later 5 5 + 6 6 +use std::fmt::Debug; ··· 14 14 +use servo_url::ServoUrl; 15 15 +use sync_wrapper::SyncWrapper; 16 16 + 17 + +use crate::blob_url_store::UrlWithBlobClaim; 17 18 +use crate::header::CONTENT_TYPE; 18 19 +use crate::http_status::HttpStatus; 19 20 +use crate::request::{CredentialsMode, Referrer, Request, create_request_body_with_content}; ··· 178 179 + None 179 180 + }; 180 181 + 181 - + let mut builder = RequestBuilder::new(None, full_url.clone(), Referrer::NoReferrer) 182 - + .method(method) 183 - + .headers(headers) 184 - + .origin(full_url.origin()) 185 - + .body(body); 182 + + let mut builder = RequestBuilder::new( 183 + + None, 184 + + UrlWithBlobClaim::from_url_without_having_claimed_blob(full_url.clone()), 185 + + Referrer::NoReferrer, 186 + + ) 187 + + .method(method) 188 + + .headers(headers) 189 + + .origin(full_url.origin()) 190 + + .body(body); 186 191 + 187 192 + if requires_auth { 188 193 + builder = builder.credentials_mode(CredentialsMode::Include);
+6 -6
patches/components/shared/net/lib.rs.patch
··· 18 18 use malloc_size_of::malloc_size_of_is_0; 19 19 use malloc_size_of_derive::MallocSizeOf; 20 20 use mime::Mime; 21 - @@ -59,6 +63,7 @@ 21 + @@ -60,6 +64,7 @@ 22 22 /// An implementation of the [Fetch specification](https://fetch.spec.whatwg.org/) 23 23 pub mod fetch { 24 24 pub mod headers; ··· 26 26 } 27 27 28 28 /// A loading context, for context-specific sniffing, as defined in 29 - @@ -632,6 +637,64 @@ 29 + @@ -633,6 +638,64 @@ 30 30 Prefetch, 31 31 } 32 32 ··· 91 91 #[derive(Debug, Deserialize, Serialize)] 92 92 pub enum CoreResourceMsg { 93 93 Fetch(RequestBuilder, FetchChannels), 94 - @@ -703,6 +766,10 @@ 95 - /// and exit 96 - Exit(GenericOneshotSender<()>), 94 + @@ -706,6 +769,10 @@ 97 95 CollectMemoryReport(ReportsChan), 96 + RevokeTokenForFile(BlobTokenRevocationRequest), 97 + RefreshTokenForFile(BlobTokenRefreshRequest), 98 98 + /// Update the ATProto session state. 99 99 + UpdateAtProtoSession(Option<AtProtoSessionState>), 100 100 + /// Retrieve the current ATProto session state. 101 101 + GetAtProtoSession(IpcSender<Option<AtProtoSessionState>>), 102 102 } 103 103 104 - #[derive(Clone, Debug, Deserialize, Serialize)] 104 + #[derive(Debug, Deserialize, MallocSizeOf, Serialize)]
+5
resources/json-viewer.html
··· 1 + <html> 2 + <head> 1 3 <style> 2 4 body { 3 5 font-family: monospace; ··· 339 341 } 340 342 }); 341 343 </script> 344 + </head> 345 + <body> 346 + <pre id="json-raw">