deltacat 1.1.12__py3-none-any.whl → 1.1.14__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.
- deltacat/__init__.py +1 -1
- deltacat/aws/clients.py +1 -1
- deltacat/compute/compactor/model/compact_partition_params.py +5 -0
- deltacat/compute/compactor_v2/compaction_session.py +97 -573
- deltacat/compute/compactor_v2/private/__init__.py +0 -0
- deltacat/compute/compactor_v2/private/compaction_utils.py +716 -0
- deltacat/compute/compactor_v2/utils/task_options.py +0 -1
- deltacat/tests/compute/compact_partition_rebase_test_cases.py +1 -0
- deltacat/tests/compute/compact_partition_rebase_then_incremental_test_cases.py +32 -0
- deltacat/tests/compute/compact_partition_test_cases.py +19 -1
- deltacat/tests/compute/test_compact_partition_incremental.py +13 -0
- deltacat/tests/compute/test_compact_partition_rebase.py +34 -0
- deltacat/tests/compute/test_compact_partition_rebase_then_incremental.py +12 -0
- deltacat/tests/compute/test_util_common.py +101 -0
- {deltacat-1.1.12.dist-info → deltacat-1.1.14.dist-info}/METADATA +15 -15
- {deltacat-1.1.12.dist-info → deltacat-1.1.14.dist-info}/RECORD +19 -17
- {deltacat-1.1.12.dist-info → deltacat-1.1.14.dist-info}/WHEEL +1 -1
- {deltacat-1.1.12.dist-info → deltacat-1.1.14.dist-info}/LICENSE +0 -0
- {deltacat-1.1.12.dist-info → deltacat-1.1.14.dist-info}/top_level.txt +0 -0
@@ -23,12 +23,16 @@ from deltacat.tests.compute.test_util_constant import (
|
|
23
23
|
from deltacat.compute.compactor import (
|
24
24
|
RoundCompletionInfo,
|
25
25
|
)
|
26
|
+
from deltacat.compute.compactor.model.compaction_session_audit_info import (
|
27
|
+
CompactionSessionAuditInfo,
|
28
|
+
)
|
26
29
|
|
27
30
|
from deltacat.storage.model.partition import PartitionLocator
|
28
31
|
from deltacat.storage.model.stream import StreamLocator
|
29
32
|
from deltacat.storage.model.table_version import TableVersionLocator
|
30
33
|
from deltacat.storage.model.table import TableLocator
|
31
34
|
from deltacat.storage.model.namespace import NamespaceLocator
|
35
|
+
from deltacat.compute.compactor.model.compactor_version import CompactorVersion
|
32
36
|
|
33
37
|
|
34
38
|
class PartitionKeyType(str, Enum):
|
@@ -215,3 +219,100 @@ def offer_iso8601_timestamp_list(
|
|
215
219
|
)
|
216
220
|
)
|
217
221
|
return res
|
222
|
+
|
223
|
+
|
224
|
+
def assert_compaction_audit(
|
225
|
+
compactor_version: CompactorVersion, compaction_audit: CompactionSessionAuditInfo
|
226
|
+
):
|
227
|
+
if compactor_version == CompactorVersion.V2:
|
228
|
+
audit_entries = [
|
229
|
+
compaction_audit.deltacat_version,
|
230
|
+
compaction_audit.ray_version,
|
231
|
+
compaction_audit.audit_url,
|
232
|
+
compaction_audit.hash_bucket_count,
|
233
|
+
compaction_audit.compactor_version,
|
234
|
+
compaction_audit.input_size_bytes,
|
235
|
+
compaction_audit.input_file_count,
|
236
|
+
compaction_audit.estimated_in_memory_size_bytes_during_discovery,
|
237
|
+
compaction_audit.uniform_deltas_created,
|
238
|
+
compaction_audit.delta_discovery_time_in_seconds,
|
239
|
+
compaction_audit.hash_bucket_time_in_seconds,
|
240
|
+
compaction_audit.hash_bucket_invoke_time_in_seconds,
|
241
|
+
compaction_audit.hash_bucket_result_size_bytes,
|
242
|
+
compaction_audit.total_cluster_object_store_memory_bytes,
|
243
|
+
compaction_audit.total_cluster_memory_bytes,
|
244
|
+
compaction_audit.total_object_store_memory_used_bytes,
|
245
|
+
compaction_audit.hash_bucket_post_object_store_memory_used_bytes,
|
246
|
+
compaction_audit.hash_bucket_result_wait_time_in_seconds,
|
247
|
+
compaction_audit.peak_memory_used_bytes_per_hash_bucket_task,
|
248
|
+
compaction_audit.hash_bucket_processed_size_bytes,
|
249
|
+
compaction_audit.input_records,
|
250
|
+
compaction_audit.merge_time_in_seconds,
|
251
|
+
compaction_audit.merge_invoke_time_in_seconds,
|
252
|
+
compaction_audit.merge_result_size,
|
253
|
+
compaction_audit.merge_post_object_store_memory_used_bytes,
|
254
|
+
compaction_audit.merge_result_wait_time_in_seconds,
|
255
|
+
compaction_audit.peak_memory_used_bytes_per_merge_task,
|
256
|
+
compaction_audit.records_deduped,
|
257
|
+
compaction_audit.records_deleted,
|
258
|
+
compaction_audit.compaction_time_in_seconds,
|
259
|
+
compaction_audit.peak_memory_used_bytes_by_compaction_session_process,
|
260
|
+
compaction_audit.untouched_file_count,
|
261
|
+
compaction_audit.untouched_file_ratio,
|
262
|
+
compaction_audit.untouched_record_count,
|
263
|
+
compaction_audit.untouched_size_bytes,
|
264
|
+
compaction_audit.output_file_count,
|
265
|
+
compaction_audit.output_size_bytes,
|
266
|
+
compaction_audit.output_size_pyarrow_bytes,
|
267
|
+
compaction_audit.peak_memory_used_bytes_per_task,
|
268
|
+
compaction_audit.pyarrow_version,
|
269
|
+
compaction_audit.telemetry_time_in_seconds,
|
270
|
+
]
|
271
|
+
for entry in audit_entries:
|
272
|
+
assert entry is not None
|
273
|
+
return True
|
274
|
+
|
275
|
+
|
276
|
+
def assert_compaction_audit_no_hash_bucket(
|
277
|
+
compactor_version: CompactorVersion, compaction_audit: CompactionSessionAuditInfo
|
278
|
+
):
|
279
|
+
if compactor_version == CompactorVersion.V2:
|
280
|
+
audit_entries = [
|
281
|
+
compaction_audit.deltacat_version,
|
282
|
+
compaction_audit.ray_version,
|
283
|
+
compaction_audit.audit_url,
|
284
|
+
compaction_audit.hash_bucket_count,
|
285
|
+
compaction_audit.compactor_version,
|
286
|
+
compaction_audit.input_size_bytes,
|
287
|
+
compaction_audit.input_file_count,
|
288
|
+
compaction_audit.estimated_in_memory_size_bytes_during_discovery,
|
289
|
+
compaction_audit.uniform_deltas_created,
|
290
|
+
compaction_audit.delta_discovery_time_in_seconds,
|
291
|
+
compaction_audit.total_cluster_object_store_memory_bytes,
|
292
|
+
compaction_audit.total_cluster_memory_bytes,
|
293
|
+
compaction_audit.total_object_store_memory_used_bytes,
|
294
|
+
compaction_audit.input_records,
|
295
|
+
compaction_audit.merge_time_in_seconds,
|
296
|
+
compaction_audit.merge_invoke_time_in_seconds,
|
297
|
+
compaction_audit.merge_result_size,
|
298
|
+
compaction_audit.merge_post_object_store_memory_used_bytes,
|
299
|
+
compaction_audit.merge_result_wait_time_in_seconds,
|
300
|
+
compaction_audit.peak_memory_used_bytes_per_merge_task,
|
301
|
+
compaction_audit.records_deduped,
|
302
|
+
compaction_audit.records_deleted,
|
303
|
+
compaction_audit.compaction_time_in_seconds,
|
304
|
+
compaction_audit.peak_memory_used_bytes_by_compaction_session_process,
|
305
|
+
compaction_audit.untouched_file_count,
|
306
|
+
compaction_audit.untouched_file_ratio,
|
307
|
+
compaction_audit.untouched_record_count,
|
308
|
+
compaction_audit.untouched_size_bytes,
|
309
|
+
compaction_audit.output_file_count,
|
310
|
+
compaction_audit.output_size_bytes,
|
311
|
+
compaction_audit.output_size_pyarrow_bytes,
|
312
|
+
compaction_audit.peak_memory_used_bytes_per_task,
|
313
|
+
compaction_audit.pyarrow_version,
|
314
|
+
compaction_audit.telemetry_time_in_seconds,
|
315
|
+
]
|
316
|
+
for entry in audit_entries:
|
317
|
+
assert entry is not None
|
318
|
+
return True
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: deltacat
|
3
|
-
Version: 1.1.
|
3
|
+
Version: 1.1.14
|
4
4
|
Summary: A scalable, fast, ACID-compliant Data Catalog powered by Ray.
|
5
5
|
Home-page: https://github.com/ray-project/deltacat
|
6
6
|
Author: Ray Team
|
@@ -15,20 +15,20 @@ Classifier: Operating System :: OS Independent
|
|
15
15
|
Requires-Python: >=3.9
|
16
16
|
Description-Content-Type: text/markdown
|
17
17
|
License-File: LICENSE
|
18
|
-
Requires-Dist: aws-embedded-metrics
|
19
|
-
Requires-Dist: boto3
|
20
|
-
Requires-Dist: numpy
|
21
|
-
Requires-Dist: pandas
|
22
|
-
Requires-Dist: pyarrow
|
23
|
-
Requires-Dist: pydantic
|
24
|
-
Requires-Dist: ray
|
25
|
-
Requires-Dist: s3fs
|
26
|
-
Requires-Dist: tenacity
|
27
|
-
Requires-Dist: typing-extensions
|
28
|
-
Requires-Dist: pymemcache
|
29
|
-
Requires-Dist: redis
|
30
|
-
Requires-Dist: getdaft
|
31
|
-
Requires-Dist: schedule
|
18
|
+
Requires-Dist: aws-embedded-metrics==3.2.0
|
19
|
+
Requires-Dist: boto3~=1.34
|
20
|
+
Requires-Dist: numpy==1.21.5
|
21
|
+
Requires-Dist: pandas==1.3.5
|
22
|
+
Requires-Dist: pyarrow==12.0.1
|
23
|
+
Requires-Dist: pydantic==1.10.4
|
24
|
+
Requires-Dist: ray>=2.20.0
|
25
|
+
Requires-Dist: s3fs==2024.5.0
|
26
|
+
Requires-Dist: tenacity==8.1.0
|
27
|
+
Requires-Dist: typing-extensions==4.4.0
|
28
|
+
Requires-Dist: pymemcache==4.0.0
|
29
|
+
Requires-Dist: redis==4.6.0
|
30
|
+
Requires-Dist: getdaft==0.2.31
|
31
|
+
Requires-Dist: schedule==1.2.0
|
32
32
|
|
33
33
|
# DeltaCAT
|
34
34
|
|
@@ -1,9 +1,9 @@
|
|
1
|
-
deltacat/__init__.py,sha256=
|
1
|
+
deltacat/__init__.py,sha256=dvd9BOMviyQgIHFPVSN_kQV6dAuyud4WZ6kUJyuO9go,1778
|
2
2
|
deltacat/constants.py,sha256=_6oRI-3yp5c8J1qKGQZrt89I9-ttT_gSSvVsJ0h8Duc,1939
|
3
3
|
deltacat/exceptions.py,sha256=yWM4RXK7uRrQc1VgJv6Lv2UiNZWAx2wolLq7cBwjlkg,12770
|
4
4
|
deltacat/logs.py,sha256=6g16VkEFidbaMjgenAjggE1r2l664drMVhreRs8B1IQ,8438
|
5
5
|
deltacat/aws/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
6
|
-
deltacat/aws/clients.py,sha256=
|
6
|
+
deltacat/aws/clients.py,sha256=4eQvpkV1PzFfxog7EriuglOGGwNFHR5hbGYpjsNNPxk,6949
|
7
7
|
deltacat/aws/constants.py,sha256=1HnDXrSokW-G3YA3qKEiv7fZVntDs1uSk6a7On-VG5k,1223
|
8
8
|
deltacat/aws/s3u.py,sha256=IdT0XqDXVOkPdo5Em5u3qAkV1UXFpXaE1rTkUDKv4f4,28578
|
9
9
|
deltacat/aws/redshift/__init__.py,sha256=7SvjG-dqox8zZUhFicTsUvpG5vXYDl_QQ3ohlHOgTKc,342
|
@@ -24,7 +24,7 @@ deltacat/compute/compactor/__init__.py,sha256=ivpOPve1yKi3Vz3tVgp-eeFMNEeUSf-dlR
|
|
24
24
|
deltacat/compute/compactor/compaction_session.py,sha256=sGlSpfZaC_RYG2n8NGpT9z2X8V521nlLJktYtzafpmg,27715
|
25
25
|
deltacat/compute/compactor/repartition_session.py,sha256=AAPwNZtPpC_Mtoja855_alBdXDA6efp7zcvkE-MANaQ,7254
|
26
26
|
deltacat/compute/compactor/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
27
|
-
deltacat/compute/compactor/model/compact_partition_params.py,sha256=
|
27
|
+
deltacat/compute/compactor/model/compact_partition_params.py,sha256=RuyYQVuoxKlt4vYTbVpCgoM6K8S_-TFhVuOnPVkxLfE,15850
|
28
28
|
deltacat/compute/compactor/model/compaction_session_audit_info.py,sha256=Aoae5KNmbdYt48utFQR_zrjHTkC9JNd4jPhQmyJji-A,30547
|
29
29
|
deltacat/compute/compactor/model/compactor_version.py,sha256=RwRvManiCxZmzjAWzm1OPDxjB1BEHu1d0fBJyGhXKxA,87
|
30
30
|
deltacat/compute/compactor/model/dedupe_result.py,sha256=1OCV944qJdLQ_-8scisVKl45ej1eRv9OV539QYZtQ-U,292
|
@@ -50,7 +50,7 @@ deltacat/compute/compactor/utils/round_completion_file.py,sha256=_rl8lBSO9KFW07Z
|
|
50
50
|
deltacat/compute/compactor/utils/sort_key.py,sha256=oK6otg-CSsma6zlGPaKg-KNEvcZRG2NqBlCw1X3_FBc,2397
|
51
51
|
deltacat/compute/compactor/utils/system_columns.py,sha256=CNIgAGos0xAGEpdaQIH7KfbSRrGZgjRbItXMararqXQ,9399
|
52
52
|
deltacat/compute/compactor_v2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
53
|
-
deltacat/compute/compactor_v2/compaction_session.py,sha256=
|
53
|
+
deltacat/compute/compactor_v2/compaction_session.py,sha256=1V7EgtSF3gmqoaN6iRQ1Yw66Epvmlh2Hj6-y_rE83zI,7755
|
54
54
|
deltacat/compute/compactor_v2/constants.py,sha256=RoVJb86km-0ghtEFB0z24H7yuCJCbQ2t7_-LuXFNYak,2304
|
55
55
|
deltacat/compute/compactor_v2/deletes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
56
56
|
deltacat/compute/compactor_v2/deletes/delete_file_envelope.py,sha256=AeuH9JRMwp6mvQf6P2cqL92hUEtResQq6qUTS0kIKac,3111
|
@@ -65,6 +65,8 @@ deltacat/compute/compactor_v2/model/hash_bucket_result.py,sha256=EsY9BPPywhmxlcL
|
|
65
65
|
deltacat/compute/compactor_v2/model/merge_file_group.py,sha256=1o86t9lc3K6ZvtViVO1SVljCj6f0B3MfB3hqtGm2S0s,7410
|
66
66
|
deltacat/compute/compactor_v2/model/merge_input.py,sha256=-SxTE0e67z2V7MiMEVz5aMu4E0k8h3-vqohvUUOC0do,5659
|
67
67
|
deltacat/compute/compactor_v2/model/merge_result.py,sha256=_IZTCStpb4UKiRCJYA3g6EhAqjrw0t9vmoDAN8kIK-Y,436
|
68
|
+
deltacat/compute/compactor_v2/private/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
69
|
+
deltacat/compute/compactor_v2/private/compaction_utils.py,sha256=3ukQx50xH810XJu1KzKdxY95lGuZGerHhHTJ89ns-jg,27622
|
68
70
|
deltacat/compute/compactor_v2/steps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
69
71
|
deltacat/compute/compactor_v2/steps/hash_bucket.py,sha256=1R5xLUkl7GqL1nY-apAgY1czKDEHjIVYSRi9qLOMass,6726
|
70
72
|
deltacat/compute/compactor_v2/steps/merge.py,sha256=ukCn312igxq7jNiCn7a2Vzk309LKdYZ902HTcEZhjM4,21774
|
@@ -75,7 +77,7 @@ deltacat/compute/compactor_v2/utils/delta.py,sha256=8hjkDeIIkSX-gAQ2utQSp2sZcO2t
|
|
75
77
|
deltacat/compute/compactor_v2/utils/io.py,sha256=autXlE3uHICdCCuJoS7mfdeJbRRiz2_xlz-3izlccB4,5264
|
76
78
|
deltacat/compute/compactor_v2/utils/merge.py,sha256=7UHxm71iJ1dgRoz8v73CqoeylNzO36t90OJsVVBDFxk,5312
|
77
79
|
deltacat/compute/compactor_v2/utils/primary_key_index.py,sha256=ghyIifjXtqXgi8lN3lfnVQ2vi8uk_ny0FE7hsQlLjRQ,11538
|
78
|
-
deltacat/compute/compactor_v2/utils/task_options.py,sha256=
|
80
|
+
deltacat/compute/compactor_v2/utils/task_options.py,sha256=VXvoVVUq5re8NiOoyrfz34qSRiOTB0IkxHJlMqKsBmk,14066
|
79
81
|
deltacat/compute/merge_on_read/__init__.py,sha256=ckbgngmqPjYBYz_NySsR1vNTOb_hNpeL1sYkZKvBI9M,214
|
80
82
|
deltacat/compute/merge_on_read/daft.py,sha256=1oC38u5ig_aTrq7EzyWBo8Ui54rb6yERYMk-vEFbpxM,1400
|
81
83
|
deltacat/compute/merge_on_read/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -143,14 +145,14 @@ deltacat/tests/aws/test_s3u.py,sha256=FsYCH8K8DsDRPOtTp-w1Nu3ATqt4p1mqDo6aVJV-Sb
|
|
143
145
|
deltacat/tests/catalog/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
144
146
|
deltacat/tests/catalog/test_default_catalog_impl.py,sha256=2l5uwmtLlUJ9yH1LDggtj81fa-pHqbE0-VBt6G4Hyc0,3180
|
145
147
|
deltacat/tests/compute/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
146
|
-
deltacat/tests/compute/compact_partition_rebase_test_cases.py,sha256=
|
147
|
-
deltacat/tests/compute/compact_partition_rebase_then_incremental_test_cases.py,sha256=
|
148
|
-
deltacat/tests/compute/compact_partition_test_cases.py,sha256=
|
149
|
-
deltacat/tests/compute/test_compact_partition_incremental.py,sha256=
|
148
|
+
deltacat/tests/compute/compact_partition_rebase_test_cases.py,sha256=NfcB1aTq6HeYMFrtooIIoifzLp5U0xFTN6F7Lpk8cYQ,3143
|
149
|
+
deltacat/tests/compute/compact_partition_rebase_then_incremental_test_cases.py,sha256=Kl5A7hoJ0pVOE-rZna_4XcuIjhuzQbJudvnfNYKHgGo,75436
|
150
|
+
deltacat/tests/compute/compact_partition_test_cases.py,sha256=R9eiKvxCLqcoHjAx3iOogdnXZEO9TvLbRf0wA7bcJN4,26170
|
151
|
+
deltacat/tests/compute/test_compact_partition_incremental.py,sha256=Z0hyQGhMZjCaOn1Vk4qUbgDiS7HDhtdNeFQyG1PJhqA,14559
|
150
152
|
deltacat/tests/compute/test_compact_partition_params.py,sha256=Dm5eLyHo8oGMeO3XBbpj1rZqHtPZ1hAB7z2qvzc4Lxk,8497
|
151
|
-
deltacat/tests/compute/test_compact_partition_rebase.py,sha256=
|
152
|
-
deltacat/tests/compute/test_compact_partition_rebase_then_incremental.py,sha256=
|
153
|
-
deltacat/tests/compute/test_util_common.py,sha256=
|
153
|
+
deltacat/tests/compute/test_compact_partition_rebase.py,sha256=hKMSQ-BQG6w0O_4TlzESY6pA5Ft5c5WSHLIFvj5hePI,11434
|
154
|
+
deltacat/tests/compute/test_compact_partition_rebase_then_incremental.py,sha256=CHHfNFEJW8S1We7NE1Gg6EaoKEWnaOMRxWrLyirrahc,14643
|
155
|
+
deltacat/tests/compute/test_util_common.py,sha256=oTkTuo6wscVN8hmoQASIKP_DJN-M0um_ySCOcXv9AJA,11699
|
154
156
|
deltacat/tests/compute/test_util_constant.py,sha256=4o-W3E7r7jhFl1A3OFLLrdKnwcF46zx4lEIDY8ONJ3c,929
|
155
157
|
deltacat/tests/compute/test_util_create_table_deltas_repo.py,sha256=oY7ZMrvooDVOkhoAJnfdLGO0ejQAwgkqKrt7UmgiObU,9037
|
156
158
|
deltacat/tests/compute/compactor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -216,8 +218,8 @@ deltacat/utils/ray_utils/concurrency.py,sha256=JDVwMiQWrmuSlyCWAoiq9ctoJ0XADEfDD
|
|
216
218
|
deltacat/utils/ray_utils/dataset.py,sha256=waHdtH0c835a-2t51HYRHnulfC0_zBxx8mFSAPvPSPM,3274
|
217
219
|
deltacat/utils/ray_utils/performance.py,sha256=d7JFM7vTXHzkGx9qNQcZzUWajnqINvYRwaM088_FpsE,464
|
218
220
|
deltacat/utils/ray_utils/runtime.py,sha256=rB0A-tU9WZHz0J11LzJdANYtL397YyuemcA1l-K9dAw,5029
|
219
|
-
deltacat-1.1.
|
220
|
-
deltacat-1.1.
|
221
|
-
deltacat-1.1.
|
222
|
-
deltacat-1.1.
|
223
|
-
deltacat-1.1.
|
221
|
+
deltacat-1.1.14.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
222
|
+
deltacat-1.1.14.dist-info/METADATA,sha256=orKTHhgUb74RXGlgcKhu-M36EmYd3-41AH7V1IP2jEI,1734
|
223
|
+
deltacat-1.1.14.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
|
224
|
+
deltacat-1.1.14.dist-info/top_level.txt,sha256=RWdIcid4Bv2i2ozLVh-70kJpyB61xEKXod9XXGpiono,9
|
225
|
+
deltacat-1.1.14.dist-info/RECORD,,
|
File without changes
|
File without changes
|