fix(v8): refresh gclient_paths.patch and pin depot_tools - #130
Merged
Conversation
… paths gclient_paths.patch drops the @functools.lru_cache decorators from gclient_paths.py. Two upstream depot_tools changes invalidated its context: f065bb3b0 (2026-07-13, "Add gclient getconfig subcommand") added a fifth decorated function, _GetGClientConfigInner, and 93974d014 (2026-07-21, ruff reformat) switched the file to double-quoted strings. #127 worked around this by pinning depot_tools to 6e5a13d2 (2026-06-22), the last revision the old four-hunk patch applied against, but it only pinned Common/3dParty/v8/nc-build.py. The two Docker binary builders, tools/8.9/{x64,arm64}-linux-dynamic/nc-build.sh, kept running `git pull origin main` and have been broken since f065bb3b0. Replace the patch with the five-hunk version regenerated against current depot_tools, and move all three build paths onto one pinned revision: f394ab2c9 (2026-07-24). That is the newest revision the new patch applies against (verified with `git apply --check`; the range is 93974d014..HEAD) and it predates the depot_tools UV migration db395c47f (2026-08-02), which is not yet build-verified against V8 8.9. The shell builders also export DEPOT_TOOLS_UPDATE=0 so gclient sync cannot self-update back to HEAD. Verified: the patch applies cleanly at f394ab2c9 for both arch dirs, removes all five decorators, and the result parses as valid Python. Co-authored-by: Peter P. Lupo <pplupo@gmail.com> Co-authored-by: Mikkel Jeppesen <2756925+Duckle29@users.noreply.github.com> Assisted-by: ClaudeCode:claude-opus-5 Signed-off-by: Christoph Schaefer <christoph.schaefer@nextcloud.com>
rikled
approved these changes
Aug 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
gclient_paths.patchdrops the@functools.lru_cachedecorators fromdepot_tools'
gclient_paths.py. Two upstream changes invalidated its context:f065bb3b0(2026-07-13) added a fifth decorated function,_GetGClientConfigInner, and93974d014(2026-07-21, ruff reformat) switchedthe file to double-quoted strings.
#127 worked around this by pinning depot_tools to
6e5a13d2, the last revisionthe old four-hunk patch applied against — but it only pinned
Common/3dParty/v8/nc-build.py. The two Docker binary builders,tools/8.9/{x64,arm64}-linux-dynamic/nc-build.sh, kept runninggit pull origin mainand have been broken sincef065bb3b0as well.This PR does both halves:
f394ab2c9(2026-07-24) — the newest revision the new patch applies against
(range
93974d014..HEAD), and the last before the depot_tools UV migrationdb395c47f, which isn't build-verified against V8 8.9;DEPOT_TOOLS_UPDATE=0in the shell builders sogclient synccan't self-update back to HEAD.
Verified locally:
git apply --checkpasses for both arch dirs at the new pin,and a full
docker buildx bake corewith v8 cleared from the build cache buildsv8 from source and links
x2t.Note for reviewers: a green CI run here does not by itself prove the v8 source
build works. With
NEXTCLOUD_USER/NEXTCLOUD_PASSavailable,ensure_dep()downloads a prebuilt v8 and skips
nc-build.pyentirely — which is why #129'sfailure only surfaced on a fork PR without those secrets.
Supersedes #129. Follow-up to #127; the longer-term "do we still need v8 8.9 and
these patches" question stays in #72.
Patch authored by @pplupo in #129, originally worked out by @Duckle29 in
Euro-Office/DesktopEditors#66 — both credited via
Co-authored-by.Euro-Office/DesktopEditors#66 itself needs a
coresubmodule bump inDesktopEditors, which I'll open separately.
Assisted-by: ClaudeCode:claude-opus-5