Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

git version(s) for V8 CI

未关闭
#4,476 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
活跃
技术栈
git

调研方向

从 deps/v8/DEPS 和 tools/v8/fetch_deps.py 开始,然后比较所引用的 Ubuntu 24.04、RHEL 8 ppc64le 和 RHEL 8 s390x CI 作业中的 git 版本和 depot_tools 行为。完成内容应包括兼容的 git 和 CI 操作系统版本的具体计划,并识别和验证受影响的 V8 CI 作业。

由索引模型根据 Issue 内容生成。

描述

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).
主要语言
Jinja
星标
541
派生
185
平均合并
22 小时 15 分钟
30 天内合并 PR
4

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

nodejs/build 的其他 Issue

查看 nodejs/build 的全部 Issue

相似的 Issue

更多 Build System Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。