• Dropped support for Python 3.6 and 3.7

  • Added stubs

  • Fixed Mergesat name

  • Add support to add nested negation of Bool to CNFs.


  • Small fixes in Running and Tuning scenario generation

  • Fast formula loading functions now also accept a pathlib.Path object

  • Improve error messages in BlackBox

  • Running now ensures that the solvers, tasks and seeds provided by the user exist

  • Remove support for abbreviations in the optilog-running CLI


  • Improve efficiency in the Modelling module

  • Small fixes in BlackBox and Tuning

  • Fixed LinearMaxSat issue

  • Modelling parser raises an error if a syntax error is found

  • Fixed problems with paths and spaces in the Running module


  • Added Named Choices

  • Added default as elite parameter for GGA

  • Allow to set the cost that SMAC uses on a crash

  • Bugfixes


  • Complete refactor of the Modelling module with improved encoding to CNF

  • Parsing of the running scenario now defaults to simplify_index as False


  • Changed the “optilog-scenario” command to “optilog-running”

  • Improved the –help message of the “optilog-running” command

  • Improved the documentation of the Running module

  • Fixed an issue with the new enforcer integration with Satex

  • Changed the time scale of the running scenario to seconds by default. This can be configured to be milliseconds.


  • Complete refactor and redesign of the Tuning and Running modules:
    • Tuning and Running now both support BlackBox as runnables (as entrypoints, configurables and solvers)

    • Scenario generation doesn’t require python templates anymore

    • Improved integration with GGA and SMAC

  • Support for new WCNF format from the MSE 2022

  • Added support for formula visualization with colors

  • Improved enforcer example


  • Respect runsolver flag on Running even with certain constraints


  • Added get_trail and get_units to the iSAT interface


  • Fixes and improvements in Modelling


  • Internal compilation improvements


  • Improved num_clauses documentation

  • Improved docs

  • Improved error messages

  • Added support for signal propagation on BlackBox

  • Running module writes logs for each solver in separate directories

  • Fixes and improvements in Modelling, Tuning and BlackBox


  • Totalizer encoder, harmonization as list of clauses

  • New var method harmonization between solvers

  • Included ExecutionConstraints class to unify constraints between execution definitions

  • Internal Blackbox refactor of the Execution and Configuration modules


  • Added solver cloning

  • Added Blackbox v1

  • Added SatexBlackbox v1

  • Support for multiple solvers per running scenario

  • Improve exception messages and docs

  • Add support for Python 3.10

  • Refactor modules names

  • Other small changes, improvements and bug fixes