diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 93716ef3..383226d0 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -29,7 +29,7 @@ jobs: - name: Setup Python uses: actions/setup-python@master with: - python-version: 3.9 + python-version: "3.10" - name: Install dependencies id: coverage-installer run: | diff --git a/.github/workflows/doc-gen.yml b/.github/workflows/doc-gen.yml index 9d3e487e..d2043f17 100644 --- a/.github/workflows/doc-gen.yml +++ b/.github/workflows/doc-gen.yml @@ -22,7 +22,7 @@ jobs: - name: Setup Python uses: actions/setup-python@master with: - python-version: 3.9 + python-version: "3.10" - name: Setup requirements and run sphinx run: | python -m pip install --upgrade pip diff --git a/.github/workflows/pre-merge.yml b/.github/workflows/pre-merge.yml index eb690382..3db8aa71 100644 --- a/.github/workflows/pre-merge.yml +++ b/.github/workflows/pre-merge.yml @@ -21,10 +21,10 @@ jobs: uses: wagoid/commitlint-github-action@v4 with: configFile: .commitlintrc.yml - - name: Install Python 3.9 + - name: Install Python 3.10 uses: actions/setup-python@v1 with: - python-version: 3.9 + python-version: "3.10" - name: Install dependencies run: | python -m pip install --upgrade pip diff --git a/dgp/contribs/pd/metadata_pb2.py b/dgp/contribs/pd/metadata_pb2.py index ffcfcddf..df764764 100644 --- a/dgp/contribs/pd/metadata_pb2.py +++ b/dgp/contribs/pd/metadata_pb2.py @@ -1,12 +1,22 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE # source: dgp/contribs/pd/metadata.proto -# Protobuf Python Version: 4.25.1 +# Protobuf Python Version: 6.31.1 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version from google.protobuf import symbol_database as _symbol_database from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 1, + '', + 'dgp/contribs/pd/metadata.proto' +) # @@protoc_insertion_point(imports) _sym_db = _symbol_database.Default() @@ -19,11 +29,11 @@ _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'dgp.contribs.pd.metadata_pb2', _globals) -if _descriptor._USE_C_DESCRIPTORS == False: - DESCRIPTOR._options = None - _globals['_PARALLELDOMAINSAMPLEMETADATA_ATTRIBUTESENTRY']._options = None +if not _descriptor._USE_C_DESCRIPTORS: + DESCRIPTOR._loaded_options = None + _globals['_PARALLELDOMAINSAMPLEMETADATA_ATTRIBUTESENTRY']._loaded_options = None _globals['_PARALLELDOMAINSAMPLEMETADATA_ATTRIBUTESENTRY']._serialized_options = b'8\001' - _globals['_PARALLELDOMAINSCENEMETADATA_ATTRIBUTESENTRY']._options = None + _globals['_PARALLELDOMAINSCENEMETADATA_ATTRIBUTESENTRY']._loaded_options = None _globals['_PARALLELDOMAINSCENEMETADATA_ATTRIBUTESENTRY']._serialized_options = b'8\001' _globals['_SCENETYPE']._serialized_start=677 _globals['_SCENETYPE']._serialized_end=747 diff --git a/dgp/contribs/pd/metadata_pb2_grpc.py b/dgp/contribs/pd/metadata_pb2_grpc.py index 2daafffe..f4e32e5e 100644 --- a/dgp/contribs/pd/metadata_pb2_grpc.py +++ b/dgp/contribs/pd/metadata_pb2_grpc.py @@ -1,4 +1,24 @@ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! """Client and server classes corresponding to protobuf-defined services.""" +import warnings + import grpc +GRPC_GENERATED_VERSION = '1.78.0' +GRPC_VERSION = grpc.__version__ +_version_not_supported = False + +try: + from grpc._utilities import first_version_is_lower + _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION) +except ImportError: + _version_not_supported = True + +if _version_not_supported: + raise RuntimeError( + f'The grpc package installed is at version {GRPC_VERSION},' + + ' but the generated code in dgp/contribs/pd/metadata_pb2_grpc.py depends on' + + f' grpcio>={GRPC_GENERATED_VERSION}.' + + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}' + + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.' + ) diff --git a/dgp/utils/protobuf.py b/dgp/utils/protobuf.py index 3841fdb7..c020ff73 100644 --- a/dgp/utils/protobuf.py +++ b/dgp/utils/protobuf.py @@ -131,7 +131,7 @@ def save_pbobject_as_json(pb_object, save_path): assert save_path.endswith(".json"), 'File extension for {} needs to be json.'.format(save_path) with open(save_path, "w", encoding='UTF-8') as _f: json.dump( - MessageToDict(pb_object, including_default_value_fields=True, preserving_proto_field_name=True), + MessageToDict(pb_object, always_print_fields_with_no_presence=True, preserving_proto_field_name=True), _f, indent=2, sort_keys=True @@ -209,7 +209,7 @@ def generate_uid_from_pbobject(pb_object): Hexdigest of annotation content """ json_string = json.dumps( - MessageToDict(pb_object, including_default_value_fields=True, preserving_proto_field_name=True), + MessageToDict(pb_object, always_print_fields_with_no_presence=True, preserving_proto_field_name=True), indent=2, sort_keys=True ) diff --git a/setup.py b/setup.py index 5047c257..fdd1c7eb 100644 --- a/setup.py +++ b/setup.py @@ -33,12 +33,12 @@ requirements_dev = f.read().splitlines() install_requires = requirements + [ - "protobuf>=4.0.0,<5.0.0", + "protobuf>=6.30.1", ] setup_requires = [ - "protobuf>=4.0.0,<5.0.0", - "grpcio==1.62.2", # for the latest protobuf 4.X.X support. - "grpcio-tools==1.62.2", # for the latest protobuf 4.X.X support. + "protobuf>=6.30.1", + "grpcio>=1.70.0", + "grpcio-tools>=1.70.0", ] @@ -90,7 +90,7 @@ def run(self): "dev": requirements_dev, }, zip_safe=False, - python_requires=">=3.8", + python_requires=">=3.10", cmdclass={ "build_py": _CustomBuildPyCommand, "install": _CustomInstallCommand, diff --git a/tests/data/dgp/vis_output.png b/tests/data/dgp/vis_output.png index 801f42fc..9f4f45b9 100644 Binary files a/tests/data/dgp/vis_output.png and b/tests/data/dgp/vis_output.png differ