certora-cli-alpha-master 20251012.10.16.14285__tar.gz → 20251012.20.20.862738__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.
Files changed (87) hide show
  1. {certora_cli_alpha_master-20251012.10.16.14285/certora_cli_alpha_master.egg-info → certora_cli_alpha_master-20251012.20.20.862738}/PKG-INFO +2 -2
  2. certora_cli_alpha_master-20251012.20.20.862738/README.md +1 -0
  3. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraBuildCacheManager.py +6 -3
  4. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Shared/certoraUtils.py +12 -0
  5. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738/certora_cli_alpha_master.egg-info}/PKG-INFO +2 -2
  6. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_jars/ASTExtraction.jar +0 -0
  7. certora_cli_alpha_master-20251012.20.20.862738/certora_jars/CERTORA-CLI-VERSION-METADATA.json +1 -0
  8. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_jars/Typechecker.jar +0 -0
  9. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/setup.py +2 -2
  10. certora_cli_alpha_master-20251012.10.16.14285/README.md +0 -1
  11. certora_cli_alpha_master-20251012.10.16.14285/certora_jars/CERTORA-CLI-VERSION-METADATA.json +0 -1
  12. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/LICENSE +0 -0
  13. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/MANIFEST.in +0 -0
  14. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_bins/__init__.py +0 -0
  15. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/Compiler/CompilerCollector.py +0 -0
  16. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/Compiler/CompilerCollectorFactory.py +0 -0
  17. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/Compiler/CompilerCollectorSol.py +0 -0
  18. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/Compiler/CompilerCollectorSolBased.py +0 -0
  19. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/Compiler/CompilerCollectorVy.py +0 -0
  20. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/Compiler/CompilerCollectorYul.py +0 -0
  21. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/Compiler/__init__.py +0 -0
  22. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/__init__.py +0 -0
  23. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraApp.py +0 -0
  24. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraBuild.py +0 -0
  25. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraBuildDataClasses.py +0 -0
  26. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraBuildRust.py +0 -0
  27. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraBuildSui.py +0 -0
  28. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraCloudIO.py +0 -0
  29. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraCollectConfigurationLayout.py +0 -0
  30. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraCollectRunMetadata.py +0 -0
  31. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraCompilerParameters.py +0 -0
  32. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraConfigIO.py +0 -0
  33. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraContext.py +0 -0
  34. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraContextAttributes.py +0 -0
  35. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraContextClass.py +0 -0
  36. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraContextValidator.py +0 -0
  37. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraContractFuncs.py +0 -0
  38. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraExtensionInfo.py +0 -0
  39. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraJobList.py +0 -0
  40. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraMiniSpecParser.py +0 -0
  41. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraNodeFilters.py +0 -0
  42. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraParseBuildScript.py +0 -0
  43. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraProjectScanner.py +0 -0
  44. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraSourceFinders.py +0 -0
  45. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraType.py +0 -0
  46. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/certoraVerifyGenerator.py +0 -0
  47. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/erc7201.py +0 -0
  48. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/splitRules.py +0 -0
  49. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/CertoraProver/storageExtension.py +0 -0
  50. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/EquivalenceCheck/Eq_default.conf +0 -0
  51. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/EquivalenceCheck/Eq_mc_no_out_template.spec +0 -0
  52. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/EquivalenceCheck/Eq_mc_template.spec +0 -0
  53. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/EquivalenceCheck/Eq_sanity.conf +0 -0
  54. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/EquivalenceCheck/Eq_template.spec +0 -0
  55. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/EquivalenceCheck/__init__.py +0 -0
  56. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/EquivalenceCheck/equivCheck.py +0 -0
  57. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/EquivalenceCheck/sanity.spec +0 -0
  58. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Mutate/__init__.py +0 -0
  59. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Mutate/mutateApp.py +0 -0
  60. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Mutate/mutateAttributes.py +0 -0
  61. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Mutate/mutateConstants.py +0 -0
  62. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Mutate/mutateUtil.py +0 -0
  63. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Mutate/mutateValidate.py +0 -0
  64. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Shared/ExpectedComparator.py +0 -0
  65. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Shared/__init__.py +0 -0
  66. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Shared/certoraAttrUtil.py +0 -0
  67. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Shared/certoraLogging.py +0 -0
  68. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Shared/certoraValidateFuncs.py +0 -0
  69. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/Shared/proverCommon.py +0 -0
  70. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/__init__.py +0 -0
  71. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/certoraCVLFormatter.py +0 -0
  72. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/certoraConcord.py +0 -0
  73. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/certoraEVMProver.py +0 -0
  74. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/certoraEqCheck.py +0 -0
  75. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/certoraMutate.py +0 -0
  76. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/certoraRanger.py +0 -0
  77. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/certoraRun.py +0 -0
  78. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/certoraSolanaProver.py +0 -0
  79. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/certoraSorobanProver.py +0 -0
  80. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli/rustMutator.py +0 -0
  81. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli_alpha_master.egg-info/SOURCES.txt +0 -0
  82. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli_alpha_master.egg-info/dependency_links.txt +0 -0
  83. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli_alpha_master.egg-info/entry_points.txt +0 -0
  84. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli_alpha_master.egg-info/requires.txt +0 -0
  85. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_cli_alpha_master.egg-info/top_level.txt +0 -0
  86. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/certora_jars/__init__.py +0 -0
  87. {certora_cli_alpha_master-20251012.10.16.14285 → certora_cli_alpha_master-20251012.20.20.862738}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: certora-cli-alpha-master
3
- Version: 20251012.10.16.14285
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 bc7cfe4. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.
42
+ Commit 67b032d. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.
@@ -0,0 +1 @@
1
+ Commit 67b032d. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.
@@ -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 trg.exists():
183
- shutil.rmtree(trg)
184
- Util.safe_copy_folder(post_autofinder_dir, trg, shutil.ignore_patterns())
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.10.16.14285
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 bc7cfe4. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.
42
+ Commit 67b032d. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.
@@ -0,0 +1 @@
1
+ {"name": "certora-cli-alpha-master", "tag": "", "branch": "master", "commit": "67b032d", "timestamp": "20251012.20.20.862738", "version": "20251012.20.20.862738+67b032d"}
@@ -3,11 +3,11 @@ import setuptools
3
3
 
4
4
  setuptools.setup(
5
5
  name="certora-cli-alpha-master",
6
- version="20251012.10.16.014285",
6
+ version="20251012.20.20.862738",
7
7
  author="Certora",
8
8
  author_email="support@certora.com",
9
9
  description="Runner for the Certora Prover",
10
- long_description="Commit bc7cfe4. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.",
10
+ long_description="Commit 67b032d. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.",
11
11
  long_description_content_type="text/markdown",
12
12
  url="https://pypi.org/project/certora-cli-alpha-master",
13
13
  packages=setuptools.find_packages(),
@@ -1 +0,0 @@
1
- Commit bc7cfe4. Build and Run scripts for executing the Certora Prover on Solidity smart contracts.
@@ -1 +0,0 @@
1
- {"name": "certora-cli-alpha-master", "tag": "", "branch": "master", "commit": "bc7cfe4", "timestamp": "20251012.10.16.014285", "version": "20251012.10.16.014285+bc7cfe4"}