Crash after collecting votes due to not having `vbt` on path
Closed this issue · 0 comments
slarse commented
I ran the tally command, and it crashed after collection due to vbt
not being available
Traceback (most recent call last):
File "/home/slarse/Documents/github/work/trustfull-demonstrator/scripts/demo.py", line 752, in <module>
sys.exit(main(parse_args()))
File "/home/slarse/Documents/github/work/trustfull-demonstrator/scripts/demo.py", line 259, in main
return globals()[f"{args.subparser_name}_main"](args)
File "/home/slarse/Documents/github/work/trustfull-demonstrator/scripts/demo.py", line 376, in tally_main
vbt_json = vbt_count("plaintexts", vbt_call)
File "/home/slarse/Documents/github/work/trustfull-demonstrator/scripts/demo.py", line 725, in vbt_count
vbt_call(fname),
File "/home/slarse/Documents/github/work/trustfull-demonstrator/scripts/demo.py", line 740, in _check_output_vbt
subprocess.check_output(
File "/usr/lib/python3.9/subprocess.py", line 424, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File "/usr/lib/python3.9/subprocess.py", line 505, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.9/subprocess.py", line 951, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.9/subprocess.py", line 1821, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'vbt'
I figured "I'll just tally again with the bytetree parser", but VMN screamed bloody murder at that:
Exception in thread "main" com.verificatum.protocol.ProtocolError: Attempting to shuffle in a used session!
Suggested actions:
- Make the bytetree parser the default, as it's available in the project itself
- If using vbt, check that it's on the path before starting to collect votes
- On that note, what is vbt? We should link to it in the README
- Perhaps disconnect the VMN part of producing the plaintext from the post-processing and uploading of that plaintext
Thoughts? 1. and 2. are trivial, I can do that if you agree they're good ideas. 3 is more work, we could have that as a TODO for the future.