rustsat-v0.5.0
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 toSolve
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