certora-cli-alpha-master 20251012.10.16.14285__py3-none-any.whl → 20251012.20.20.862738__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.
- certora_cli/CertoraProver/certoraBuildCacheManager.py +6 -3
- certora_cli/Shared/certoraUtils.py +12 -0
- {certora_cli_alpha_master-20251012.10.16.14285.dist-info → certora_cli_alpha_master-20251012.20.20.862738.dist-info}/METADATA +2 -2
- {certora_cli_alpha_master-20251012.10.16.14285.dist-info → certora_cli_alpha_master-20251012.20.20.862738.dist-info}/RECORD +11 -11
- certora_jars/ASTExtraction.jar +0 -0
- certora_jars/CERTORA-CLI-VERSION-METADATA.json +1 -1
- certora_jars/Typechecker.jar +0 -0
- {certora_cli_alpha_master-20251012.10.16.14285.dist-info → certora_cli_alpha_master-20251012.20.20.862738.dist-info}/LICENSE +0 -0
- {certora_cli_alpha_master-20251012.10.16.14285.dist-info → certora_cli_alpha_master-20251012.20.20.862738.dist-info}/WHEEL +0 -0
- {certora_cli_alpha_master-20251012.10.16.14285.dist-info → certora_cli_alpha_master-20251012.20.20.862738.dist-info}/entry_points.txt +0 -0
- {certora_cli_alpha_master-20251012.10.16.14285.dist-info → certora_cli_alpha_master-20251012.20.20.862738.dist-info}/top_level.txt +0 -0
@@ -179,9 +179,12 @@ class CertoraBuildCacheManager:
|
|
179
179
|
trg = trg_path_with_additional_included_files / post_autofinder_dir.name
|
180
180
|
if post_autofinder_dir != trg:
|
181
181
|
if post_autofinder_dir.is_dir():
|
182
|
-
if
|
183
|
-
|
184
|
-
|
182
|
+
# if we match on the cache, and we run a few certoraRun-s in parallel,
|
183
|
+
# it could be this folder already exists. But the exact contents do not matter and are likely to
|
184
|
+
# agree with the exception of spec files. So let's merge the folders so that the
|
185
|
+
# sources are in any case runnable
|
186
|
+
if not trg.exists():
|
187
|
+
Util.safe_merge_folder(post_autofinder_dir, trg, shutil.ignore_patterns())
|
185
188
|
else:
|
186
189
|
# highly unlikely .post_autofinder.[digit] will be a file and not a directory,
|
187
190
|
# but would rather not crash and future-proof instead
|
@@ -514,6 +514,18 @@ def safe_copy_folder(source: Path, dest: Path, ignore_patterns: Callable[[str, L
|
|
514
514
|
shutil.rmtree(copy_temp, ignore_errors=True)
|
515
515
|
|
516
516
|
|
517
|
+
def safe_merge_folder(source: Path, dest: Path, ignore_patterns: Callable[[str, List[str]], Iterable[str]]) -> None:
|
518
|
+
"""
|
519
|
+
Safely merge source to dest. dest may exist. Will overwrite existing files
|
520
|
+
On certain OS/kernels/FS, copying a folder f into a subdirectory of f will
|
521
|
+
send copy tree into an infinite loop. This sidesteps the problem by first copying through a temporary folder.
|
522
|
+
"""
|
523
|
+
copy_temp = tempfile.mkdtemp()
|
524
|
+
shutil.copytree(source, copy_temp, ignore=ignore_patterns, dirs_exist_ok=True)
|
525
|
+
shutil.copytree(copy_temp, dest, dirs_exist_ok=True)
|
526
|
+
shutil.rmtree(copy_temp, ignore_errors=True)
|
527
|
+
|
528
|
+
|
517
529
|
def as_posix(path: str) -> str:
|
518
530
|
"""
|
519
531
|
Converts path from windows to unix
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: certora-cli-alpha-master
|
3
|
-
Version: 20251012.
|
3
|
+
Version: 20251012.20.20.862738
|
4
4
|
Summary: Runner for the Certora Prover
|
5
5
|
Home-page: https://pypi.org/project/certora-cli-alpha-master
|
6
6
|
Author: Certora
|
@@ -39,4 +39,4 @@ Dynamic: requires-dist
|
|
39
39
|
Dynamic: requires-python
|
40
40
|
Dynamic: summary
|
41
41
|
|
42
|
-
Commit
|
42
|
+
Commit 67b032d. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.
|
@@ -13,7 +13,7 @@ certora_cli/rustMutator.py,sha256=6AvOGU8Ijz89zW_ZJCWlfXkeobJsk7EsqZhK7Eqwn-Y,14
|
|
13
13
|
certora_cli/CertoraProver/__init__.py,sha256=QHNr-PJQAoyuPgTkO7gg23GRchiWSXglWNG7yLSQZvs,849
|
14
14
|
certora_cli/CertoraProver/certoraApp.py,sha256=RKJ2Krb_CzbRUvczbdE6FhUDrFcvrR8j0JS8MNWXX7s,1469
|
15
15
|
certora_cli/CertoraProver/certoraBuild.py,sha256=4fDUL8cOEsJcy3gysZymc35QKl7Ht28DeZaGgDvIRvc,225385
|
16
|
-
certora_cli/CertoraProver/certoraBuildCacheManager.py,sha256=
|
16
|
+
certora_cli/CertoraProver/certoraBuildCacheManager.py,sha256=DnVd7w92xjmg0DIrMgoJnCvaU0yCz7ySy0M4RiHEXEM,13648
|
17
17
|
certora_cli/CertoraProver/certoraBuildDataClasses.py,sha256=hO0w3YK9V9gZsTbh4gxxlnEAaOiubUwfzNEw6uL1HaE,14841
|
18
18
|
certora_cli/CertoraProver/certoraBuildRust.py,sha256=ZPbNp4ttRmzcKhFsgHSiHDRExNPaLOzgxTRqu23o1D0,6061
|
19
19
|
certora_cli/CertoraProver/certoraBuildSui.py,sha256=zMXD2XnC4oqRDzPcBvSZmVquL3UG5paBZkfUT3JPbYY,4180
|
@@ -64,16 +64,16 @@ certora_cli/Shared/ExpectedComparator.py,sha256=eyRR-jni4WJoa6j2TK2lnZ89Tyb8U99w
|
|
64
64
|
certora_cli/Shared/__init__.py,sha256=s0dhvolFtsS4sRNzPVhC_rlw8mm194rCZ0WhOxInY40,1025
|
65
65
|
certora_cli/Shared/certoraAttrUtil.py,sha256=Nw8ban5Axp6c6dT-KJfCD9i9tKnGk1DbvRDDNH3--DU,8574
|
66
66
|
certora_cli/Shared/certoraLogging.py,sha256=cV2UQMhQ5j8crGXgeq9CEamI-Lk4HgdiA3HCrP-kSR4,14013
|
67
|
-
certora_cli/Shared/certoraUtils.py,sha256=
|
67
|
+
certora_cli/Shared/certoraUtils.py,sha256=GeA4o74TxKeW206je_H8B6wzDFuPIz0j6EyQo5sJeyU,59325
|
68
68
|
certora_cli/Shared/certoraValidateFuncs.py,sha256=mYguICGfUwVZ9qPBFajss1xqHPDR-KRtskgERLum4AM,43225
|
69
69
|
certora_cli/Shared/proverCommon.py,sha256=uZkl9PDLPj81kKRnBnlPUmvhMZovNP25_74No_7jaQ4,11215
|
70
|
-
certora_jars/ASTExtraction.jar,sha256=
|
71
|
-
certora_jars/CERTORA-CLI-VERSION-METADATA.json,sha256=
|
72
|
-
certora_jars/Typechecker.jar,sha256=
|
70
|
+
certora_jars/ASTExtraction.jar,sha256=13O4etpraDNmYn1-EP1mndH1rA_Re9Lja3rnoqsENCw,20968739
|
71
|
+
certora_jars/CERTORA-CLI-VERSION-METADATA.json,sha256=98ug5HZLVWkSyS6AHGqlIU9PyQqfzhCeQpzFHiANNFs,170
|
72
|
+
certora_jars/Typechecker.jar,sha256=z_ncJOQXPOrO2u2Ge_JmQqMuXTb_lC3QetTYcZIe4-0,20930898
|
73
73
|
certora_jars/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
74
|
-
certora_cli_alpha_master-20251012.
|
75
|
-
certora_cli_alpha_master-20251012.
|
76
|
-
certora_cli_alpha_master-20251012.
|
77
|
-
certora_cli_alpha_master-20251012.
|
78
|
-
certora_cli_alpha_master-20251012.
|
79
|
-
certora_cli_alpha_master-20251012.
|
74
|
+
certora_cli_alpha_master-20251012.20.20.862738.dist-info/LICENSE,sha256=UGKSKIJSetF8m906JLKqNLkUS2CL60XfQdNvxBvpQXo,620
|
75
|
+
certora_cli_alpha_master-20251012.20.20.862738.dist-info/METADATA,sha256=lzTwxe2GyAlETa58QbgMSu3KJpjS2XXnTSexuUwFtnA,1304
|
76
|
+
certora_cli_alpha_master-20251012.20.20.862738.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
|
77
|
+
certora_cli_alpha_master-20251012.20.20.862738.dist-info/entry_points.txt,sha256=ClZiFkCYDdK25_ufxZvnE2Rx_kNk1_4vj7KpgYUKxGM,509
|
78
|
+
certora_cli_alpha_master-20251012.20.20.862738.dist-info/top_level.txt,sha256=8C77w3JLanY0-NW45vpJsjRssyCqVP-qmPiN9FjWiX4,38
|
79
|
+
certora_cli_alpha_master-20251012.20.20.862738.dist-info/RECORD,,
|
certora_jars/ASTExtraction.jar
CHANGED
Binary file
|
@@ -1 +1 @@
|
|
1
|
-
{"name": "certora-cli-alpha-master", "tag": "", "branch": "master", "commit": "
|
1
|
+
{"name": "certora-cli-alpha-master", "tag": "", "branch": "master", "commit": "67b032d", "timestamp": "20251012.20.20.862738", "version": "20251012.20.20.862738+67b032d"}
|
certora_jars/Typechecker.jar
CHANGED
Binary file
|
File without changes
|
File without changes
|
File without changes
|