From 0b563819a56ca46464f4a86dfe39f0f460f243e6 Mon Sep 17 00:00:00 2001 From: vinoyang Date: Thu, 24 Oct 2024 16:59:40 +0800 Subject: [PATCH] Enhance the robustness about parse bucket (#236) --- tosfs/tests/test_utils.py | 2 ++ tosfs/utils.py | 1 + 2 files changed, 3 insertions(+) diff --git a/tosfs/tests/test_utils.py b/tosfs/tests/test_utils.py index dbbadf3..8ca4a9d 100644 --- a/tosfs/tests/test_utils.py +++ b/tosfs/tests/test_utils.py @@ -23,6 +23,8 @@ [ ("bucket/key", ("bucket", "key")), ("bucket/", ("bucket", "")), + ("tos://bucket/key", ("bucket", "key")), + ("tos://bucket/", ("bucket", "")), ("/key", ("", "key")), ("bucket/key/with/slashes", ("bucket", "key/with/slashes")), ("bucket", ("bucket", "")), diff --git a/tosfs/utils.py b/tosfs/utils.py index 569d6d8..7f39e5b 100644 --- a/tosfs/utils.py +++ b/tosfs/utils.py @@ -72,6 +72,7 @@ def find_bucket_key(tos_path: str) -> Tuple[str, str]: r"^(?P:tos-object-lambda:[a-z\-0-9]+:[0-9]{12}:" r"accesspoint[/:][a-zA-Z0-9\-]{1,63})[/:]?(?P.*)$" ), + re.compile(r"^tos://(?P[^/]+)/(?P.*)$"), ] for bucket_format in bucket_format_list: match = bucket_format.match(tos_path)