From 61414e0f1a0b4e4c14b3bc525561f88dabd2a70e Mon Sep 17 00:00:00 2001 From: Holt Skinner Date: Fri, 14 Mar 2025 09:51:56 -0500 Subject: [PATCH 1/7] fix: Update `storage.Blob.from_string()` to `from_uri()` Fixes #382 --- google/cloud/documentai_toolbox/utilities/gcs_utilities.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py index 077ca19a..bd216024 100644 --- a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py +++ b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py @@ -142,7 +142,7 @@ def get_blob( if not re.match(constants.FILE_CHECK_REGEX, gcs_uri): raise ValueError("gcs_uri must link to a single file.") - return storage.Blob.from_string(gcs_uri, _get_storage_client(module=module)) + return storage.Blob.from_uri(gcs_uri, _get_storage_client(module=module)) def split_gcs_uri(gcs_uri: str) -> Tuple[str, str]: From 6d16a7db6cf6f28ea5e69a2725811de8abb0930d Mon Sep 17 00:00:00 2001 From: Holt Skinner Date: Fri, 14 Mar 2025 09:56:47 -0500 Subject: [PATCH 2/7] Run different methods depending on package version --- .../documentai_toolbox/utilities/gcs_utilities.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py index bd216024..f0ce6107 100644 --- a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py +++ b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py @@ -15,6 +15,7 @@ # """Google Cloud Storage utilities.""" import os +import pkg_resources import re from typing import Dict, List, Optional, Tuple @@ -142,7 +143,18 @@ def get_blob( if not re.match(constants.FILE_CHECK_REGEX, gcs_uri): raise ValueError("gcs_uri must link to a single file.") - return storage.Blob.from_uri(gcs_uri, _get_storage_client(module=module)) + try: + version = pkg_resources.get_distribution("google-cloud-storage").version + except pkg_resources.DistributionNotFound: + raise ImportError("google-cloud-storage is not installed.") + + client = _get_storage_client(module=module) + + major, _, _ = map(int, version.split(".")) + if major < 3: + return storage.Blob.from_string(gcs_uri, client) + else: + return storage.Blob.from_uri(gcs_uri, client) def split_gcs_uri(gcs_uri: str) -> Tuple[str, str]: From 701d5523042454a8d60c12faffd8189d0631c06f Mon Sep 17 00:00:00 2001 From: Owl Bot Date: Fri, 14 Mar 2025 14:58:41 +0000 Subject: [PATCH 3/7] =?UTF-8?q?=F0=9F=A6=89=20Updates=20from=20OwlBot=20po?= =?UTF-8?q?st-processor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --- google/cloud/documentai_toolbox/utilities/gcs_utilities.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py index f0ce6107..5775bf6e 100644 --- a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py +++ b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py @@ -15,11 +15,11 @@ # """Google Cloud Storage utilities.""" import os -import pkg_resources import re from typing import Dict, List, Optional, Tuple from google.api_core.gapic_v1 import client_info +import pkg_resources from google.cloud import documentai, documentai_toolbox, storage from google.cloud.documentai_toolbox import constants From cb38843ed5ed259d3bf27f704f5fc7cf39b81d3b Mon Sep 17 00:00:00 2001 From: Holt Skinner <13262395+holtskinner@users.noreply.github.com> Date: Fri, 14 Mar 2025 10:25:07 -0500 Subject: [PATCH 4/7] Update google/cloud/documentai_toolbox/utilities/gcs_utilities.py Co-authored-by: Anthonios Partheniou --- google/cloud/documentai_toolbox/utilities/gcs_utilities.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py index 5775bf6e..f4bdbc8e 100644 --- a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py +++ b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py @@ -144,8 +144,8 @@ def get_blob( raise ValueError("gcs_uri must link to a single file.") try: - version = pkg_resources.get_distribution("google-cloud-storage").version - except pkg_resources.DistributionNotFound: + version = importlib.metadata.version("google-cloud-storage") + except importlib.metadata.PackageNotFoundError: raise ImportError("google-cloud-storage is not installed.") client = _get_storage_client(module=module) From 8d136c23ee55ee5b6fc221761403e4d869af383e Mon Sep 17 00:00:00 2001 From: Holt Skinner <13262395+holtskinner@users.noreply.github.com> Date: Fri, 14 Mar 2025 10:25:13 -0500 Subject: [PATCH 5/7] Update google/cloud/documentai_toolbox/utilities/gcs_utilities.py Co-authored-by: Anthonios Partheniou --- google/cloud/documentai_toolbox/utilities/gcs_utilities.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py index f4bdbc8e..4b9cc759 100644 --- a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py +++ b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py @@ -19,7 +19,7 @@ from typing import Dict, List, Optional, Tuple from google.api_core.gapic_v1 import client_info -import pkg_resources +import importlib.metadata from google.cloud import documentai, documentai_toolbox, storage from google.cloud.documentai_toolbox import constants From e5a326f6cc1377609f7d9333ccdc3b5a19c3c6de Mon Sep 17 00:00:00 2001 From: Owl Bot Date: Fri, 14 Mar 2025 15:27:00 +0000 Subject: [PATCH 6/7] =?UTF-8?q?=F0=9F=A6=89=20Updates=20from=20OwlBot=20po?= =?UTF-8?q?st-processor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --- google/cloud/documentai_toolbox/utilities/gcs_utilities.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py index 4b9cc759..ca27cda0 100644 --- a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py +++ b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py @@ -14,12 +14,12 @@ # limitations under the License. # """Google Cloud Storage utilities.""" +import importlib.metadata import os import re from typing import Dict, List, Optional, Tuple from google.api_core.gapic_v1 import client_info -import importlib.metadata from google.cloud import documentai, documentai_toolbox, storage from google.cloud.documentai_toolbox import constants From 9aad6cd891395a28fcbe11c7a376086c5ca9d70a Mon Sep 17 00:00:00 2001 From: Owl Bot Date: Fri, 14 Mar 2025 15:27:06 +0000 Subject: [PATCH 7/7] =?UTF-8?q?=F0=9F=A6=89=20Updates=20from=20OwlBot=20po?= =?UTF-8?q?st-processor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --- google/cloud/documentai_toolbox/utilities/gcs_utilities.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py index 4b9cc759..ca27cda0 100644 --- a/google/cloud/documentai_toolbox/utilities/gcs_utilities.py +++ b/google/cloud/documentai_toolbox/utilities/gcs_utilities.py @@ -14,12 +14,12 @@ # limitations under the License. # """Google Cloud Storage utilities.""" +import importlib.metadata import os import re from typing import Dict, List, Optional, Tuple from google.api_core.gapic_v1 import client_info -import importlib.metadata from google.cloud import documentai, documentai_toolbox, storage from google.cloud.documentai_toolbox import constants