Skip to content
This repository was archived by the owner on Jun 2, 2025. It is now read-only.

proxsuite-nlp v0.8.0

Compare
Choose a tag to compare
@ManifoldFR ManifoldFR released this 16 Sep 09:01
· 100 commits to main since this release
v0.8.0

This version introduces an API-breaking change: constraints and manifolds are now managed using the polymorphic value type xyz::polymorphic<class T, class A> container from jboe. This container implements some kind of type erasure method to function and give us something that behaves like a value and a pointer to a polymorphic base type at the same time.

This change might not be the last iteration. We still have an OOP class hierarchy for the manifolds and constraints, which we could look at removing in the future using another type-erasure method.

For users of the C++ API: No need to allocate a shared_ptr<ManifoldType> using e.g. std::make_shared<ManifoldType>(args...). Everything can be passed as values! See the changes in the C++ examples.

What's Changed

  • [API breaking] Use polymorphic value type holder for manifolds and constraint sets in #90 by @jorisv and @ManifoldFR
  • CMake: allow use of installed jrl-cmakemodules & Eigenrand by @nim65s in #106
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #103

New Contributors

Full Changelog: v0.7.1...v0.8.0