All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Note: This is the Changelog file of opengen - the Python interface of OpEn
0.9.4 - 2025-05-08
- Fixed issues with cross compilation (each sub-project has its own
.cargo/config.toml) and updated documentation
- Rename auto-generated bindings file from
.cargo/configto.cargo/config.toml(backwards compatible change) - Updated min cmake version from 2.8 to 3.5
- Updated auto-generated example C/C++ bindings
0.9.3 - 2024-12-06
- Email alias in
setup.py
0.9.2 - 2024-11-05
- In CasADi-generated C files some functions are made static to avoid clashes when creating multiple solvers
0.9.1 - 2024-10-14
- Handling kill code in TCP server interface to get rid of warning
0.9.0 - 2024-08-15
- Support for affine spaces in code generation (see
opengen.constraints.AffineSpace) - TCP solver status can be printed
0.8.1 - 2024-07-17
- Python direct interface support for ARM-based Macs
- Updated GitHub Actions to use the macos-latest runner
- Updated GitHub Actions to use Python3.12 (required for above)
0.8.0 - 2024-03-20
- Code generation support for Sphere2
0.7.1 - 2022-02-14
- Method
.buildreturns a dictionary with information that can assist debugging
- Default argument in
.with_preconditioning - Updated all docstrings to be sphinx-compatible
- New API docs
0.7.0 - 2022-10-11
- Code generation and support for preconditioning
0.6.13 - 2022-8-12
- Removing timestamps from auto-generated files
- Removing random strings from function names (no mangling)
0.6.12 - 2022-8-8
- Got rid of Rust warnings for generated code
0.6.11 - 2022-3-10
- Changed f-strings (
f"{variable}") to.formatfor python3.5 compatibility - Fixed typo in
tcp_server.rs
0.6.9 - 2022-1-24
- Forced use of clap v2 because migration required for v3
0.6.8 - 2021-12-3
- Fixed bug in python code file generation for Windows users
0.6.7 - 2021-11-1
- Support for simplices and ell1 balls via code generation
0.6.6 - 2021-10-27
- Support for
rpmallocandjemallocusingBuildConfiguration.with_allocator - Implementation/testing of projection on simplices (
simplex.py) (addresses #234) - Implementation/testing of projection on Ball-1 (
ball1.py) (addresses #238) # Safetysection in auto-generated unsafe auto-generated Rust code
- Unnecessary
#[no_mangle]s in auto-generated Rust code
- Took care of most clippy warnings in Rust and auto-generated Rust code
0.6.5 - 2021-04-16
- Include
VERSIONfile inMANIFEST.in(included in Python package) - Bump versions:
cbindgen:0.8 --> 0.20.*andlibc:0.2.0 -> 0.2.*
0.6.4 - 2020-10-21
- Accessing Rust from Python directly using PyO3
- List of authors in
Cargo.tomlis generated properly - Fixed bug when curvature is zero
enable_tcp_interfacepreviously gave aDeprecationWarning; now it raises it. In a future version, it will be removed.
0.6.3 - 2020-10-06
- Fixed bug #210: Cartesian products in code generation
- Fixed bug #211:
OptimizerTcpManagerand remote connections
0.6.2 - 2020-09-27
- Fixed issue with TCP connections in Release mode (PR #206)
0.6.1 - 2020-09-10
OptimizerTcpManager: ip and port can be set dynamically
0.6.0 - 2020-09-03
- Support for half-spaces in problem constraints
- Added checks for
segmentsinCartesianProduct
- Dropping first argument in
Cartesian(dimension) as it is unnecessary - Documented class
CartesianProduct - Dropped
dimensionfrom constructor ofCartesianProduct(breaking change)
- Issue #185: ROS config parameters are ignored
0.5.0 - 2020-05-12
- Prevent multiple log messages from printing
- Check if TCP port is available before starting server
- Auto-generation of ROS packages
- Cost value at solution is returned
- Reorganised template files into folders
0.4.1 - 2020-04-13
- Project-specific
icasadidependency - Project-specific
tcp_ifaceTCP interface - Fixed
lbfgstypo