Dimod

Latest version: v0.12.15

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

Scan your dependencies

Page 5 of 26

0.12.0

Prelude

The entire C++ library has been rewritten for performance and consistency.

New Features

- New `dimod::abc::QuadraticModelBase` abstract base class.

<!-- -->

- Better performance for linear models.

<!-- -->

- Add `dimod.cyqmbase.cyQMBase_template` Cython class to serve as an abstract base class for Cython quadratic models.

<!-- -->

- Break `dimod/libcpp.pxd` into a full Cython subpackage to mirror the structure under `dimod/include/`. This allows for better organization, and less need to recompile all Cython files when changing parts of the C++ library. Packages that depend on dimod are still encouraged to use the `from dimod.libcpp cimport ...` syntax.

<!-- -->

- Build wheels for Python 3.11.

- Add C++ `dimod::ConstrainedQuadraticModel` class.

<!-- -->

- Add C++ `ConstrainedQuadraticModel.add_constraint()` overload that allows a user to move a binary quadratic model or quadratic model as a constraint.

<!-- -->

- Add C++ `ConstrainedQuadraticModel.constraint_weak_ptr()` method.

<!-- -->

- Make `BinaryQuadraticModel.vartype` callable. This allows for more uniform syntax between binary quadratic models, quadratic models and constrained quadratic models.

<!-- -->

- Replace current `ConstrainedQuadraticModel` implementation with one implemented in Cython.

<!-- -->

- Add `ConstrainedQuadraticModel.clear()` method.

Bug Fixes

- Fix a performance regression introduced in 0.10.0 when loading linear binary quadratic models from files.

<!-- -->

- Fix the handling of self-loops in `dimod::Expression::add_quadratic()` and similar methods.

<!-- -->

- Fix C++ `ConstrainedQuadraticModel.remove_variable()` method. Previously it would segmentation fault.

Upgrade Notes

- Rewrite `dimod::QuadraticModelBase` and move it to `dimod::abc::QuadraticModelBase` in `abc.h`.

<!-- -->

- Move `dimod::Vartype`, `dimod::vartype_info`, and `` dimod::vartype_limits` to ``vartypes.h\`\`.

<!-- -->

- Remove the `dimod::Neighborhood` class.

<!-- -->

- Remove `iterators.h`.

<!-- -->

- Move `dimod::BinaryQuadraticModel` to `binary_quadratic_model.h`.

<!-- -->

- Remove `dimod.binary.cybqm.cyBQMBase` class.

<!-- -->

- Remove `dimod.quadratic.cyqm.cyQMBase` class.

<!-- -->

- Build `manylinux2014` wheels. Previously we built `manylinux2010`.

<!-- -->

- Build `arm64` and `x86_64` wheels for macos. Previously we built `x86_64` and `universal2`.

Deprecation Notes

- Deprecate the `cascade` keyword argument in `ConstrainedQuadraticModel.fix_variable()`.

<!-- -->

- Deprecate the `cascade` keyword argument in `ConstrainedQuadraticModel.fix_variables()`.

0.12.0rc1

0.12.0.dev3

Fixes

- Fix C++ ``ConstrainedQuadraticModel.remove_variable()`` method. Previously it would segmentation fault.

0.12.0.dev2

0.12.0.dev1

New Features

- Add C++ `dimod::ConstrainedQuadraticModel` class.

<!-- -->

- Make `BinaryQuadraticModel.vartype` callable. This allows for more uniform syntax between binary quadratic models, quadratic models and constrained quadratic models.

<!-- -->

- Replace current `ConstrainedQuadraticModel` implementation with one implemented in Cython.

0.12.0.dev0

Prelude

The entire C++ library has been rewritten for performance and consistency.

New Features

- New `dimod::abc::QuadraticModelBase` abstract base class.

<!-- -->

- Better performance for linear models.

<!-- -->

- Add `dimod.cyqmbase.cyQMBase_template` Cython class to serve as an abstract base class for Cython quadratic models.

<!-- -->

- Break `dimod/libcpp.pxd` into a full Cython subpackage to mirror the structure under `dimod/include/`. This allows for better organization, and less need to recompile all Cython files when changing parts of the C++ library. Packages that depend on dimod are still encouraged to use the `from dimod.libcpp cimport ...` syntax.

<!-- -->

- Build wheels for Python 3.11.

Upgrade Notes

- Rewrite `dimod::QuadraticModelBase` and move it to `dimod::abc::QuadraticModelBase` in `abc.h`.

<!-- -->

- Move `dimod::Vartype`, `dimod::vartype_info`, and `` dimod::vartype_limits` to ``vartypes.h\`\`.

<!-- -->

- Remove the `dimod::Neighborhood` class.

<!-- -->

- Remove `iterators.h`.

<!-- -->

- Move `dimod::BinaryQuadraticModel` to `binary_quadratic_model.h`.

<!-- -->

- Remove `dimod.binary.cybqm.cyBQMBase` class.

<!-- -->

- Remove `dimod.quadratic.cyqm.cyQMBase` class.

<!-- -->

- Build `manylinux2014` wheels. Previously we built `manylinux2010`.

<!-- -->

- Build `arm64` and `x86_64` wheels for macos. Previously we built `x86_64` and `universal2`.

Page 5 of 26

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.