This commit is contained in:
Simone Scarduzio
2025-10-08 14:39:23 +02:00
parent 743d52e783
commit 689cf00d02
3 changed files with 15 additions and 12 deletions

View File

@@ -263,7 +263,10 @@ def ls(
client = DeltaGliderClient(service)
dg_response = client.list_objects(
Bucket=bucket_name, Prefix=prefix_str, MaxKeys=10000, Delimiter="/" if not recursive else ""
Bucket=bucket_name,
Prefix=prefix_str,
MaxKeys=10000,
Delimiter="/" if not recursive else "",
)
objects = dg_response["Contents"]
@@ -275,7 +278,7 @@ def ls(
# Show only the directory name, not the full path
if prefix_str:
# Strip the current prefix to show only the subdirectory
display_name = prefix_path[len(prefix_str):]
display_name = prefix_path[len(prefix_str) :]
else:
display_name = prefix_path
click.echo(f" PRE {display_name}")
@@ -284,7 +287,7 @@ def ls(
filtered_objects = []
for obj in objects:
obj_key = obj["Key"]
rel_path = obj_key[len(prefix_str):] if prefix_str else obj_key
rel_path = obj_key[len(prefix_str) :] if prefix_str else obj_key
# Only include if it's a direct child (no / in relative path)
if "/" not in rel_path and rel_path:
filtered_objects.append(obj)
@@ -310,7 +313,7 @@ def ls(
# Show only the filename relative to current prefix (like AWS CLI)
if prefix_str:
display_key = obj["Key"][len(prefix_str):]
display_key = obj["Key"][len(prefix_str) :]
else:
display_key = obj["Key"]

View File

@@ -309,7 +309,9 @@ class DeltaGliderClient:
reference_key = metadata.get("ref_key")
deltaglider_metadata["deltaglider-original-size"] = str(original_size)
deltaglider_metadata["deltaglider-compression-ratio"] = str(compression_ratio)
deltaglider_metadata["deltaglider-compression-ratio"] = str(
compression_ratio
)
if reference_key:
deltaglider_metadata["deltaglider-reference-key"] = reference_key
except Exception as e:
@@ -1129,9 +1131,7 @@ class DeltaGliderClient:
compression_ratio_str = metadata.get("deltaglider-compression-ratio", "0.0")
try:
compression_ratio = (
float(compression_ratio_str)
if compression_ratio_str != "unknown"
else 0.0
float(compression_ratio_str) if compression_ratio_str != "unknown" else 0.0
)
except ValueError:
compression_ratio = 0.0
@@ -1143,7 +1143,9 @@ class DeltaGliderClient:
last_modified=obj_dict.get("LastModified", ""),
etag=obj_dict.get("ETag"),
storage_class=obj_dict.get("StorageClass", "STANDARD"),
original_size=int(metadata.get("deltaglider-original-size", obj_dict["Size"])),
original_size=int(
metadata.get("deltaglider-original-size", obj_dict["Size"])
),
compressed_size=obj_dict["Size"],
is_delta=metadata.get("deltaglider-is-delta", "false") == "true",
compression_ratio=compression_ratio,

View File

@@ -68,9 +68,7 @@ class TestSDKFiltering:
# Verify is_delta flag is set correctly in Metadata
delta_objects = [
obj
for obj in contents
if obj.get("Metadata", {}).get("deltaglider-is-delta") == "true"
obj for obj in contents if obj.get("Metadata", {}).get("deltaglider-is-delta") == "true"
]
assert len(delta_objects) == 2