fm-weck 1.1.1__py3-none-any.whl → 1.1.2__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.
fm_weck/serve.py CHANGED
@@ -16,10 +16,11 @@ from typing import Optional, Tuple
16
16
  from fm_tools import FmData
17
17
  from fm_tools.benchexec_helper import DataModel
18
18
 
19
- from fm_weck.config import Config, parse_fm_data
20
-
19
+ from .config import Config, parse_fm_data
21
20
  from .engine import Engine
22
21
 
22
+ logger = logging.getLogger(__name__)
23
+
23
24
 
24
25
  def check_cache_entry(shelve_space: Path, checksum: str, config: Config) -> bool:
25
26
  checksum_file = config.get_checksum_db()
@@ -34,7 +35,7 @@ def check_cache_entry(shelve_space: Path, checksum: str, config: Config) -> bool
34
35
  # we use utf-8 encoding to ensure consistency
35
36
  return db[shelve_space.name] == checksum.encode("utf-8")
36
37
  except dbm.error:
37
- logging.debug("Checksum file does not exist")
38
+ logger.debug("Checksum file does not exist")
38
39
  return False
39
40
 
40
41
 
@@ -46,23 +47,23 @@ def update_checksum(shelve_space: Path, checksum: str, config: Config):
46
47
  checksum_file = str(checksum_file.resolve())
47
48
 
48
49
  with dbm.open(checksum_file, "c") as db:
49
- logging.debug("Updating checksum for %s", shelve_space.name)
50
- logging.debug("Checksum: %s", checksum)
50
+ logger.debug("Updating checksum for %s", shelve_space.name)
51
+ logger.debug("Checksum: %s", checksum)
51
52
  # dbm only stores bytes, so we need to encode the checksum
52
53
  # we use utf-8 encoding to ensure consistency
53
54
  db[shelve_space.name] = checksum.encode("utf-8")
54
55
 
55
56
 
56
57
  def setup_fm_tool(
57
- fm_tool: Path, version: Optional[str], configuration: Config, skip_download: bool = False
58
+ fm_tool: Path, version: Optional[str], configuration: Config, skip_download: bool = False
58
59
  ) -> Tuple[FmData, Path]:
59
60
  fm_data = parse_fm_data(fm_tool, version)
60
61
 
61
62
  shelve_space = configuration.get_shelve_space_for(fm_data)
62
- logging.debug("Using shelve space %s", shelve_space)
63
+ logger.debug("Using shelve space %s", shelve_space)
63
64
 
64
65
  if shelve_space.exists() and shelve_space.is_dir():
65
- logging.debug("Shelve space already exists, testing checksum")
66
+ logger.debug("Shelve space already exists, testing checksum")
66
67
  checksum = fm_data.archive_location.checksum()
67
68
  skip_download = check_cache_entry(shelve_space, checksum, configuration)
68
69
 
