From 701c17dc63b21e0cd1ae11c97f21457b5717b03b Mon Sep 17 00:00:00 2001 From: Bastian Gruber Date: Tue, 21 Oct 2025 23:11:45 -0300 Subject: [PATCH 1/5] Trial possible updated ohttp crate [ci full] --- Cargo.lock | 12 ++++++------ components/as-ohttp-client/Cargo.toml | 4 ++-- components/viaduct/Cargo.toml | 4 ++-- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 02572f2308..b4f9808e05 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -305,10 +305,10 @@ dependencies = [ [[package]] name = "bhttp" -version = "0.6.1" -source = "git+https://github.com/martinthomson/ohttp.git?rev=bf6a983845cc0b540effb3a615e92d914dfcfd0b#bf6a983845cc0b540effb3a615e92d914dfcfd0b" +version = "0.7.0" +source = "git+https://github.com/martinthomson/ohttp.git?rev=a0f2a3197af9bfea99137654ec67b62684ba4556#a0f2a3197af9bfea99137654ec67b62684ba4556" dependencies = [ - "thiserror 1.0.69", + "thiserror 2.0.3", ] [[package]] @@ -3097,8 +3097,8 @@ dependencies = [ [[package]] name = "ohttp" -version = "0.6.1" -source = "git+https://github.com/martinthomson/ohttp.git?rev=bf6a983845cc0b540effb3a615e92d914dfcfd0b#bf6a983845cc0b540effb3a615e92d914dfcfd0b" +version = "0.7.0" +source = "git+https://github.com/martinthomson/ohttp.git?rev=a0f2a3197af9bfea99137654ec67b62684ba4556#a0f2a3197af9bfea99137654ec67b62684ba4556" dependencies = [ "bindgen", "byteorder", @@ -3106,7 +3106,7 @@ dependencies = [ "log", "serde", "serde_derive", - "thiserror 1.0.69", + "thiserror 2.0.3", "toml", ] diff --git a/components/as-ohttp-client/Cargo.toml b/components/as-ohttp-client/Cargo.toml index 96f9699afb..91ca64300c 100644 --- a/components/as-ohttp-client/Cargo.toml +++ b/components/as-ohttp-client/Cargo.toml @@ -17,12 +17,12 @@ rusqlite = { version = "0.37.0", features = ["bundled"] } [dependencies.bhttp] git = "https://github.com/martinthomson/ohttp.git" -rev = "bf6a983845cc0b540effb3a615e92d914dfcfd0b" +rev = "a0f2a3197af9bfea99137654ec67b62684ba4556" [dependencies.ohttp] default-features = false git = "https://github.com/martinthomson/ohttp.git" -rev = "bf6a983845cc0b540effb3a615e92d914dfcfd0b" +rev = "a0f2a3197af9bfea99137654ec67b62684ba4556" features = ["client", "server", "app-svc", "external-sqlite"] [build-dependencies] diff --git a/components/viaduct/Cargo.toml b/components/viaduct/Cargo.toml index 65506854d6..6bdab89db1 100644 --- a/components/viaduct/Cargo.toml +++ b/components/viaduct/Cargo.toml @@ -24,8 +24,8 @@ thiserror = "2" uniffi = { version = "0.29.0" } tokio = { version = "1", features = ["rt-multi-thread"], optional = true } hyper = { version = "0.14", features = ["client", "http1", "http2", "tcp"], optional = true } -bhttp = { git = "https://github.com/martinthomson/ohttp.git", rev = "bf6a983845cc0b540effb3a615e92d914dfcfd0b", optional = true } -ohttp = { git = "https://github.com/martinthomson/ohttp.git", rev = "bf6a983845cc0b540effb3a615e92d914dfcfd0b", features = ["client", "server", "app-svc", "external-sqlite"], default-features = false, optional = true } +bhttp = { git = "https://github.com/martinthomson/ohttp.git", rev = "a0f2a3197af9bfea99137654ec67b62684ba4556", optional = true } +ohttp = { git = "https://github.com/martinthomson/ohttp.git", rev = "a0f2a3197af9bfea99137654ec67b62684ba4556", features = ["client", "server", "app-svc", "external-sqlite"], default-features = false, optional = true } [features] default = [] From 3d5a183b214b69edd55117bd210d54975bda3a79 Mon Sep 17 00:00:00 2001 From: Bastian Gruber Date: Tue, 21 Oct 2025 23:12:39 -0300 Subject: [PATCH 2/5] add ohttp to megazord full --- megazords/full/Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/megazords/full/Cargo.toml b/megazords/full/Cargo.toml index d2a234f481..caac38b151 100644 --- a/megazords/full/Cargo.toml +++ b/megazords/full/Cargo.toml @@ -20,7 +20,7 @@ push = { path = "../../components/push" } remote_settings = { path = "../../components/remote_settings" } rust-log-forwarder = { path = "../../components/support/rust-log-forwarder" } # disable ohttp for now until a fix is in for Android; add "features = ["ohttp"]" for enabling ohttp for viaduct -viaduct = { path = "../../components/viaduct" } +viaduct = { path = "../../components/viaduct", features = ["ohttp"] } nimbus-sdk = { path = "../../components/nimbus" } autofill = { path = "../../components/autofill" } crashtest = { path = "../../components/crashtest" } From 03f755b3dba507600b9250f8f92e5dd0fd4cb9d1 Mon Sep 17 00:00:00 2001 From: Bastian Gruber Date: Wed, 22 Oct 2025 07:38:59 -0300 Subject: [PATCH 3/5] use fork version --- Cargo.lock | 6 +++--- components/as-ohttp-client/Cargo.toml | 4 ++-- components/viaduct/Cargo.toml | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b4f9808e05..70cd097666 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -306,7 +306,7 @@ dependencies = [ [[package]] name = "bhttp" version = "0.7.0" -source = "git+https://github.com/martinthomson/ohttp.git?rev=a0f2a3197af9bfea99137654ec67b62684ba4556#a0f2a3197af9bfea99137654ec67b62684ba4556" +source = "git+https://github.com/gruberb/ohttp.git?rev=a0f2a3197af9bfea99137654ec67b62684ba4556#a0f2a3197af9bfea99137654ec67b62684ba4556" dependencies = [ "thiserror 2.0.3", ] @@ -329,7 +329,7 @@ dependencies = [ "bitflags 2.8.0", "cexpr", "clang-sys", - "itertools 0.13.0", + "itertools 0.10.3", "proc-macro2", "quote", "regex", @@ -3098,7 +3098,7 @@ dependencies = [ [[package]] name = "ohttp" version = "0.7.0" -source = "git+https://github.com/martinthomson/ohttp.git?rev=a0f2a3197af9bfea99137654ec67b62684ba4556#a0f2a3197af9bfea99137654ec67b62684ba4556" +source = "git+https://github.com/gruberb/ohttp.git?rev=a0f2a3197af9bfea99137654ec67b62684ba4556#a0f2a3197af9bfea99137654ec67b62684ba4556" dependencies = [ "bindgen", "byteorder", diff --git a/components/as-ohttp-client/Cargo.toml b/components/as-ohttp-client/Cargo.toml index 91ca64300c..8184b01c87 100644 --- a/components/as-ohttp-client/Cargo.toml +++ b/components/as-ohttp-client/Cargo.toml @@ -16,12 +16,12 @@ parking_lot = "0.12" rusqlite = { version = "0.37.0", features = ["bundled"] } [dependencies.bhttp] -git = "https://github.com/martinthomson/ohttp.git" +git = "https://github.com/gruberb/ohttp.git" rev = "a0f2a3197af9bfea99137654ec67b62684ba4556" [dependencies.ohttp] default-features = false -git = "https://github.com/martinthomson/ohttp.git" +git = "https://github.com/gruberb/ohttp.git" rev = "a0f2a3197af9bfea99137654ec67b62684ba4556" features = ["client", "server", "app-svc", "external-sqlite"] diff --git a/components/viaduct/Cargo.toml b/components/viaduct/Cargo.toml index 6bdab89db1..87b7e9ace9 100644 --- a/components/viaduct/Cargo.toml +++ b/components/viaduct/Cargo.toml @@ -24,8 +24,8 @@ thiserror = "2" uniffi = { version = "0.29.0" } tokio = { version = "1", features = ["rt-multi-thread"], optional = true } hyper = { version = "0.14", features = ["client", "http1", "http2", "tcp"], optional = true } -bhttp = { git = "https://github.com/martinthomson/ohttp.git", rev = "a0f2a3197af9bfea99137654ec67b62684ba4556", optional = true } -ohttp = { git = "https://github.com/martinthomson/ohttp.git", rev = "a0f2a3197af9bfea99137654ec67b62684ba4556", features = ["client", "server", "app-svc", "external-sqlite"], default-features = false, optional = true } +bhttp = { git = "https://github.com/gruberb/ohttp.git", rev = "a0f2a3197af9bfea99137654ec67b62684ba4556", optional = true } +ohttp = { git = "https://github.com/gruberb/ohttp.git", rev = "a0f2a3197af9bfea99137654ec67b62684ba4556", features = ["client", "server", "app-svc", "external-sqlite"], default-features = false, optional = true } [features] default = [] From 81b917520b7acd733cad73cd4cdedd09e20ebee9 Mon Sep 17 00:00:00 2001 From: Bastian Gruber Date: Wed, 22 Oct 2025 07:43:33 -0300 Subject: [PATCH 4/5] use fork of ohttp --- megazords/full/DEPENDENCIES.md | 65 +++++++++++++++++++ .../full/android/dependency-licenses.xml | 24 +++++++ 2 files changed, 89 insertions(+) diff --git a/megazords/full/DEPENDENCIES.md b/megazords/full/DEPENDENCIES.md index c0c00c3534..f294e64faa 100644 --- a/megazords/full/DEPENDENCIES.md +++ b/megazords/full/DEPENDENCIES.md @@ -28,8 +28,10 @@ the details of which are reproduced below. * [MIT License: tracing, tracing-attributes, tracing-core, tracing-subscriber](#mit-license-tracing-tracing-attributes-tracing-core-tracing-subscriber) * [MIT License: weedle2](#mit-license-weedle2) * [CC0-1.0 License: base16](#cc0-10-license-base16) +* [ISC License: libloading](#isc-license-libloading) * [ISC License: ring](#isc-license-ring) * [BSD-2-Clause License: arrayref](#bsd-2-clause-license-arrayref) +* [BSD-3-Clause License: bindgen](#bsd-3-clause-license-bindgen) * [BSD-3-Clause License: protobuf](#bsd-3-clause-license-protobuf) * [Zlib License: foldhash](#zlib-license-foldhash) * [Unicode-3.0 License: icu_collections, icu_locale, icu_locale_core, icu_locale_data, icu_locid, icu_locid_transform, icu_locid_transform_data, icu_normalizer, icu_normalizer_data, icu_properties, icu_properties_data, icu_provider, icu_provider_macros, icu_segmenter, icu_segmenter_data, litemap, potential_utf, tinystr, writeable, yoke, yoke-derive, zerofrom, zerofrom-derive, zerotrie, zerovec, zerovec-derive](#unicode-30-license-icu_collections-icu_locale-icu_locale_core-icu_locale_data-icu_locid-icu_locid_transform-icu_locid_transform_data-icu_normalizer-icu_normalizer_data-icu_properties-icu_properties_data-icu_provider-icu_provider_macros-icu_segmenter-icu_segmenter_data-litemap-potential_utf-tinystr-writeable-yoke-yoke-derive-zerofrom-zerofrom-derive-zerotrie-zerovec-zerovec-derive) @@ -445,13 +447,16 @@ The following text applies to code linked from these dependencies: [autocfg](https://github.com/cuviper/autocfg), [base64](https://github.com/marshallpierce/rust-base64), [basic-toml](https://github.com/dtolnay/basic-toml), +[bhttp](https://github.com/martinthomson/ohttp), [bitflags](https://github.com/bitflags/bitflags), [block-buffer](https://github.com/RustCrypto/utils), [camino](https://github.com/camino-rs/camino), [cargo-platform](https://github.com/rust-lang/cargo), [cc](https://github.com/rust-lang/cc-rs), +[cexpr](https://github.com/jethrogb/rust-cexpr), [cfg-if](https://github.com/alexcrichton/cfg-if), [chrono](https://github.com/chronotope/chrono), +[clang-sys](https://github.com/KyleMayes/clang-sys), [core-foundation-sys](https://github.com/servo/core-foundation-rs), [cpufeatures](https://github.com/RustCrypto/utils), [crypto-common](https://github.com/RustCrypto/traits), @@ -492,6 +497,7 @@ The following text applies to code linked from these dependencies: [log](https://github.com/rust-lang/log), [minimal-lexical](https://github.com/Alexhuszagh/minimal-lexical), [num-traits](https://github.com/rust-num/num-traits), +[ohttp](https://github.com/martinthomson/ohttp), [once_cell](https://github.com/matklad/once_cell), [parking_lot](https://github.com/Amanieu/parking_lot), [parking_lot_core](https://github.com/Amanieu/parking_lot), @@ -1592,6 +1598,27 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. +``` +------------- +## ISC License: libloading + +The following text applies to code linked from these dependencies: +[libloading](https://github.com/nagisa/rust_libloading/) + +``` +Copyright © 2015, Simonas Kazlauskas + +Permission to use, copy, modify, and/or distribute this software for any purpose with or without +fee is hereby granted, provided that the above copyright notice and this permission notice appear +in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS +SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE +AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, +NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF +THIS SOFTWARE. + ``` ------------- ## ISC License: ring @@ -1650,6 +1677,44 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +``` +------------- +## BSD-3-Clause License: bindgen + +The following text applies to code linked from these dependencies: +[bindgen](https://github.com/rust-lang/rust-bindgen) + +``` +BSD 3-Clause License + +Copyright (c) 2013, Jyun-Yan You +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + ``` ------------- ## BSD-3-Clause License: protobuf diff --git a/megazords/full/android/dependency-licenses.xml b/megazords/full/android/dependency-licenses.xml index 05146ba287..7c255bc258 100644 --- a/megazords/full/android/dependency-licenses.xml +++ b/megazords/full/android/dependency-licenses.xml @@ -104,6 +104,10 @@ the details of which are reproduced below. Apache License 2.0: basic-toml https://github.com/dtolnay/basic-toml/blob/master/LICENSE-APACHE + + Apache License 2.0: bhttp + https://github.com/martinthomson/ohttp/blob/main/LICENSE-APACHE + Apache License 2.0: bitflags https://github.com/bitflags/bitflags/blob/main/LICENSE-APACHE @@ -124,6 +128,10 @@ the details of which are reproduced below. Apache License 2.0: cc https://github.com/rust-lang/cc-rs/blob/main/LICENSE-APACHE + + Apache License 2.0: cexpr + https://github.com/jethrogb/rust-cexpr/blob/master/LICENSE-APACHE + Apache License 2.0: cfg-if https://github.com/alexcrichton/cfg-if/blob/main/LICENSE-APACHE @@ -132,6 +140,10 @@ the details of which are reproduced below. Apache License 2.0: chrono https://github.com/chronotope/chrono/blob/main/LICENSE.txt + + Apache License 2.0: clang-sys + https://github.com/KyleMayes/clang-sys/blob/master/LICENSE.txt + Apache License 2.0: core-foundation-sys https://github.com/servo/core-foundation-rs/blob/main/LICENSE-APACHE @@ -292,6 +304,10 @@ the details of which are reproduced below. Apache License 2.0: num-traits https://github.com/rust-num/num-traits/blob/master/LICENSE-APACHE + + Apache License 2.0: ohttp + https://github.com/martinthomson/ohttp/blob/main/LICENSE-APACHE + Apache License 2.0: once_cell https://github.com/matklad/once_cell/blob/master/LICENSE-APACHE @@ -652,6 +668,10 @@ the details of which are reproduced below. CC0-1.0 License: base16 https://github.com/thomcc/rust-base16/blob/master/LICENSE-APACHE + + ISC License: libloading + https://github.com/nagisa/rust_libloading/blob//master/LICENSE + ISC License: ring https://github.com/briansmith/ring/blob/master/LICENSE @@ -660,6 +680,10 @@ the details of which are reproduced below. BSD-2-Clause License: arrayref https://github.com/droundy/arrayref/blob/master/LICENSE + + BSD-3-Clause License: bindgen + https://github.com/rust-lang/rust-bindgen/blob/main/LICENSE + BSD-3-Clause License: protobuf https://github.com/protocolbuffers/protobuf/blob/master/LICENSE From cde2c27fea424173d07e95d0f38abb6dc5e0d39d Mon Sep 17 00:00:00 2001 From: Bastian Gruber Date: Wed, 22 Oct 2025 09:32:06 -0300 Subject: [PATCH 5/5] use latest ohttp hash from my fork --- Cargo.lock | 4 ++-- components/as-ohttp-client/Cargo.toml | 4 ++-- components/viaduct/Cargo.toml | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 70cd097666..7de68f308e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -306,7 +306,7 @@ dependencies = [ [[package]] name = "bhttp" version = "0.7.0" -source = "git+https://github.com/gruberb/ohttp.git?rev=a0f2a3197af9bfea99137654ec67b62684ba4556#a0f2a3197af9bfea99137654ec67b62684ba4556" +source = "git+https://github.com/gruberb/ohttp.git?rev=d4b387830e239c012463756c769b9d67a3d10dfe#d4b387830e239c012463756c769b9d67a3d10dfe" dependencies = [ "thiserror 2.0.3", ] @@ -3098,7 +3098,7 @@ dependencies = [ [[package]] name = "ohttp" version = "0.7.0" -source = "git+https://github.com/gruberb/ohttp.git?rev=a0f2a3197af9bfea99137654ec67b62684ba4556#a0f2a3197af9bfea99137654ec67b62684ba4556" +source = "git+https://github.com/gruberb/ohttp.git?rev=d4b387830e239c012463756c769b9d67a3d10dfe#d4b387830e239c012463756c769b9d67a3d10dfe" dependencies = [ "bindgen", "byteorder", diff --git a/components/as-ohttp-client/Cargo.toml b/components/as-ohttp-client/Cargo.toml index 8184b01c87..aa054f9eff 100644 --- a/components/as-ohttp-client/Cargo.toml +++ b/components/as-ohttp-client/Cargo.toml @@ -17,12 +17,12 @@ rusqlite = { version = "0.37.0", features = ["bundled"] } [dependencies.bhttp] git = "https://github.com/gruberb/ohttp.git" -rev = "a0f2a3197af9bfea99137654ec67b62684ba4556" +rev = "d4b387830e239c012463756c769b9d67a3d10dfe" [dependencies.ohttp] default-features = false git = "https://github.com/gruberb/ohttp.git" -rev = "a0f2a3197af9bfea99137654ec67b62684ba4556" +rev = "d4b387830e239c012463756c769b9d67a3d10dfe" features = ["client", "server", "app-svc", "external-sqlite"] [build-dependencies] diff --git a/components/viaduct/Cargo.toml b/components/viaduct/Cargo.toml index 87b7e9ace9..abaff96f74 100644 --- a/components/viaduct/Cargo.toml +++ b/components/viaduct/Cargo.toml @@ -24,8 +24,8 @@ thiserror = "2" uniffi = { version = "0.29.0" } tokio = { version = "1", features = ["rt-multi-thread"], optional = true } hyper = { version = "0.14", features = ["client", "http1", "http2", "tcp"], optional = true } -bhttp = { git = "https://github.com/gruberb/ohttp.git", rev = "a0f2a3197af9bfea99137654ec67b62684ba4556", optional = true } -ohttp = { git = "https://github.com/gruberb/ohttp.git", rev = "a0f2a3197af9bfea99137654ec67b62684ba4556", features = ["client", "server", "app-svc", "external-sqlite"], default-features = false, optional = true } +bhttp = { git = "https://github.com/gruberb/ohttp.git", rev = "d4b387830e239c012463756c769b9d67a3d10dfe", optional = true } +ohttp = { git = "https://github.com/gruberb/ohttp.git", rev = "d4b387830e239c012463756c769b9d67a3d10dfe", features = ["client", "server", "app-svc", "external-sqlite"], default-features = false, optional = true } [features] default = []