Skip to content

Releases: chrjabs/rustsat

rustsat-v0.5.0

30 Apr 14:12
Compare
Choose a tag to compare

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

rustsat-tools-v0.3.0

30 Apr 15:12
Compare
Choose a tag to compare

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

30 Apr 15:05
Compare
Choose a tag to compare

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 to Solve 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

30 Apr 15:10
Compare
Choose a tag to compare

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 to Solve 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

30 Apr 15:11
Compare
Choose a tag to compare

Factor IPASIR API out from RustSAT into its own crate.

rustsat-glucose-v0.3.0

30 Apr 15:08
Compare
Choose a tag to compare

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 disable stdout printing
  • Migrate error handling to anyhow create
  • FreezeVar trait
  • Return error when assumption is eliminated
  • Add add_clause_ref method to Solve 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

30 Apr 15:09
Compare
Choose a tag to compare

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 to Solve 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

23 Feb 08:21
Compare
Choose a tag to compare

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 from DbGte

Documentation

  • Disable cbindgen on docs.rs

rustsat-tools-v0.2.4

23 Feb 08:24
Compare
Choose a tag to compare

Features

  • Make opb defaults more like pbo competition specs

rustsat-minisat-v0.2.4

23 Feb 08:22
Compare
Choose a tag to compare

Bug Fixes

  • Remove zlib dependency from minisat and glucose