Skip to content

v0.5.0

Latest
Compare
Choose a tag to compare
@mmghannam mmghannam released this 09 Jan 16:17
· 13 commits to main since this release
b4977e1

What's changed

  • This release brings a bunch of API changes related to plugins:
    • Now all plugin traits get passed Model<Solving> object, enabling easy access for methods available in the solving stage, and removing the need for saving it in the struct implementing the plugin trait using model.clone_for_plugins(). That's why this release also removes the method.
    • Additionally, callbacks now also include wrappers for the SCIP plugin objects, for example in the Separator trait's execute_lp method now a SCIPSeparator also gets passed, with which one would query its data like the Separator's name or ask it to create a row with this separator as its origin.
    • The EventHdlr plugin callback now also gets passed an Event object representing which event was triggered in that specific call. This struct will in the future include methods that give access to the specific event data for different events.
  • Added wrappers for SCIP_COL and SCIP_ROW with access to most of their methods.
  • Refactoring:
    • Simplification of the trait implementations of the different Model stages.
    • Remove the HasSCIPPtr trait and refactor common functionality in different stages to not depend on macros.

Merged PRs

Full Changelog: v0.4.2...v0.5.0