dcicutils 8.8.4.1b7__py3-none-any.whl → 8.8.4.1b8__py3-none-any.whl
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.
- dcicutils/file_utils.py +20 -0
- {dcicutils-8.8.4.1b7.dist-info → dcicutils-8.8.4.1b8.dist-info}/METADATA +1 -1
- {dcicutils-8.8.4.1b7.dist-info → dcicutils-8.8.4.1b8.dist-info}/RECORD +6 -6
- {dcicutils-8.8.4.1b7.dist-info → dcicutils-8.8.4.1b8.dist-info}/LICENSE.txt +0 -0
- {dcicutils-8.8.4.1b7.dist-info → dcicutils-8.8.4.1b8.dist-info}/WHEEL +0 -0
- {dcicutils-8.8.4.1b7.dist-info → dcicutils-8.8.4.1b8.dist-info}/entry_points.txt +0 -0
dcicutils/file_utils.py
CHANGED
@@ -76,3 +76,23 @@ def normalize_file_path(path: str, home_directory: bool = True) -> str:
|
|
76
76
|
if path.startswith(home_directory) and path != home_directory:
|
77
77
|
path = "~/" + pathlib.Path(path).relative_to(home_directory).as_posix()
|
78
78
|
return path
|
79
|
+
|
80
|
+
|
81
|
+
def are_files_equal(filea: str, fileb: str) -> bool:
|
82
|
+
"""
|
83
|
+
Returns True iff the contents of the two given files are exactly the same.
|
84
|
+
"""
|
85
|
+
try:
|
86
|
+
with open(filea, "rb") as fa:
|
87
|
+
with open(fileb, "rb") as fb:
|
88
|
+
chunk_size = 4096
|
89
|
+
while True:
|
90
|
+
chunka = fa.read(chunk_size)
|
91
|
+
chunkb = fb.read(chunk_size)
|
92
|
+
if chunka != chunkb:
|
93
|
+
return False
|
94
|
+
if not chunka:
|
95
|
+
break
|
96
|
+
return True
|
97
|
+
except Exception:
|
98
|
+
return False
|
@@ -28,7 +28,7 @@ dcicutils/es_utils.py,sha256=ZksLh5ei7kRUfiFltk8sd2ZSfh15twbstrMzBr8HNw4,7541
|
|
28
28
|
dcicutils/exceptions.py,sha256=4giQGtpak-omQv7BP6Ckeu91XK5fnDosC8gfdmN_ccA,9931
|
29
29
|
dcicutils/ff_mocks.py,sha256=6RKS4eUiu_Wl8yP_8V0CaV75w4ZdWxdCuL1CVlnMrek,36918
|
30
30
|
dcicutils/ff_utils.py,sha256=oIhuZPnGtfwj6bWyCc1u23JbMB_6InPp01ZqUOljd8M,73123
|
31
|
-
dcicutils/file_utils.py,sha256=
|
31
|
+
dcicutils/file_utils.py,sha256=RvA6ILj-JiM33co2o4nJPFnGSgG2oEXNvT3pSSsBdqo,4258
|
32
32
|
dcicutils/function_cache_decorator.py,sha256=XMyiEGODVr2WoAQ68vcoX_9_Xb9p8pZXdXl7keU8i2g,10026
|
33
33
|
dcicutils/glacier_utils.py,sha256=Q4CVXsZCbP-SoZIsZ5NMcawDfelOLzbQnIlQn-GdlTo,34149
|
34
34
|
dcicutils/http_utils.py,sha256=RB0x9hRMZM9Xd1x00c5J0iUzUdYzIQR0XKFiQ94HWO0,807
|
@@ -73,8 +73,8 @@ dcicutils/trace_utils.py,sha256=g8kwV4ebEy5kXW6oOrEAUsurBcCROvwtZqz9fczsGRE,1769
|
|
73
73
|
dcicutils/validation_utils.py,sha256=cMZIU2cY98FYtzK52z5WUYck7urH6JcqOuz9jkXpqzg,14797
|
74
74
|
dcicutils/variant_utils.py,sha256=2H9azNx3xAj-MySg-uZ2SFqbWs4kZvf61JnK6b-h4Qw,4343
|
75
75
|
dcicutils/zip_utils.py,sha256=_Y9EmL3D2dUZhxucxHvrtmmlbZmK4FpSsHEb7rGSJLU,3265
|
76
|
-
dcicutils-8.8.4.
|
77
|
-
dcicutils-8.8.4.
|
78
|
-
dcicutils-8.8.4.
|
79
|
-
dcicutils-8.8.4.
|
80
|
-
dcicutils-8.8.4.
|
76
|
+
dcicutils-8.8.4.1b8.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
|
77
|
+
dcicutils-8.8.4.1b8.dist-info/METADATA,sha256=8Z51hXw6f3ZgvXeEDlWSrYwkmT0KDpaveiBSmY46J6E,3396
|
78
|
+
dcicutils-8.8.4.1b8.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
|
79
|
+
dcicutils-8.8.4.1b8.dist-info/entry_points.txt,sha256=51Q4F_2V10L0282W7HFjP4jdzW4K8lnWDARJQVFy_hw,270
|
80
|
+
dcicutils-8.8.4.1b8.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|