Skip to content

Releases: ConSol-Lab/Pumpkin

pumpkin-solver: v0.2.1

10 Jul 13:41
5216848
Compare
Choose a tag to compare

0.2.1 (2025-07-10)

Features

  • Branch on objective variable first if not everything is assigned after the FlatZinc search strategy (#230) (d676430)
  • Arena allocation for the Nogood propagator (#212) (6f647e8)
  • Enforce constraint ID and inference label are provided in propagators (#179) (74126a1)
  • Expose a timeout flag in the Python API (#195) (7d4a74f)
  • Implement *_imp FlatZinc constraints for linear arithmetic (#219) (c00050f)
  • Implement the table and negative table constraints (#194) (49344d6)
  • Improving notification system for nogood propagator (#190) (b04ac58)
  • Merge equivalence classes of variables in int_eq as a preprocessing step (#221) (9b5c1cc)
  • Propagator for binary arithmetic constraints int_ne and int_eq (#223) (00a16e0)
  • Remove unused variables from the FlatZinc AST (#222) (223a26a)
  • Rewrite int_lin_eq and int_lin_ne over two variables into their binary equivalents (#240) (a370866)

Bug Fixes

  • Create sparse domains properly for a sparse FlatZinc domain (#243) (6225ff5)
  • Disable recursive minimisation when logging the full proof (#215) (7a0a08e)
  • Don't log same domain inference multiple times per deduction (#227) (30a7b53)
  • Fix lazy explanations for the element propagator (#191) (60e2bea)
  • Log the correct proofs when optimising (#216) (ca6e452)
  • Log the initial bounds in the full proof as inferences (#211) (7624035)
  • Properly explain root-level explanations that are not considered during conflict analysis (#176) (d237293)
  • Update outdated documentation from before the v0.2 release (#177) (8e4009f)

pumpkin-core: v0.2.1

10 Jul 13:58
2c2b496
Compare
Choose a tag to compare
chore: release  pumpkin-core 0.2.1 (#245)

:robot: I have created a release *beep* *boop*
---


See `pumpkin-solver` changelog.

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

drcp-format: v0.3.0

10 Jul 13:32
49abbde
Compare
Choose a tag to compare

0.3.0 (2025-07-10)

Features

  • Update to the new format, which inlines atomic constraint definitions into the proof steps (#204) (5cdc747)
  • Do mapping from codes to atomic constraints inside the crate (#204) (5cdc747)

pumpkin-solver: v0.2.0

11 Apr 09:24
952fccf
Compare
Choose a tag to compare

0.2.0 (2025-04-11)

Features

  • Add logging for branchers (#135) (d8814f1)
  • Add method for retrieving relevant brancher events (#138) (8253580)
  • Adding lower-bounding search to the solver (#132) (57bde78)
  • Adding random variable selector + sparse_set fixes (#139) (1c4b85f)
  • Debug clone does not synchronise at level 0 + random splitter edge cases (#146) (bba1abb)
  • Enable proof logging in appropriate test cases (#154) (914f1bc)
  • Expose the optimisation API in the python wrapper (#148) (ab9a463)
  • Flatzinc parse boolean & negative int arrays as well (#142) (68aef75)
  • Improve element propagator (#140) (b9bcfd3)
  • Lazy explanation context (#123) (0781357)
  • No additional variables during constraint construction (#131) (19dd45b)
  • Nemove explicit literals (#115) (ab74e20)
  • Stateful integer (#125) (eb01ed3)

Bug Fixes

  • Addressing clippy warnings (#143) (20c76bb)
  • Allow reification of lazy reasons (#152) (c7418ec)
  • Also log the inference that led to an empty domain (#165) (7799119)
  • Alternating brancher did not call the methods correctly (#128) (6019d86)
  • Disjunctive scheduling example had incorrect negation constraint (#114) (fd007a0)
  • Don't debug propagate deleted nogoods (#147) (e3a6527)
  • Explain root-level assignments in the proof log during conflict analysis (#163) (c877b06)
  • Fixing erronous conflict check when using incrementality (#137) (07c253f)
  • Give reason to root-level propagation in nogood propagator (#124) (14868d5)
  • Identify more places where root-level facts need to be logged to the proof (#153) (3ac5019)
  • Issue with integer multiplication + correct path in msc file (#117) (ce25710)
  • Post process new domain (#129) (26a3b46)
  • Print statistics at the end of solving process + make pumpkin-solver default bin (#162) (7d30ac8)
  • Remove paste dependency (#159) (ea53fed)
  • Root level assignments are properly explained in the proof when logging inferences (#158) (857f84c), closes #118 #119 #156

drcp-format: v0.2.1

11 Apr 09:02
6a0c37d
Compare
Choose a tag to compare

0.2.1 (2025-04-11)

Bug Fixes

  • an empty nogood with hints can now be parsed. (e4cb2cc)

pumpkin-solver: v0.1.4

07 Nov 14:34
Compare
Choose a tag to compare

0.1.4 (2024-11-07)

Features

  • allow logging of statistics to arbitrary writers (#73) (136e03a)
  • introduce inference-nogoods in drcp-format (#98) (e5ae6c2)
  • update to drcp-format v0.2.0 (#101) (2f6df0c)

Bug Fixes

  • cumulative holes in domain incorrectly used cached profile (#109) (4c86a8b)
  • cumulative sequence generation found less profiles than it should + fixing issues with debug propagation (#110) (f17222d)
  • use propagate for "<=" constraint + using solution reference from solution rather than solver (#108) (668bd0d)
  • wrong profile found for over-interval conflict explanation (#111) (4ba1d50)

drcp-format: v0.2.0

05 Nov 10:58
16f2935
Compare
Choose a tag to compare

0.2.0 (2024-11-05)

⚠ BREAKING CHANGES

  • introduce inference-nogoods in drcp-format (#98)

Features

  • introduce inference-nogoods in drcp-format (#98) (e5ae6c2)

pumpkin-solver-v0.1.3

31 Oct 14:41
04f8eb0
Compare
Choose a tag to compare

0.1.3 (2024-10-31)

Features

  • adding synchronisation for the cumulative constraint (#86) (5ef9d56)
  • implement consistency check interface in linear less than propagator (#87) (089a083)

pumpkin-solver-v0.1.2

30 Oct 15:41
7b89ef1
Compare
Choose a tag to compare

0.1.2 - 2024-10-30

Added

  • incremental backtracking for the cumulative constraint (#60)

Fixed

  • do not print intermediate solution when flag is not set + solution callback for satisfaction problems (#77)
  • issue with time-point ending up between profiles for pointwise sequence explanation (#78)
  • take ownership of the propagation context in propagators (#85)
  • complete proof when propagator initialization identifies root-level conflict (#80)
  • float stat into one line (#83)

pumpkin-solver-v0.1.1

22 Oct 08:24
Compare
Choose a tag to compare

[0.1.1] - 2024-10-17

Added

  • Documentation to the containers module.
  • Installation instructions through cargo to the README.

Fixed

  • Link to crates.io in README.