Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

git version(s) for V8 CI

Open
#4,476 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Active
Tech stack
git

Research direction

Start with deps/v8/DEPS and tools/v8/fetch_deps.py, then compare the git versions and depot_tools behavior in the referenced Ubuntu 24.04, RHEL 8 ppc64le, and RHEL 8 s390x CI jobs. Done should include a concrete plan for compatible git and CI operating-system versions, with the affected V8 CI jobs identified and verified.

Written by the indexing model from the issue text.

Description

build-agenda platform:linux-intel platform:linuxONE platform:ppc

Originally posted by @richardlau in #4462

From @aduh95,

FYI I've tried https://github.com/nodejs/node/pull/66070 with https://github.com/nodejs/node/pull/65891 in https://ci.nodejs.org/job/node-test-commit-v8-linux/7380/nodes=benchmark-ubuntu2404-intel-64,v8test=v8test/, but it shows

Error: Command 'git -c color.ui=never checkout --quiet --end-of-options 25c29f04c9127e1ca09e6c1181f74850aa7f118b' returned non-zero  exit status 1 in ./v8/third_party/libpfm4
error: pathspec '--end-of-options' did not match any file(s) known to git

Would that indicate an incompatible version of git? --end-of-options was added in https://gitlab.com/git-scm/git/-/blob/HEAD/Documentation/RelNotes/2.44.0.adoc

AFAICT use of --end-of-options has come from https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/8401307. On our V8 CI this is causing the Ubuntu 24.04 x64 build to fail but the RHEL 8 ppc64le and s390x builds still work, which appear to be due to the version of git installed.

From the CI I ran for https://github.com/nodejs/node/pull/66070, which was before depot_tools adopted --end-of-options,

17:55:55 git update is recommended.
17:55:55 Installed git version is 2.43.0;
17:55:55 depot_tools recommends version 2.46.0 or later.
17:55:55 Disable this warning by setting the GCLIENT_SUPPRESS_GIT_VERSION_WARNING
17:55:55 environment variable to 1.
17:58:00 git update is recommended.
17:58:00 Installed git version is 2.43.7;
17:58:00 depot_tools recommends version 2.46.0 or later.
17:58:00 Disable this warning by setting the GCLIENT_SUPPRESS_GIT_VERSION_WARNING
17:58:00 environment variable to 1.

so the version of git on Ubuntu 24.04 is slightly older than the one in RHEL 8, but both are less than the depot_tools recommended version.

To workaround the immediate problem the job is now pinning the version of depot_tools in line with what is in deps/v8/DEPS (or any override we set in tools/v8/fetch_deps.py) but this only means delaying picking up newer versions of depot_tools until Node.js attempts to pick up a newer version of V8 which has rolled depot_tools forward.

We might need to start planning to shift the V8 CI:

  • for x64 from Ubuntu 24.04 to 26.04.
  • for ppc64le/s390x from RHEL 8 to RHEL 9 (or even 10).
Dominant language
Jinja
Stars
541
Forks
185
Avg merge
22h 15m
Merged PRs (30d)
4

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from nodejs/build

All issues in nodejs/build

Similar issues

More Build System issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.