Releases: chrjabs/rustsat
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
rustsat-tools-v0.3.0
The corresponding RustSAT release contains breaking changes. For detailed
instructions on how to handle migration, please refer to the migration guide.
Documentation
- Fix broken links
Features
- Instance ergonomics for member variables
- Ergonomics for dimacs writing
- Use
anyhow
crate
rustsat-minisat-v0.3.0
The corresponding RustSAT release contains breaking changes. For detailed
instructions on how to handle migration, please refer to the migration guide.
Bug Fixes
- Variable freezing and return value for
var_eliminated
- Segfault in minisat
Documentation
- Add missing documentation
Features
quiet
feature to disable stdout printing- Migrate error handling to
anyhow
create FreezeVar
trait- Return error when assumption is eliminated
- Add
add_clause_ref
method toSolve
trait Extend<&Clause>
for solvers- Catch memory out in solvers
- Catch memory outs in clause collector
Refactor
- Clean up control flow in solver methods
- Factor out solver integration tests
- Factor out solver unit tests
- Solver build system
Testing
- Minisat segfault tests
Example
minisat-cli
tool
rustsat-kissat-v0.2.0
The corresponding RustSAT release contains breaking changes. For detailed
instructions on how to handle migration, please refer to the migration guide.
Documentation
- Add missing documentation
Features
- Migrate error handling to
anyhow
create - Add
add_clause_ref
method toSolve
trait Extend<&Clause>
for solvers- Allow for abort hooks
Refactor
- Clean up control flow in solver methods
- Factor out solver integration tests
- Factor out solver unit tests
- Solver build system
Testing
- Minisat segfault tests
Example
kissat-cli
tool
rustsat-ipasir-v0.1.0
Factor IPASIR API out from RustSAT into its own crate.
rustsat-glucose-v0.3.0
The corresponding RustSAT release contains breaking changes. For detailed
instructions on how to handle migration, please refer to the migration guide.
Documentation
- Add missing documentation
Features
quiet
feature to disablestdout
printing- Migrate error handling to
anyhow
create FreezeVar
trait- Return error when assumption is eliminated
- Add
add_clause_ref
method toSolve
trait Extend<&Clause>
for solvers- Catch memory out in solvers
- Catch memory outs in clause collector
Refactor
- Clean up control flow in solver methods
- Factor out solver integration tests
- Factor out solver unit tests
- Solver build system
Testing
- Minisat segfault tests
rustsat-cadical-v0.3.0
The corresponding RustSAT release contains breaking changes. For detailed
instructions on how to handle migration, please refer to the migration guide.
Documentation
- Add missing documentation
Features
- Cadical version 1.9.5
- Migrate error handling to
anyhow
create - Exclude
ipasir.cpp
to avoid conflicts with other linked ipasir libs - Add
add_clause_ref
method toSolve
trait Extend<&Clause>
for solvers- Catch memory out in solvers
- Catch memory outs in clause collector
Miscellaneous Tasks
- Cleanup feature-dependent compilation
Refactor
- Clean up control flow in solver methods
- Factor out solver integration tests
- Factor out solver unit tests
- Solver build system
Testing
- Minisat segfault tests
Example
cadical-cli
tool
rustsat-v0.4.3
Features
- Internal
from_raw
methods for db totalizers - Thorough merge strategy for
NodeById
- Make opb defaults more like pbo competition specs
- Output opbs with
#variable
line
Bug Fixes
- Remove
weight_sum
field fromDbGte
Documentation
- Disable cbindgen on docs.rs
rustsat-tools-v0.2.4
Features
- Make opb defaults more like pbo competition specs
rustsat-minisat-v0.2.4
Bug Fixes
- Remove zlib dependency from minisat and glucose