Skip to content

V8 CI failing on the benchmark machines #4267

Closed

Description

@richardlau

e.g. https://ci.nodejs.org/job/node-test-commit-v8-linux/7047/nodes=benchmark-ubuntu2204-intel-64,v8test=v8test/console

10:34:24 Cloning into '/home/iojs/build/workspace/node-test-commit-v8-linux/deps/v8/depot_tools'...
10:34:24 Traceback (most recent call last):
10:34:24   File "/home/iojs/build/workspace/node-test-commit-v8-linux/deps/v8/depot_tools/gclient.py", line 109, in <module>
10:34:24     import gclient_scm
10:34:24   File "/home/iojs/build/workspace/node-test-commit-v8-linux/deps/v8/depot_tools/gclient_scm.py", line 23, in <module>
10:34:24     import gerrit_util
10:34:24   File "/home/iojs/build/workspace/node-test-commit-v8-linux/deps/v8/depot_tools/gerrit_util.py", line 43, in <module>
10:34:24     import metrics
10:34:24   File "/home/iojs/build/workspace/node-test-commit-v8-linux/deps/v8/depot_tools/metrics.py", line 17, in <module>
10:34:24     import metrics_utils
10:34:24   File "/home/iojs/build/workspace/node-test-commit-v8-linux/deps/v8/depot_tools/metrics_utils.py", line 10, in <module>
10:34:24     from enum import StrEnum
10:34:24 ImportError: cannot import name 'StrEnum' from 'enum' (/usr/lib/python3.10/enum.py)
10:34:24 Checking out depot_tools.
10:34:24 Traceback (most recent call last):
10:34:24   File "/home/iojs/build/workspace/node-test-commit-v8-linux/deps/v8/../../tools/v8/fetch_deps.py", line 108, in <module>
10:34:24     FetchDeps(sys.argv[1])
10:34:24   File "/home/iojs/build/workspace/node-test-commit-v8-linux/deps/v8/../../tools/v8/fetch_deps.py", line 80, in FetchDeps
10:34:24     depot_tools = node_common.EnsureDepotTools(v8_path, True)
10:34:24   File "/home/iojs/build/workspace/node-test-commit-v8-linux/tools/v8/node_common.py", line 40, in EnsureDepotTools
10:34:24     depot_tools = _Get(v8_path)
10:34:24   File "/home/iojs/build/workspace/node-test-commit-v8-linux/tools/v8/node_common.py", line 35, in _Get
10:34:24     subprocess.check_output(
10:34:24   File "/usr/lib/python3.10/subprocess.py", line 421, in check_output
10:34:24     return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
10:34:24   File "/usr/lib/python3.10/subprocess.py", line 526, in run
10:34:24     raise CalledProcessError(retcode, process.args,
10:34:25 subprocess.CalledProcessError: Command '['/usr/bin/python3', '/home/iojs/build/workspace/node-test-commit-v8-linux/deps/v8/depot_tools/gclient.py', 'metrics', '--opt-out']' returned non-zero exit status 1.
10:34:25 make: *** [Makefile:317: v8] Error 1

Quick search on the error suggests that StrEnum requires Python 3.11. This has started today (above build (timer) and the one for nodejs/node#62136) so not sure if this is a new requirement or if it'll get reverted/changed in depot_tools.

Activity

  1. richardlau commented on Mar 18, 2026

    @richardlau
    MemberAuthor

    This continues to fail almost two weeks later so doesn't look a inadvertent change on the V8 side.

    Ubuntu 22.04 does have a python3.11 but it looks to be a rc build:

    # apt info python3.11
    Package: python3.11
    Version: 3.11.0~rc1-1~22.04
    Priority: optional
    Section: universe/python
    Origin: Ubuntu
    Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
    Original-Maintainer: Matthias Klose <doko@debian.org>
    Bugs: https://bugs.launchpad.net/ubuntu/+filebug
    Installed-Size: 688 kB
    Depends: python3.11-minimal (= 3.11.0~rc1-1~22.04), libpython3.11-stdlib (= 3.11.0~rc1-1~22.04), media-types | mime-support
    Suggests: python3.11-venv, python3.11-doc, binutils
    Breaks: python3-all (<< 3.6.5~rc1-1), python3-dev (<< 3.6.5~rc1-1), python3-venv (<< 3.6.5-2)
    Download-Size: 550 kB
    APT-Sources: http://mirror.hetzner.com/ubuntu/packages jammy-updates/universe amd64 Packages
    Description: Interactive high-level object-oriented language (version 3.11)
     Python is a high-level, interactive, object-oriented language. Its 3.11 version
     includes an extensive class library with lots of goodies for
     network programming, system administration, sounds and graphics.
    #
    

    I think we really ought to sort out the move to Ubuntu 24.04 for these machines, where the default python 3 is 3.12.

  2. richardlau commented on Mar 25, 2026

    @richardlau
    MemberAuthor

    V8 CI is now running on the replacement Ubuntu 24.04 machines.
    We have had to override depot_tools to recent version to gain Python 3.12 compatibility.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions