tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 35b354e5b5a006f521c9184178a85fa1605479b9
parent d4d119533fc6fcca7b2532586bb6eb117523c169
Author: Michael van Straten <mvanstraten@mozilla.com>
Date:   Mon,  6 Oct 2025 13:02:54 +0000

Bug 1991427 - Switch otel-proto definitions to use `LITE_RUNTIME` r=jari

This should reduce the number of static ctors as well as being related
to Bug 1816848, although this might not have been the cause.

Differential Revision: https://phabricator.services.mozilla.com/D266666

Diffstat:
Mthird_party/opentelemetry-cpp/moz.build | 1-
Mthird_party/opentelemetry-cpp/third_party/opentelemetry-proto/moz.build | 2++
Mthird_party/opentelemetry-cpp/third_party/opentelemetry-proto/moz.yaml | 5++++-
Athird_party/opentelemetry-cpp/third_party/opentelemetry-proto/patches/add-lite_runtime-optimization-to-protos.patch | 52++++++++++++++++++++++++++++++++++++++++++++++++++++
Mtoolkit/components/protobuf/scripts/protoc_wrapper.py | 2+-
5 files changed, 59 insertions(+), 3 deletions(-)

diff --git a/third_party/opentelemetry-cpp/moz.build b/third_party/opentelemetry-cpp/moz.build @@ -9,7 +9,6 @@ DIRS += [ "sdk/src", ] - TEST_DIRS += ["exporters/memory"] with Files("**"): diff --git a/third_party/opentelemetry-cpp/third_party/opentelemetry-proto/moz.build b/third_party/opentelemetry-cpp/third_party/opentelemetry-proto/moz.build @@ -20,6 +20,8 @@ EXPORTS.opentelemetry.proto.collector.trace.v1 = [ "opentelemetry/proto/collector/trace/v1/trace_service.pb.h" ] +DEFINES["GOOGLE_PROTOBUF_NO_RTTI"] = True + SOURCES += [ "opentelemetry/proto/collector/trace/v1/trace_service.pb.cc", "opentelemetry/proto/common/v1/common.pb.cc", diff --git a/third_party/opentelemetry-cpp/third_party/opentelemetry-proto/moz.yaml b/third_party/opentelemetry-cpp/third_party/opentelemetry-proto/moz.yaml @@ -46,7 +46,10 @@ vendoring: - opentelemetry/proto/trace/v1/trace.pb.cc - opentelemetry/proto/trace/v1/trace.pb.h - update-actions: + patches: + - patches/add-lite_runtime-optimization-to-protos.patch + + post-patch-actions: - action: run-script script: "{topsrcdir}/toolkit/components/protobuf/scripts/protoc_wrapper.py" cwd: "{topsrcdir}" diff --git a/third_party/opentelemetry-cpp/third_party/opentelemetry-proto/patches/add-lite_runtime-optimization-to-protos.patch b/third_party/opentelemetry-cpp/third_party/opentelemetry-proto/patches/add-lite_runtime-optimization-to-protos.patch @@ -0,0 +1,52 @@ +diff --git a/opentelemetry/proto/collector/trace/v1/trace_service.proto b/opentelemetry/proto/collector/trace/v1/trace_service.proto +index efbbedbe4545..6a439642915c 100644 +--- a/opentelemetry/proto/collector/trace/v1/trace_service.proto ++++ b/opentelemetry/proto/collector/trace/v1/trace_service.proto +@@ -14,6 +14,8 @@ + + syntax = "proto3"; + ++option optimize_for = LITE_RUNTIME; ++ + package opentelemetry.proto.collector.trace.v1; + + import "opentelemetry/proto/trace/v1/trace.proto"; +diff --git a/opentelemetry/proto/common/v1/common.proto b/opentelemetry/proto/common/v1/common.proto +index 57c9f86e0067..452f27edca95 100644 +--- a/opentelemetry/proto/common/v1/common.proto ++++ b/opentelemetry/proto/common/v1/common.proto +@@ -14,6 +14,8 @@ + + syntax = "proto3"; + ++option optimize_for = LITE_RUNTIME; ++ + package opentelemetry.proto.common.v1; + + option csharp_namespace = "OpenTelemetry.Proto.Common.V1"; +diff --git a/opentelemetry/proto/resource/v1/resource.proto b/opentelemetry/proto/resource/v1/resource.proto +index 05d4456840f4..54c9471466f2 100644 +--- a/opentelemetry/proto/resource/v1/resource.proto ++++ b/opentelemetry/proto/resource/v1/resource.proto +@@ -14,6 +14,8 @@ + + syntax = "proto3"; + ++option optimize_for = LITE_RUNTIME; ++ + package opentelemetry.proto.resource.v1; + + import "opentelemetry/proto/common/v1/common.proto"; +diff --git a/opentelemetry/proto/trace/v1/trace.proto b/opentelemetry/proto/trace/v1/trace.proto +index 24442853edcf..c6470638a97a 100644 +--- a/opentelemetry/proto/trace/v1/trace.proto ++++ b/opentelemetry/proto/trace/v1/trace.proto +@@ -14,6 +14,8 @@ + + syntax = "proto3"; + ++option optimize_for = LITE_RUNTIME; ++ + package opentelemetry.proto.trace.v1; + + import "opentelemetry/proto/common/v1/common.proto"; diff --git a/toolkit/components/protobuf/scripts/protoc_wrapper.py b/toolkit/components/protobuf/scripts/protoc_wrapper.py @@ -64,7 +64,7 @@ def _download_protoc_binary(revision): if not isinstance(member, ZipInfo): member = self.getinfo(member) - targetpath = super(ZipFile, self)._extract_member(member, targetpath, pwd) + targetpath = ZipFile._extract_member(self, member, targetpath, pwd) attr = member.external_attr >> 16 if attr != 0: