Dwave-ocean-sdk

Latest version: v8.0.0

Safety actively analyzes 706259 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 15 of 29

0.12.17

New Features

- Allow `BinaryQuadraticModel.contract_variables()` to contract variables without an interaction. Previously it raised a `ValueError`.

- Add `power_r()` generator function to `dimod.generators`. The weights of the generated Ising problems follow a power-law distribution with respect to their magnitude.

- Add `bin_packing` generator function to `dimod.generators`.

- Add `labels` keyword argument to `ConstrainedQuadraticModel.iter_constraint_data()` and `ConstrainedQuadraticModel.iter_violations()` methods. The `labels` keyword argument allows a user to generate the data/violations for a subset of the constraints. See [\1381](https://github.com/dwavesystems/dimod/issues/1381).

- Add `knapsack` generator function to `dimod.generators`.

- Support Python 3.13.

- Add `quadratic_assignment` generator function to `dimod.generators`.

0.12.16

New Features

- Add `dimod/typing.pdx`. This allows users to `cimport` common C types into other namespaces.

- Support NumPy 2.0. Also, no longer require NumPy at build-time.

- Reduce the size of manylinux wheels.

Upgrade Notes

- Remove Cython fused types `dimod.cyutilities.SignedInteger`, `dimod.cyutilities.UnsignedInteger`, `dimod.cyutilities.Integer`, and `dimod.cyutilities.ConstInteger`, `dimod.cyutilities.Numeric`, and `dimod.cyutilities.ConstNumeric`. Use the types in `dimod.typing` instead.

- Remove Cython fused types `dimod.discrete.cydiscrete_quadratic_model.Unsigned`, `dimod.discrete.cydiscrete_quadratic_model.Integral32plus`, `dimod.discrete.cydiscrete_quadratic_model.Numeric`, and `dimod.discrete.cydiscrete_quadratic_model.Numeric32plus`. Use the types in `dimod.typing` instead.

- Don't include debug info in built `.so` files.

0.12.15

New Features

- Add C++ `QuadraticModelBase::remove_interactions()` method.

- Add `dimod.generators.random_binary_paint_shop_problem()` binary paint shop problem generator.

- Add an abstract method `QuadraticViewsMixin.add_quadratic()`.

- Add a method `QuadraticViewsMixin.add_quadratic_from()` to add quadratic interactions. This method is intended to be used as follows: `ConstrainedQuadraticModel.objective.add_quadratic_from()`, similarly to `ConstrainedQuadraticModel.objective.add_linear_from()`.

- Add `check_overlaps` keyword argument to `ConstrainedQuadraticModel.add_discrete()`, see [\1364](https://github.com/dwavesystems/dimod/issues/1364).

Upgrade Notes

- All sublcasses of `QuadraticViewsMixin`, including `ObjectiveView`, `QuadraticModel` and `BinaryQuadraticModel`, now require to have the method `add_quadratic()`.

0.12.14

New Features

- Add C++ `dimod::abc::QuadraticModelBase::remove_variables()` method
and accompanying overloads.
- Speed up C++ `dimod::Expression::remove_variables()` method.

0.12.13

New Features

- Build wheels for Python 3.12.

- Build C++ extensions with Cython 3.

0.12.12

New Features

- Implement `CaseLabelDQM.to_file()` when the keyword argument `ignore_labels` is true. Also make the error message clearer in the case that `ignore_labels` is false.

- Improve the performance of `ConstrainedQuadraticModel.from_discrete_quadratic_model()`.

- Add `dimod.generators.magic_square()` which allows for the generation of a constrained quadratic model whose feasible solutions are normal magic squares. The function also generates magic squares of squares when passed `power=2` as a keyword argument.

- Implement version 2.0 of constrained quadratic model serialization. See `ConstrainedQuadraticModel.to_file()` for details.

- Improve LP file reading by wrapping [HiGHS](https://github.com/ERGO-Code/HiGHS) LP file parser.

- Add C++ ``ConstrainedQuadraticModel::remove_constraints_if()`` method.

- Add `Constraint.is_onehot()` method.

- Add `dimod::Expression::remove_variables()` C++ method. This method is useful for removing variables in bulk from the objective or constraints of a constrained quadratic model.

- Make `SampleSet.relabel_variables()` non-blocking in all cases. Previously it would block when `inplace=False`.

- Implement `SampleSet` serialization schema version 3.2.0.

Version 3.2.0 replaces `float` values that represent integers with `int` in the `"data"` field of any arrays returned by `SampleSet.to_serializable()`. In some pathological cases this can result in a much smaller representation when the data dictionaries are json-serialized by avoiding the redundant `.0` appended to every value.

This is a backwards-compatible change.

- Add `penalization_method` parameter to `BinaryQuadraticModel.add_linear_inequality_constraint()`. It allows the use of unbalanced penalization <https://arxiv.org/abs/2211.13914> instead of the slack variables method for the inequality constraints.

- Add `mimo()` function for generating a multi-input multiple-output (MIMO) channel-decoding problem.

- Add `coordinated_multipoint()` function for generating a coordinated multi-point (CoMP) decoding problem.

Upgrade Notes

- Make the arguments of `DiscreteQuadraticModel.to_file()` keyword-only.

- Remove the `ObjectView.to_file()` method.

- Remove the `ConstraintView.to_file()` method.

- Remove `dimod::lp` C++ namespace.

- Drop support for Python 3.7.

Bug Fixes
- Fix `ConstrainedQuadraticModel.from_discrete_quadratic_model()` incorrectly formulating the discrete constraints. This bug was
introduced in version 0.12.7.

- Fix `dimod.generators.frustrated_loop()` to correctly handle graphs with tuple labels. See [\1342](https://github.com/dwavesystems/dimod/issues/1342).

- Fix ``dimod::ConstrainedQuadraticModel::fix_variables()`` C++ method to work correctly with quadratic objectives and constraints. This fixes a bug introduced in dimod 0.12.5. See [1351](https://github.com/dwavesystems/dimod/issues/1351).

- Fix the behavior of `SampleSet.relabel_variables()` when `inplace=True`. Previously the method incorrectly returned a copy when the sample set was unresolved.

Page 15 of 29

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.