envoyproxy/envoy

Streamline v8 updates and refresh v8 dependency

Open

#38,609 opened on Feb 28, 2025

View on GitHub
 (0 comments) (3 reactions) (0 assignees)C++ (5,373 forks)batch import
area/dependencyarea/wasmenhancementhelp wanted

Repository metrics

Stars
 (27,997 stars)
PR merge metrics
 (Avg merge 8d) (378 merged PRs in 30d)

Description

Title: Simplify the process of updating v8 and refresh v8 dependency

Description:

While working on Envoy CI update to clang-18 (https://github.com/envoyproxy/envoy/issues/37911), I noticed that v8 dependency is a bit different from the rest and we are not using upstream v8 directly and instead process it somehow, upload it to GCS and use a version from GCS (or something like this, I don't fully understand the process yet). I think that kind of one of the reasons why we haven't updated v8 dependency for a while.

There were at least two things that could improve if we update the version of the v8 dependency:

  1. It looks like we can drop one of the external dependencies (https://github.com/envoyproxy/envoy/blob/main/bazel/repository_locations.bzl#L1216-L1230 was merged into the v8 itself)
  2. Upstream v8 addressed some of the bugs we hit during migration to clang-18 (here is one example: https://github.com/v8/v8/commit/df459f0e7eda0d1c50698284aab6f424057e076a).

I would like to consider one or both of the following items:

  1. Streamline the v8 dependency update process - it would be ideal if we can just consume the upstream repository directly
  2. Update v8 depdendency to a newer version.

I'm filing this bug mostly because I'd like to try doing it myself at some point, but haven't had a chance yet to spend time on it.

+cc @phlax

Contributor guide