cloud-files 6.2.0__tar.gz → 6.2.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {cloud_files-6.2.0 → cloud_files-6.2.1}/ChangeLog +5 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/PKG-INFO +1 -1
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloud_files.egg-info/PKG-INFO +1 -1
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloud_files.egg-info/SOURCES.txt +0 -1
- cloud_files-6.2.1/cloud_files.egg-info/pbr.json +1 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/interfaces.py +4 -2
- cloud_files-6.2.0/cloud_files.egg-info/pbr.json +0 -1
- cloud_files-6.2.0/cloudfiles/test.py +0 -28
- {cloud_files-6.2.0 → cloud_files-6.2.1}/.github/workflows/test-suite.yml +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/AUTHORS +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/LICENSE +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/MANIFEST.in +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/README.md +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/automated_test.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloud_files.egg-info/dependency_links.txt +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloud_files.egg-info/entry_points.txt +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloud_files.egg-info/not-zip-safe +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloud_files.egg-info/requires.txt +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloud_files.egg-info/top_level.txt +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/__init__.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/cloudfiles.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/compression.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/connectionpools.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/exceptions.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/gcs.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/lib.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/monitoring.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/paths.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/resumable_tools.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/scheduler.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/secrets.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/threaded_queue.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles/typing.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles_cli/LICENSE +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles_cli/__init__.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/cloudfiles_cli/cloudfiles_cli.py +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/requirements.txt +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/setup.cfg +0 -0
- {cloud_files-6.2.0 → cloud_files-6.2.1}/setup.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"git_version": "4dd0458", "is_release": true}
|
|
@@ -1327,8 +1327,10 @@ class S3Interface(StorageInterface):
|
|
|
1327
1327
|
etag = etag.lstrip('"').rstrip('"')
|
|
1328
1328
|
# AWS has special multipart validation
|
|
1329
1329
|
# so we handle it here... leaky abstraction.
|
|
1330
|
-
if '-' in etag:
|
|
1331
|
-
|
|
1330
|
+
if '-' in etag:
|
|
1331
|
+
# Dell ECS S3 uses a synthetic Etag of "1-" for objects ingested via NFS
|
|
1332
|
+
# Not good behavior, but nothing much we can do other than ignore it.
|
|
1333
|
+
if etag != "1-" and not validate_s3_multipart_etag(content, etag, part_size):
|
|
1332
1334
|
raise MD5IntegrityError(f"{file_path} failed its multipart md5 check. server md5: {etag}")
|
|
1333
1335
|
etag = None
|
|
1334
1336
|
else:
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"git_version": "a0c3192", "is_release": true}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import igneous.task_creation as tc
|
|
2
|
-
import os
|
|
3
|
-
from taskqueue import totask
|
|
4
|
-
import igneous.tasks
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
def process_task(msg):
|
|
8
|
-
task = totask(msg)
|
|
9
|
-
task.execute()
|
|
10
|
-
return None
|
|
11
|
-
|
|
12
|
-
def submit_tasks():
|
|
13
|
-
paths = [
|
|
14
|
-
"gs://ng_scratch_ranl_7/make_cv_happy/seg/20250403024338",]
|
|
15
|
-
all_tasks = []
|
|
16
|
-
for img_path in paths:
|
|
17
|
-
mip = 0
|
|
18
|
-
num_mips = 2
|
|
19
|
-
tasks = tc.create_downsampling_tasks(img_path,
|
|
20
|
-
fill_missing=False,
|
|
21
|
-
delete_black_uploads=True,
|
|
22
|
-
mip=mip, num_mips=num_mips)
|
|
23
|
-
all_tasks += list(tasks)
|
|
24
|
-
return all_tasks
|
|
25
|
-
|
|
26
|
-
if __name__ == "__main__":
|
|
27
|
-
tasks = submit_tasks()
|
|
28
|
-
process_task(tasks[0])
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|