Benchexec

Latest version: v3.29

Safety actively analyzes 724327 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 12

3.23

Not secure
As announced previously, this release works only on Python 3.8 and newer!

- Fix a potential crash for CPAchecker when using `/usr/bin/cpachecker`.

3.22

Not secure
**This will be the last release of BenchExec to support Python 3.7.**
Future versions will require Python 3.8,
and in 2025 we are planning to drop support for Python 3.8 and 3.9.
Please [comment here](https://github.com/sosy-lab/benchexec/issues/986)
if these plans would create problems for you.

BenchExec is now available as an
[official package in the NixOS distribution](https://github.com/sosy-lab/benchexec/blob/main/doc/INSTALL.md#nixos).
Thank you [lorenzleutgeb](https://github.com/lorenzleutgeb)!

- BenchExec now handles new restrictions imposed by Ubuntu 24.04.
Our Ubuntu package is recommended for installation
because it automatically does everything for making BenchExec work out of the box.
Users of other installation methods need to tweak their system config,
and both our documentation and the error message of BenchExec
now inform about what is necessary. Thank you [younghojan](https://github.com/younghojan)!
- BenchExec is now easier to use on systems without systemd but with cgroups v2.
This is a common situation in containers,
and BenchExec will now automatically use the `/benchexec` cgroup
if it exists and has no running processes.
This makes it unnecessary to manually start BenchExec in a fresh cgroup,
but the `/benchexec` cgroup still needs to be created upfront.
We give examples how to do this in our
[documentation](https://github.com/sosy-lab/benchexec/blob/main/doc/benchexec-in-container.md).
- Several robustness improvements to BenchExec's container mode for non-standard environments.
This covers for example containers with invalid cgroup mounts,
systems with procfs mounts in several places, missing DBus, and Docker Desktop.
- Several fixes and improvements for the HTML tables produced by `table-generator`.
Thank you [EshaanAgg](https://github.com/EshaanAgg) and [JawHawk](https://github.com/JawHawk)!
- Filters for text columns are now case insensitive.
- Plots now have a reset button for clearing configuration changes.
- Text filters now work even if special characters like `_` or parentheses are used.
- Changes to the plot configuration no longer break the application
if it was opened from paths with spaces and other special characters.
- The drop-down area for status filters now immediately shows the correct value
when opening a table via a link with preconfigured filters.
- The filter for the left-most column is now correctly usable again
after a task-id filter in the filter sidebar was set and cleared.
- Fix handling of tools that read from stdin when asked to print their version.
In such a case, the tool (and thus BenchExec) would previously hang
but now stdin of the tool is connected to `/dev/null`
(just like during the actual execution) and the tool immediately gets EOF.
- Improvements to our documentation.
We now have a [quickstart tutorial for `runexec`](https://github.com/sosy-lab/benchexec/blob/main/doc/quickstart.md)
and a [guide specifically for executing BenchExec in containers](https://github.com/sosy-lab/benchexec/blob/main/doc/benchexec-in-container.md).
Thank you [incaseoftrouble](https://github.com/incaseoftrouble)!
- Improvements for several tool-info modules.
- Integration of BenchExec and the cluster management tool SLURM.
It is not officially part of BenchExec and we do not provide any guarantees related to it,
but our repository now contains an
[integration of BenchExec and SLURM](https://github.com/sosy-lab/benchexec/tree/main/contrib/slurm)
that users of SLURM might find helpful. Thank you [leventeBajczi](https://github.com/leventeBajczi)!
Further contributions in this area are also welcome.

We celebrate that this release
sets a new record for contributions from non-maintainers
and thank all contributors!

3.21

Not secure
- `table-generator` computes scores according to SV-COMP'24 scoring scheme.
This changes only the scoring for witness-validation results.
- Support for property files at HTTP(S) URLs in `table-generator`.
Tables can already be produced not only from local result files,
but also from files that are downloaded on the fly.
Now this also works for results with property files.
- Fix for tool-info module `witnesslint`.

3.20

Not secure
- Two tool-info modules improved.

3.19

Not secure
- Tool-info modules can now provide URLs that will be used for links in HTML tables.
There are two new methods, `project_url()` and `url_for_version()`
that can be implemented, and `table-generator` will put links to these URLs
in the summary table of the HTML tables (for the tool name and the version).
Most existing tool-info modules were extended with `project_url()`.
- Many new and improved tool-info modules.

3.18

Not secure
The big change in this release is the long-awaited support for cgroups v2!
Please refer to the [installation instructions](https://github.com/sosy-lab/benchexec/blob/master/doc/INSTALL.md)
for how to use it (on Ubuntu/Debian, installing our package is enough).
Note that this of course has not been tested yet on as many different systems
as our support for cgroups v1, so there might still be some rough edges.
Please provide [feedback](https://github.com/sosy-lab/benchexec/issues/new)
if you encounter any problems or have questions.
On systems with cgroups v1, everything should work the same way as before.

There are also some other minor improvements:

- If the system administrator has configured a lower frequency limit
than what the CPU supports, BenchExec now reports this limit as the CPU speed.
- Fixes in `table-generator` for result files that conform to the specification
but were not produced by `benchexec`.
- A few minor improvements for better integration with Podman containers.

Page 2 of 12

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.