certora-cli-alpha-master 20241224.22.35.130611__py3-none-macosx_10_9_universal2.whl → 20241225.17.24.261853__py3-none-macosx_10_9_universal2.whl
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of certora-cli-alpha-master might be problematic. Click here for more details.
- certora_cli/EVMVerifier/certoraConfigIO.py +10 -8
- certora_cli/EVMVerifier/certoraContextAttributes.py +2 -1
- certora_cli/EVMVerifier/certoraParseBuildScript.py +16 -2
- {certora_cli_alpha_master-20241224.22.35.130611.dist-info → certora_cli_alpha_master-20241225.17.24.261853.dist-info}/METADATA +3 -2
- {certora_cli_alpha_master-20241224.22.35.130611.dist-info → certora_cli_alpha_master-20241225.17.24.261853.dist-info}/RECORD +11 -11
- certora_jars/CERTORA-CLI-VERSION-METADATA.json +1 -1
- certora_jars/Typechecker.jar +0 -0
- {certora_cli_alpha_master-20241224.22.35.130611.dist-info → certora_cli_alpha_master-20241225.17.24.261853.dist-info}/LICENSE +0 -0
- {certora_cli_alpha_master-20241224.22.35.130611.dist-info → certora_cli_alpha_master-20241225.17.24.261853.dist-info}/WHEEL +0 -0
- {certora_cli_alpha_master-20241224.22.35.130611.dist-info → certora_cli_alpha_master-20241225.17.24.261853.dist-info}/entry_points.txt +0 -0
- {certora_cli_alpha_master-20241224.22.35.130611.dist-info → certora_cli_alpha_master-20241225.17.24.261853.dist-info}/top_level.txt +0 -0
@@ -61,7 +61,7 @@ def read_from_conf_file(context: CertoraContext) -> None:
|
|
61
61
|
try:
|
62
62
|
check_conf_content(configuration, context)
|
63
63
|
except Util.CertoraUserInputError as e:
|
64
|
-
raise Util.CertoraUserInputError(f"Error when reading {conf_file_path}", e) from None
|
64
|
+
raise Util.CertoraUserInputError(f"Error when reading {conf_file_path}: {str(e)}", e) from None
|
65
65
|
context.conf_file = str(conf_file_path)
|
66
66
|
|
67
67
|
|
@@ -86,10 +86,12 @@ def check_conf_content(conf: Dict[str, Any], context: CertoraContext) -> None:
|
|
86
86
|
else:
|
87
87
|
raise Util.CertoraUserInputError(f"{option} appears in the conf file but is not a known attribute. ")
|
88
88
|
|
89
|
-
if 'files' not in conf:
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
89
|
+
if Attrs.is_evm_app() and 'files' not in conf:
|
90
|
+
raise Util.CertoraUserInputError("Mandatory 'files' attribute is missing from the configuration")
|
91
|
+
|
92
|
+
if Attrs.is_rust_app():
|
93
|
+
has_build_script = getattr(context, 'build_script', False)
|
94
|
+
if not has_build_script and 'files' not in conf:
|
95
|
+
raise Util.CertoraUserInputError("Mandatory 'build_script' or 'files' attribute is missing from the configuration")
|
96
|
+
|
97
|
+
context.files = conf.get('files')
|
@@ -1389,7 +1389,8 @@ class BackendAttributes(AttrUtil.Attributes):
|
|
1389
1389
|
class RustAttributes(AttrUtil.Attributes):
|
1390
1390
|
|
1391
1391
|
BUILD_SCRIPT = AttrUtil.AttributeDefinition(
|
1392
|
-
|
1392
|
+
attr_validation_func=Vf.validate_exec_file,
|
1393
|
+
help_msg="script to build a rust project",
|
1393
1394
|
default_desc="Using default building command",
|
1394
1395
|
argparse_args={
|
1395
1396
|
'action': AttrUtil.UniqueStore
|
@@ -21,13 +21,27 @@ def run_script_and_parse_json(context: CertoraContext) -> None:
|
|
21
21
|
|
22
22
|
json_obj = json.loads(result.stdout)
|
23
23
|
|
24
|
-
if not json_obj
|
25
|
-
raise Util.CertoraUserInputError(f"
|
24
|
+
if not json_obj:
|
25
|
+
raise Util.CertoraUserInputError(f"No JSON output from build script {context.build_script}")
|
26
|
+
|
27
|
+
if missing_keys := [key for key in ["success", "project_directory", "sources", "executables"] if key not in json_obj]:
|
28
|
+
raise Util.CertoraUserInputError(f"Missing required keys in build script response: {', '.join(missing_keys)}")
|
29
|
+
|
30
|
+
if not json_obj.get("success"):
|
31
|
+
raise Util.CertoraUserInputError(
|
32
|
+
f"Compilation failed using build script: {context.build_script}\n"
|
33
|
+
f"Success value in JSON response is False."
|
34
|
+
)
|
26
35
|
|
27
36
|
context.rust_project_directory = json_obj.get("project_directory")
|
28
37
|
context.rust_sources = json_obj.get("sources")
|
29
38
|
context.rust_executables = json_obj.get("executables")
|
30
39
|
|
40
|
+
if context.test == str(Util.TestValue.AFTER_BUILD_RUST):
|
41
|
+
raise Util.TestResultsReady(None)
|
42
|
+
|
43
|
+
except Util.TestResultsReady as e:
|
44
|
+
raise e
|
31
45
|
except FileNotFoundError as e:
|
32
46
|
raise Util.CertoraUserInputError(f"File not found: {e}")
|
33
47
|
except json.JSONDecodeError as e:
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: certora-cli-alpha-master
|
3
|
-
Version:
|
3
|
+
Version: 20241225.17.24.261853
|
4
4
|
Summary: Runner for the Certora Prover
|
5
5
|
Home-page: https://pypi.org/project/certora-cli-alpha-master
|
6
6
|
Author: Certora
|
@@ -22,5 +22,6 @@ Requires-Dist: tqdm
|
|
22
22
|
Requires-Dist: StrEnum
|
23
23
|
Requires-Dist: tomli
|
24
24
|
Requires-Dist: universalmutator
|
25
|
+
Requires-Dist: jinja2
|
25
26
|
|
26
|
-
Commit
|
27
|
+
Commit 9f06838. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.
|
@@ -16,9 +16,9 @@ certora_cli/EVMVerifier/certoraBuildRust.py,sha256=uOKog69nYxmevt6iPnAZa38d5u5bK
|
|
16
16
|
certora_cli/EVMVerifier/certoraCloudIO.py,sha256=RyNqdVkttNa7oy4NT_WdPdn49jDoA77-bo-cCFkKsi0,53418
|
17
17
|
certora_cli/EVMVerifier/certoraCollectRunMetadata.py,sha256=selEf-p7UW8_70-AbPfa5659ki6WcGrBwfPkUQWKhFU,10322
|
18
18
|
certora_cli/EVMVerifier/certoraCompilerParameters.py,sha256=PDKW3K_lNeRNPHisW0e5hYtfu6unDRjJUop-yItGHO0,762
|
19
|
-
certora_cli/EVMVerifier/certoraConfigIO.py,sha256=
|
19
|
+
certora_cli/EVMVerifier/certoraConfigIO.py,sha256=zlXcSAXPXQEhCdOqbogNLgIRSURFQgArYjFKd3VMkfg,4693
|
20
20
|
certora_cli/EVMVerifier/certoraContext.py,sha256=52YMEYYm67F_AsDZoIFjgcR34gQQDTnlmhiH9VrLCYE,21649
|
21
|
-
certora_cli/EVMVerifier/certoraContextAttributes.py,sha256=
|
21
|
+
certora_cli/EVMVerifier/certoraContextAttributes.py,sha256=BJBY1qZSMIyD2vyCLx-_cAl0zl4EmogQJYeyLA2KXy0,55684
|
22
22
|
certora_cli/EVMVerifier/certoraContextClass.py,sha256=qdHYmrzI4zeQaAaMnonw4C-h1PFrPEhI84trrgvxFj0,210
|
23
23
|
certora_cli/EVMVerifier/certoraContextValidator.py,sha256=_vS3CDY8cJRqxtujwiz7rwRFVgDVxNb40YgUU4t4BPM,37585
|
24
24
|
certora_cli/EVMVerifier/certoraContractFuncs.py,sha256=W3lAvKotGKK7ZGJLg4yYh0FzTwwSQJbZMpizyGaYXZo,6229
|
@@ -26,7 +26,7 @@ certora_cli/EVMVerifier/certoraExtensionInfo.py,sha256=bHjEBKg3qQ1lS419KSU6v6HKb
|
|
26
26
|
certora_cli/EVMVerifier/certoraJobList.py,sha256=JlPOANEzNHP6cDrM5UKfO314pmWYokuhAPTkH3ezNb4,10768
|
27
27
|
certora_cli/EVMVerifier/certoraMiniSpecParser.py,sha256=Thtcr1BLmCz9xOiOkaP04mSnrDaqIUOUSCM81TrqD_s,8970
|
28
28
|
certora_cli/EVMVerifier/certoraNodeFilters.py,sha256=0e8iPdj4cWjwReaAhfJhpdnSUYc8gephmKQzOOP5X_g,2140
|
29
|
-
certora_cli/EVMVerifier/certoraParseBuildScript.py,sha256=
|
29
|
+
certora_cli/EVMVerifier/certoraParseBuildScript.py,sha256=920bFG0fTLvpl63Gt_ylmwNazVHBH_DvKUN6bbxnzgo,2054
|
30
30
|
certora_cli/EVMVerifier/certoraSourceFinders.py,sha256=fZLYGjNgntIySnG76DwsjRZ-UHiy0zEkM6xNP7cYpDE,18342
|
31
31
|
certora_cli/EVMVerifier/certoraType.py,sha256=TPrgRwUnY-krN1SxpCHGB0zwN-TR1bxb-NFdnaigA-k,28626
|
32
32
|
certora_cli/EVMVerifier/certoraVerifyGenerator.py,sha256=OT5zrtQMXDoaVdGfQ4_gbAnITin3nlXgXTgw3msqlNQ,9452
|
@@ -57,12 +57,12 @@ certora_cli/Shared/certoraAttrUtil.py,sha256=IbIIvTbtPzmPSSrK7VIWZNitkz1iwvW_e0g
|
|
57
57
|
certora_cli/Shared/certoraLogging.py,sha256=5Lx-XWKl7GnwnWi7KlwTLIfsEvUvCTZ8KeyfNyi_6RU,13323
|
58
58
|
certora_cli/Shared/certoraUtils.py,sha256=WmVX8Hz5wMZ7WI2JhYavAilH1kO3fwKLUBsf4hQ4b-o,53676
|
59
59
|
certora_cli/Shared/certoraValidateFuncs.py,sha256=OOjPAkcfrURZDD4oDjOMBFTvY6wwQSXboXzu-47AUbY,36871
|
60
|
-
certora_jars/CERTORA-CLI-VERSION-METADATA.json,sha256
|
61
|
-
certora_jars/Typechecker.jar,sha256=
|
60
|
+
certora_jars/CERTORA-CLI-VERSION-METADATA.json,sha256=N6Wj1OlOeFh9Asf-9DucS0Q3qQRNSnW2Y3WWaAt87tQ,170
|
61
|
+
certora_jars/Typechecker.jar,sha256=x5W30bIFGl6jnLoSHPfd-qqFYhgGjCX6Vqk6xx2mIl4,16816756
|
62
62
|
certora_jars/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
63
|
-
certora_cli_alpha_master-
|
64
|
-
certora_cli_alpha_master-
|
65
|
-
certora_cli_alpha_master-
|
66
|
-
certora_cli_alpha_master-
|
67
|
-
certora_cli_alpha_master-
|
68
|
-
certora_cli_alpha_master-
|
63
|
+
certora_cli_alpha_master-20241225.17.24.261853.dist-info/LICENSE,sha256=VeEBJLgfzZqyAUfjLoKUztf7KJBBUjtZ1ap99eQubOo,1065
|
64
|
+
certora_cli_alpha_master-20241225.17.24.261853.dist-info/METADATA,sha256=jxHalbewhF6gmX7l2hoTviNRZCKWAsIG3eJklMsULro,860
|
65
|
+
certora_cli_alpha_master-20241225.17.24.261853.dist-info/WHEEL,sha256=N3Zagyg8u7FcZiPCx4UnuNyRRYq7IQpu24eWYyuhGOQ,110
|
66
|
+
certora_cli_alpha_master-20241225.17.24.261853.dist-info/entry_points.txt,sha256=x2dyit80wAtF72k5CQj9F5lnWZEmP9ioseqvrEGWyFc,389
|
67
|
+
certora_cli_alpha_master-20241225.17.24.261853.dist-info/top_level.txt,sha256=8C77w3JLanY0-NW45vpJsjRssyCqVP-qmPiN9FjWiX4,38
|
68
|
+
certora_cli_alpha_master-20241225.17.24.261853.dist-info/RECORD,,
|
@@ -1 +1 @@
|
|
1
|
-
{"name": "certora-cli-alpha-master", "tag": "", "branch": "master", "commit": "
|
1
|
+
{"name": "certora-cli-alpha-master", "tag": "", "branch": "master", "commit": "9f06838", "timestamp": "20241225.17.24.261853", "version": "20241225.17.24.261853+9f06838"}
|
certora_jars/Typechecker.jar
CHANGED
Binary file
|
File without changes
|
File without changes
|
File without changes
|