Skip to content

rustsat-v0.5.0

Compare
Choose a tag to compare
@chrjabs chrjabs released this 30 Apr 14:12
· 128 commits to main since this release

This release contains breaking changes. For detailed instructions on how to
handle migration, please refer to the migration guide.

Bug Fixes

  • Incorrect coarse_ub in dpw when unweighted
  • Dynamic polynomial watchdog edge cases with < 2 inputs

Documentation

  • Clarify lit rep and relation to IPASIR/DIMACS
  • Add missing documentation
  • Fix broken links

Features

  • Migrate error handling to anyhow create
  • Move IPASIR bindings to separate crate
  • Instance ergonomics for member variables
  • Ergonomics for opb writing
  • Ergonomics for dimacs writing
  • Add add_clause_ref method to Solve trait
  • Add add_nary function
  • Have file parsers take BufRead types
  • Extend<&Clause> for solvers
  • Catch memory out in solvers
  • Catch memory outs in clause collector
  • Parse external solver output
  • ipasir-display feature

Miscellaneous Tasks

  • Update to pyo3 0.21
  • Specify minimum rust version

Performance

  • Add BufWriter when writing to file
  • Avoid unnecessary cloning

Refactor

  • Clean up control flow in solver methods
  • Clean up control flow in dimacs parsing
  • Factor out C-API
  • Factor out Python API