@@ -77,14 +78,14 @@ def setup_fm_tool(
77
78
 
78
79
 
79
80
  def run_guided(
80
- fm_tool: Path,
81
- version: Optional[str],
82
- configuration: Config,
83
- prop: Optional[Path],
84
- program_files: list[Path],
85
- additional_args: list[str],
86
- data_model: Optional[DataModel] = None,
87
- skip_download: bool = False,
81
+ fm_tool: Path,
82
+ version: Optional[str],
83
+ configuration: Config,
84
+ prop: Optional[Path],
85
+ program_files: list[Path],
86
+ additional_args: list[str],
87
+ data_model: Optional[DataModel] = None,
88
+ skip_download: bool = False,
88
89
  ):
89
90
  property_path = None
90
91
  if prop is not None:
@@ -95,7 +96,7 @@ def run_guided(
95
96
  property_path = configuration.get_shelve_path_for_property(source_property_path)
96
97
  shutil.copyfile(source_property_path, property_path)
97
98
  except KeyError:
98
- logging.error("Unknown property %s", prop)
99
+ logger.error("Unknown property %s", prop)
99
100
  return 1
100
101
 
101
102
  configuration.make_script_available()
@@ -116,18 +117,18 @@ def run_guided(
116
117
  )
117
118
  os.chdir(current_dir)
118
119
 
119
- logging.debug("Assembled command from fm-tools:", command)
120
+ logger.debug("Assembled command from fm-tools: %s", command)
120
121
 
121
122
  engine.run("/home/weck_cache/.scripts/run_with_overlay.sh", shelve_space.name, *command)
122
123
 
123
124
 
124
125
  def run_manual(
125
- fm_tool: Path, version: Optional[str], configuration: Config, command: list[str], skip_download: bool = False
126
+ fm_tool: Path, version: Optional[str], configuration: Config, command: list[str], skip_download: bool = False
126
127
  ):
127
128
  fm_data, shelve_space = setup_fm_tool(fm_tool, version, configuration, skip_download)
128
129
  engine = Engine.from_config(fm_data, configuration)
129
130
 
130
131
  executable = fm_data.get_executable_path(shelve_space)
131
- logging.debug("Using executable %s", executable)
132
- logging.debug("Assembled command %s", [executable, *command])
132
+ logger.debug("Using executable %s", executable)
133
+ logger.debug("Assembled command %s", [executable, *command])
133
134
  engine.run(executable, *command)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: fm-weck
3
- Version: 1.1.1
3
+ Version: 1.1.2
4
4
  Author-email: Henrik Wachowitz <henrik.wachowitz@ifi.lmu.de>
5
5
  Maintainer-email: Henrik Wachowitz <henrik.wachowitz@ifi.lmu.de>
6
6
  Classifier: Development Status :: 4 - Beta
@@ -10,9 +10,10 @@ Classifier: Programming Language :: Python :: 3.10
10
10
  Classifier: Programming Language :: Python :: 3.11
11
11
  Classifier: Programming Language :: Python :: 3.12
12
12
  Requires-Python: >=3.10
13
- Requires-Dist: fm-tools>=0.2.7
13
+ Requires-Dist: fm-tools>=0.3.3
14
14
  Requires-Dist: pyyaml>=6.0
15
15
  Requires-Dist: tomli>=2.0; python_version <= '3.10'
16
+ Requires-Dist: yaspin>=3.0
16
17
  Description-Content-Type: text/markdown
17
18
 
18
19
  <!--
@@ -1,13 +1,13 @@
1
- fm_weck/__init__.py,sha256=JmvX_jGKmQ09GVpuyVB9ZmJNcje4Z656BtYxqN5hONk,351
1
+ fm_weck/__init__.py,sha256=1E-Lg-govulF5LWnCDMllOTz1s69LYKB4s0zfiimigk,351
2
2
  fm_weck/__main__.py,sha256=E7z4-9t6To3hbIPjRPu6iW17YCrtqpDSbFSpd9pX4NA,350
3
- fm_weck/cli.py,sha256=apqfvp0zqcFKTH0RSKglkxvSd3d9nOmnpsh6E6-3J8I,10499
4
- fm_weck/config.py,sha256=E3TZbUv9za6XkuLTBGeuxUjLqYKW6IIz2i_N-N47DVI,3872
5
- fm_weck/engine.py,sha256=TIeyCevSjB_PQ5DiYfi7xNjeIRh2CJ636EX5kAY3gKs,7507
6
- fm_weck/image_mgr.py,sha256=1lddYSVd4-dILfhMjDo87S5wfW7qeefInJpyV0Jao_4,1375
7
- fm_weck/serve.py,sha256=1ckaFWkn-OPOUiZ43Nz0An1ifO1ayFRmXPR3uDY5jwg,4662
8
- fm_weck/resources/Containerfile,sha256=IqAt38e7YTpWiIRn0SpE_CPMMsL_F9wEKjlM17sKrys,359
3
+ fm_weck/cli.py,sha256=eeL3GbYO6W5af47ZgIR0mKYug0OrFsJn0Md1aVLDITI,10582
4
+ fm_weck/config.py,sha256=6f4R-iWmWehHghuhoU-UyCpNotYFec_oDelJB4A15BQ,4861
5
+ fm_weck/engine.py,sha256=nstV_H_vhBbBUik95mUotcaPQLsRiTu92YgrWmKJgeM,10102
6
+ fm_weck/image_mgr.py,sha256=kZxcZaMiv5orWO7bLsN7xaQRXjof8uOGud7sb57ZvRo,1655
7
+ fm_weck/serve.py,sha256=DpeAbq1A2mV7uuKZnPOUF4hjbilxaLAJtnLiz_Q0Erw,4646
8
+ fm_weck/resources/Containerfile,sha256=MltxP1of9klsQFNR8WyngRTJrPwxQTF4C9ennRxVqSo,391
9
9
  fm_weck/resources/__init__.py,sha256=ewuOXBraX5Tb8XkWE6xrv0cwrxG4r5Ckj5n_tRjeRf4,946
10
- fm_weck/resources/run_with_overlay.sh,sha256=adgHMbMYLa9GDTv_EYadw7DX-cGCafmVhcZVwEV799A,791
10
+ fm_weck/resources/run_with_overlay.sh,sha256=IOonRSjdoNoMj0tcrdZvqO-x6WZldjpOetvssP6qbSM,872
11
11
  fm_weck/resources/properties/coverage-branches.prp,sha256=Gl2r1cgBFoh4M2laa8dVGhteHkL04oiBRLzxz_hbkEU,56
12
12
  fm_weck/resources/properties/coverage-branches.prp.license,sha256=KzWZF1bpljIbdvwfzfWoP4DLMq6W1jXNN6WXWF0fxY0,214
13
13
  fm_weck/resources/properties/coverage-conditions.prp,sha256=tj307UJBhj-PZqRxjijeNb0foWe2hWIc8CQP54gIUao,57
@@ -34,21 +34,21 @@ fm_weck/resources/fm_tools/2ls.yml,sha256=NWAbq4tz5M_rvt5gn8gMQNVByKLDv_THyK1OMt
34
34
  fm_weck/resources/fm_tools/aise.yml,sha256=ZJZuvQwkllQwzoVYoP33ImfkkyRQnClFbL2qdH55xWk,1246
35
35
  fm_weck/resources/fm_tools/aprove.yml,sha256=QmwxiB_BC66wt0WIVsDkMCzlEv5Bt0YsYvkMSjVAMUo,1299
36
36
  fm_weck/resources/fm_tools/brick.yml,sha256=VJ8TuL2iyIJxjmc-YQyOsrRR6JvNLFuaq4lr9kBV94I,1655
37
- fm_weck/resources/fm_tools/bubaak-split.yml,sha256=HUsSc5kCbNEQfFXHkVdYhIvAaaM9oFaZqCSaIxiS5jE,1100
37
+ fm_weck/resources/fm_tools/bubaak-split.yml,sha256=bjM_mGdHwe0Krnru7Vuv9XEhFrEClZ_dj9ToGMzANvo,1313
38
38
  fm_weck/resources/fm_tools/bubaak.yml,sha256=58_Unt_JfnnSltkxesKOPrI3CfsT6fP2gK8GZn13hl4,1725
39
- fm_weck/resources/fm_tools/cbmc.yml,sha256=SBRCQ9dwjVmCIa0zSpG44OrEfzhhZBIt7QT1PsRPvT0,1290
39
+ fm_weck/resources/fm_tools/cbmc.yml,sha256=gT9BjVnIfLkQxhihwy-Bkf3zxiBZoaJhDQGsr1gAzP8,1625
40
40
  fm_weck/resources/fm_tools/cetfuzz.yml,sha256=mzA4_W5zqw3RsI-uMa_fkNkIgDvdWHPmP1w8sanjBWk,1481
41
- fm_weck/resources/fm_tools/coastal.yml,sha256=qp7b1s-tGdNrmr9lD7Vp90MSZMxX0P9PNTaUn5XIjXE,1055
42
- fm_weck/resources/fm_tools/concurrentwitness2test.yml,sha256=41RDOvbthegxV5RNObN5G169TZ0vr-0ImR3WaY_P0IY,1041
43
- fm_weck/resources/fm_tools/coveriteam-verifier-algo-selection.yml,sha256=ZFvjZCo059J2-Pj18upmHUGB9POPYDjmJjtSDVcgsrw,1733
44
- fm_weck/resources/fm_tools/coveriteam-verifier-parallel-portfolio.yml,sha256=G_E551vFeRDKzjcttG4bcN2IeYsPfXLekL2yzjRrMpA,1713
41
+ fm_weck/resources/fm_tools/coastal.yml,sha256=h0eihf_EzqF04yaFhmcFn4OAMrkqMEOAr9EHioaxjUg,1271
42
+ fm_weck/resources/fm_tools/concurrentwitness2test.yml,sha256=sJ3hVgyOLH2Cid3MgxSVudVpaHY5z5Yq8GLi0nIU7RU,1276
43
+ fm_weck/resources/fm_tools/coveriteam-verifier-algo-selection.yml,sha256=4dNi6WhHF4Ugla5UmiB5nj58Ur7y5xfAjq7clZoWKPc,1978
44
+ fm_weck/resources/fm_tools/coveriteam-verifier-parallel-portfolio.yml,sha256=2iwa_8dwHznrwzXvJbQhfUWwwIMo2aPzMCRZP9WrRyo,1958
45
45
  fm_weck/resources/fm_tools/coveritest.yml,sha256=LPLz32SSrHz6k6vaZtuuUdGutD1lV05erNbks3DQmCg,1617
46
46
  fm_weck/resources/fm_tools/cpa-bam-bnb.yml,sha256=_XUF1uv2uWRXJ69TwECWszYqzJ5xtpQeFwO4aoPlcd0,1326
47
47
  fm_weck/resources/fm_tools/cpa-bam-smg.yml,sha256=llGQnewPpFEqKPUy-UIYGraiBXPTdpjO9Ii5Ttt3-Ko,1370
48
48
  fm_weck/resources/fm_tools/cpa-lockator.yml,sha256=-qmAmhViAA4MItZ5mnT-Fir1Ad--sA0viS4wH_Jj9dE,1353
49
- fm_weck/resources/fm_tools/cpa-witness2test.yml,sha256=EYgOcM2Iuq2870i8Z0GhkZmE9TAv4cRGZKbqh9Q3YXU,2792
50
- fm_weck/resources/fm_tools/cpachecker.yml,sha256=_pgZak98I-R8fPz-Z4ZqkqkWpYG4KMMlas8KakF7i_s,7419
51
- fm_weck/resources/fm_tools/cpv.yml,sha256=XVLMT7b4M6gDAU08R9DGeEV8RpCeDDNtcJ-qSOeG_iY,1254
49
+ fm_weck/resources/fm_tools/cpa-witness2test.yml,sha256=UQElPJmloFdXxY-naYeX6sOh-cIg-dM19d3TDbPGFDQ,2688
50
+ fm_weck/resources/fm_tools/cpachecker.yml,sha256=TL0zuuwGHP5CJQq3u5L6lWbJlK8xJ_5fjHo9U4WrluE,7184
51
+ fm_weck/resources/fm_tools/cpv.yml,sha256=c8vlC35qt8QcoewcCpy9KGCSenfyzS32pHlRmXb3JEg,1529
52
52
  fm_weck/resources/fm_tools/crux.yml,sha256=JG3NI1DWIHDsIdl2Dli8B9GBFhBsWZA7ondMyqVQbEE,1068
53
53
  fm_weck/resources/fm_tools/cseq.yml,sha256=l7399biboHfcxJpicQQKr4ZoJEhqerske1ylgbXXtZw,1441
54
54
  fm_weck/resources/fm_tools/dartagnan.yml,sha256=6LViNgd06p_jYdaEUWhNEMZusE9tuKO17j__IpCmJwE,2940
@@ -78,6 +78,7 @@ fm_weck/resources/fm_tools/jayhorn.yml,sha256=0UVLqkMkAbHKUpFvEsWtibVzBHVg_Hk3px
78
78
  fm_weck/resources/fm_tools/jbmc.yml,sha256=1S6SCndHl2RYYwfFBzaWetz3y3ChOpo3XDYKnynmY4E,1799
79
79
  fm_weck/resources/fm_tools/jcwit.yml,sha256=zX9_vN3k1LrDrWfmd74yVQH3a0dDwXR8asRUvGY6E8U,882
80
80
  fm_weck/resources/fm_tools/jdart.yml,sha256=KPZQTzpkMJYaqb1V6MPQRGa7cJMuj5Q-EaWw_YHWulU,1149
81
+ fm_weck/resources/fm_tools/key.yml,sha256=iC-fBi-PUdTqa9dGYp3YLPA61WVCMxMKAVO6T-Zp5_k,2154
81
82
  fm_weck/resources/fm_tools/klee.yml,sha256=DKysTqhiWXmgrWkrI8KDnGCtz5_8e-74rUYwyp0xElw,1202
82
83
  fm_weck/resources/fm_tools/kleef.yml,sha256=ZFQHwMqsDTPLVnkTpCqPtihgI5AOMpepKwMh4ny2ym4,1092
83
84
  fm_weck/resources/fm_tools/korn.yml,sha256=ivoGYXZS9q_QdRwZWpwZuOStnZLd56iyP3-TrfPo8iw,1751
@@ -95,18 +96,18 @@ fm_weck/resources/fm_tools/owic.yml,sha256=iEwN7Gh1AX03rDAwq54gclJIm_cV3jbqArW73
95
96
  fm_weck/resources/fm_tools/pesco.yml,sha256=Sn6VXt1BAizYQsI87joHZHJeu6w7qHI4oD5AnifwjAs,1899
96
97
  fm_weck/resources/fm_tools/pichecker.yml,sha256=8go2GTLyXukkHrth6VEBSbH304CKovAogMotbKSyNpI,1303
97
98
  fm_weck/resources/fm_tools/pinaka.yml,sha256=82oADOZpZ_cXn_n-h4u_NAct6CvRr9dNzqqNQjia4rk,1308
98
- fm_weck/resources/fm_tools/predatorhp.yml,sha256=kT4OvMwT_WTovk7W9JyQjXsfK4o_TkY4evYzNXVDPto,1514
99
- fm_weck/resources/fm_tools/proton.yml,sha256=3Vzp7kQqvOlw_Wcnfc9hSvUC1LdxdFie8x6ab2Wq2DM,894
99
+ fm_weck/resources/fm_tools/predatorhp.yml,sha256=-b6a0kbIG9gqBi3LvpRz976VLc9a4QouWlVk-8dEDYE,2155
100
+ fm_weck/resources/fm_tools/proton.yml,sha256=tov4hwob9ztEoEcooYHLlgV4UdfzYss8aPK3miP05Pk,1115
100
101
  fm_weck/resources/fm_tools/prtest.yml,sha256=lBoCUtznXC2CaL4TlBZxid0veSQ7N0L4PLTDBTET6sc,1336
101
102
  fm_weck/resources/fm_tools/relay-sv.yml,sha256=XU6m1WwpLwFolP-cVt1Ia_n2biSspvRMsqX2LA6ZTyA,1033
102
103
  fm_weck/resources/fm_tools/rizzer.yml,sha256=qRp9hM26LabMFNcMoABHOciaJHao7bBxrvdvHlJJl60,1243
103
- fm_weck/resources/fm_tools/schema.yml,sha256=kChqExvBUhN9TFsd7fcbqvSvb_MH74bNmO1JuqOSvNI,17317
104
+ fm_weck/resources/fm_tools/schema.yml,sha256=7fzmmqBbh-FAD2LffFCEThJh3fLBo6YAYEDYhf4_bto,20470
104
105
  fm_weck/resources/fm_tools/spf.yml,sha256=DVWM2iCDg3I0Sft4pnuMfmA8XqbBLd0YGHzcyPy-IW4,1326
105
106
  fm_weck/resources/fm_tools/sv-sanitizers.yml,sha256=XsNjhdXK61JZG2S0tve1ChDLGDEbOT_kU1_GamA3Rsc,956
106
107
  fm_weck/resources/fm_tools/swat.yml,sha256=S_avjdEaYil90ATqAzsxHDFzOaMhKEj8yiE2Sa7SyEc,1286
107
- fm_weck/resources/fm_tools/symbiotic-witch.yml,sha256=f1L5hMzjqHiqxw7FS_vpZ9km0v0yNI0l7j0pCcSEJ_w,1336
108
- fm_weck/resources/fm_tools/symbiotic.yml,sha256=pv3FcRgd9LULKyE5YxqpGPxu264XA2QreNrprOjgyG8,2562
109
- fm_weck/resources/fm_tools/testcov.yml,sha256=6dEwqnqQ4fhTJKdMS7gbekym3ugbIgCPVKsabnw9tgM,2151
108
+ fm_weck/resources/fm_tools/symbiotic-witch.yml,sha256=-JeF8RmxGjDuLrnzR9YtDh4xU9xi129qGIQSNg-eZ9M,1755
109
+ fm_weck/resources/fm_tools/symbiotic.yml,sha256=GGIjnY4oCSr62708bkQ1Rty6wjq9MFCnp5_66YPImxU,4315
110
+ fm_weck/resources/fm_tools/testcov.yml,sha256=bP1gj2Acvwq0z9HpFa8VQCpLsYAzANOnD6s21ewxIB0,2100
110
111
  fm_weck/resources/fm_tools/theta.yml,sha256=cXca1VdvXkwaYxlL-lherGCvi6XUjlwWSbZf_EH8xaE,1734
111
112
  fm_weck/resources/fm_tools/tracerx-wp.yml,sha256=KHDTtMlO8qgkzkKTTqlXbf6flN-zc_HIZ9KBkVqbAUU,1038
112
113
  fm_weck/resources/fm_tools/tracerx.yml,sha256=TlDLEAX_fvqd6RKfsoBRJrbcPrkiaSsWeDJ1F_yACGk,1554
@@ -121,9 +122,9 @@ fm_weck/resources/fm_tools/verifuzz.yml,sha256=cGB62ku9F_RLkBtJayFBvw-I4oNEf5K6q
121
122
  fm_weck/resources/fm_tools/verioover.yml,sha256=g1IYUaoUVTUGCvw5LP8Vi3q5PyNMFcrc3HovDJrX7ns,1019
122
123
  fm_weck/resources/fm_tools/wasp-c.yml,sha256=NWEb2vpIBu75kZJdEq0am8Mpi2HFu5nhDI1edAMjUzk,1238
123
124
  fm_weck/resources/fm_tools/wit4java.yml,sha256=SukwwE46DsDmZouAwHhr_aaOjxIaeOrIS7o7P4eDWX0,1243
124
- fm_weck/resources/fm_tools/witch.yml,sha256=1NtUf5SlXtCTqJZHjENcjqZMMqnKGlb4awSUwBDEvWw,913
125
+ fm_weck/resources/fm_tools/witch.yml,sha256=5d5aYmkrlG78M-RLdDbdi6EJWOfD0CskWtJWGXtwEyI,1152
125
126
  fm_weck/resources/fm_tools/witnesslint.yml,sha256=Y6A2TXPyjVxZ9Fhmyd7GOKY7x1_jXjshvmrIM4uW96A,3085
126
- fm_weck-1.1.1.dist-info/METADATA,sha256=0whpQXhGwHbVo4N4MpeqbfZ_F2JtzFAYb2cad3-GrjM,2744
127
- fm_weck-1.1.1.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
128
- fm_weck-1.1.1.dist-info/entry_points.txt,sha256=toWpKCSY1u593MPnI_xW5gnwlnkerP4AvmPQ1s2nPgY,50
129
- fm_weck-1.1.1.dist-info/RECORD,,
127
+ fm_weck-1.1.2.dist-info/METADATA,sha256=yR302Kub6tHGgbImtPQaOupb1zCRy2HTF5Nme-GH09I,2771
128
+ fm_weck-1.1.2.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
129
+ fm_weck-1.1.2.dist-info/entry_points.txt,sha256=toWpKCSY1u593MPnI_xW5gnwlnkerP4AvmPQ1s2nPgY,50
130
+ fm_weck-1.1.2.dist-info/RECORD,,