Skip to content

Releases: scipopt/russcip

v0.6.1

27 Jan 10:54
Compare
Choose a tag to compare

What's Changed

This release introduces a new ergonomic way to build models.

use russcip::prelude::*;

let mut model = Model::default().minimize();
let x = model.add(var().binary().obj(1.0));
let y = model.add(var().binary().obj(2.0));
model.add(cons().coef(&x, 1.0).coef(&y, 1.0).eq(1.0));

let solved = model.solve();
assert_eq!(solved.status(), Status::Optimal);
assert_eq!(solved.obj_val(), 1.0);

Merged PRs

Full Changelog: v0.6.0...v0.6.1

v0.6.0

25 Jan 12:43
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.5.1...v0.6.0

v0.5.0

09 Jan 16:17
b4977e1
Compare
Choose a tag to compare

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

v0.4.2

31 Dec 09:14
d6279c1
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.4.0...v0.4.2

v0.4.0

24 Oct 11:51
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.3.4...v0.4.0

v0.3.4

01 Apr 08:05
Compare
Choose a tag to compare

Full Changelog: v0.3.3...v0.3.4

v0.3.3

30 Mar 11:13
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.3.2...v0.3.3

v0.3.2

13 Mar 07:27
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.3.1...v0.3.2

v0.3.1

13 Mar 06:49
cea5d96
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.3.0...v0.3.1

v0.3.0

10 Mar 14:55
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.2.6...v0.3.0