Skip to content

test.dart fails on Python 3.13 #60278

Open
@pcc

Description

@pcc

Dart commit 5bf9bdb

tools/sdks/dart-sdk/bin/dart tools/test.dart -n vm-linux-release-arm64

Expected behavior: tests run

Actual behavior: (on a machine with Python 3.13)

Traceback (most recent call last):
  File "/mnt/disk2/pcc/dart-sdk/sdk/third_party/gsutil/gsutil.py", line 156, in <module>
    RunMain()
    ~~~~~~~^^
  File "/mnt/disk2/pcc/dart-sdk/sdk/third_party/gsutil/gsutil.py", line 151, in RunMain
    import gslib.__main__
  File "/mnt/disk2/pcc/dart-sdk/sdk/third_party/gsutil/gslib/__main__.py", line 89, in <module>
    from gslib import wildcard_iterator
  File "/mnt/disk2/pcc/dart-sdk/sdk/third_party/gsutil/gslib/wildcard_iterator.py", line 43, in <module>
    from gslib.third_party.storage_apitools import storage_v1_messages as apitools_messages
  File "/mnt/disk2/pcc/dart-sdk/sdk/third_party/gsutil/gslib/third_party/storage_apitools/storage_v1_messages.py", line 20, in <module>
    from apitools.base.protorpclite import message_types as _message_types
  File "/mnt/disk2/pcc/dart-sdk/sdk/third_party/gsutil/third_party/apitools/apitools/base/protorpclite/message_types.py", line 25, in <module>
    from apitools.base.protorpclite import messages
  File "/mnt/disk2/pcc/dart-sdk/sdk/third_party/gsutil/third_party/apitools/apitools/base/protorpclite/messages.py", line 549, in <module>
    class Variant(Enum):
    ...<34 lines>...
        SINT64 = 18
  File "/mnt/disk2/pcc/dart-sdk/sdk/third_party/gsutil/third_party/apitools/apitools/base/protorpclite/messages.py", line 319, in __init__
    raise EnumDefinitionError(
    ...<2 lines>...
        (attribute, value))
apitools.base.protorpclite.messages.EnumDefinitionError: May only use integers in Enum definitions.

This turns out to be caused by an old version of gsutil: GoogleCloudPlatform/gsutil#1819

I worked around the issue by patching the DEPS file to refer to gsutil version 5.33, rerunning gclient sync and patching out the version check near the top of gsutil.py but maybe Dart should consider switching to gcloud storage as suggested in the gsutil issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-sdkUse area-sdk for general purpose SDK issues (packaging, distribution, …).

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions