Releases: mechmotum/cyipopt
Releases · mechmotum/cyipopt
Version 1.5.0
Added
- Added instructions for using the HSL solvers on Windows. #254
Changed
- Dropped support for Python 3.8. #263
- Dropped support for building the package with NumPy < 1.25. #263
What's Changed
- Fixed #249, ensure intermediate_cb returns its value if no exception. by @moorepants in #250
- Add install instructions for HSL on windows by @avdudchenko in #254
- Updated unit tests to call coo_array on 2d arrays not 1d arrays due to change in behavior in SciPy 1.13. by @moorepants in #257
- Remove deprecated oldest-supported-numpy from pyproject.toml. by @moorepants in #263
New Contributors
- @avdudchenko made their first contribution in #254
Full Changelog: v1.4.1...v1.5.0
Version 1.4.1
[1.4.1] - 2024-04-02
Fixed
- Addressed regression in return value of
intermediate_cb
. #250
Full Changelog: v1.4.0...v1.4.1
Version 1.4.0
[1.4.0] - 2024-04-01
Added
- Support for building with Cython 3. #227, #240
- Exposed the
eps
kwarg in the SciPy interface. #228 - Added the examples to the source tarball. #242
- Documentation improvements on specifics of Jacobian and Hessian
inputs. #247 - Support for Python 3.12.
Fixed
- Ensure
tol
is always a float in the SciPy interface. #236 print_level
allows integers other than 0 or 1. #244
What's Changed
- TST: minimize_ipopt: add back test_gh1758 by @mdhaber in #229
- Enable support for cython 3 by @chrhansk in #227
- ENH: expose 'eps' option for finite difference step size by @mdhaber in #228
- Fully allow Cython 3. by @moorepants in #240
- Covert tol to float before passing to ipopt. by @moorepants in #236
- Add examples/ and docs/requirements.txt to source distribution by @musicinmybrain in #242
- Fix #234 by @MarkusZimmerDLR in #244
- Error message spelling indicates incorrect callback name by @lynntf in #246
- Add clarity to jacobian/hessianstructure methods by @lynntf in #247
- Version 1.4.0 by @moorepants in #248
New Contributors
- @MarkusZimmerDLR made their first contribution in #244
- @lynntf made their first contribution in #246
Full Changelog: v1.3.0...v1.4.0
Version 1.3.0
[1.3.0] - 2023-09-23
Added
- Added a
pyproject.toml
file with build dependencies. #162 - Added support for sparse Jacobians in the SciPy interface. #170
- Added
get_current_iterate
andget_current_violations
methods to
Problem class. #182 - Added installation instructions for Ubuntu 22.04 LTS apt
dependencies. - Added a script to build manylinux wheels. #189
- Improved documentation of
minimize_ipopt()
. #194 - Added support for all SciPy
minimize()
methods. #200 - Added support for SciPy style bounds in
minimize_ipopt()
and added
input validation. #207 - Added new
CyIpoptEvaluationError
and included it in relevance
callbacks. #215 - Added dimension checks for Jacobian and Hessian attributes/methods.
#216
Fixed
- Fixed import of
MemoizeJac
from scipy.optimize. #183 args
andkwargs
can be passed to all functions used in
minimize_ipopt()
. #197- Fixed late binding bug in
minimize_ipopt()
when defining
constraint Jacobians. #208 - Pinned build dependency Cython to < 3. #212 #214 #223
- Fixed installation on Windows for official Ipopt binaries adjacent
tosetup.py
. #220
Changed
- Changed the license to Eclipse Public 2.0. #185
- Updated all dependency pins to match those in Ubuntu 22.04 LTS. #223
What's Changed
- Version 1.2.0 by @moorepants in #159
- Reduce manual pre-installation requirements via pyproject.toml by @nrontsis in #162
- Remove appveyor (and old badges). Fixes #113. by @moorepants in #168
- Add support for sparse jacobians in the scipy-interface by @jhelgert in #170
- Change conda-build-version to mamba-version by @brocksam in #178
- Added Ubuntu 22.04 install instructions, fixes #166. by @moorepants in #184
- Import MemoizeJac from scipy.optimize._optimize. by @moorepants in #183
- Update license to EPL 2.0, fixes #165. by @moorepants in #185
- Change CI to use mambaforge. by @moorepants in #186
- Use oldest-supported-numpy in pyproject.toml by @nrontsis in #188
- Don’t use deprecated/removed np.float alias by @musicinmybrain in #191
- Script for building manylinux wheels by @nrontsis in #189
- DOC: minimize_ipopt: add documentation by @mdhaber in #194
- args and kwargs now work fully for minimize_ipopt by @moorepants in #197
- Remove test.yml, fixes #187. by @moorepants in #199
- Add
get_current_iterate
andget_current_violations
methods to Problem class by @Robbybp in #182 - MAINT: minimize_cyipopt: add input validation by @mdhaber in #206
- MAINT: minimize_ipopt: fix late binding bug when defining constraint Jacobians by @mdhaber in #208
- ENH: minimize_cyipopt: support SciPy
method
s by @mdhaber in #200 - Pin Cython<3 until compatibility can be fixed by @musicinmybrain in #212
- pin cython < 3 by @plakrisenko in #214
- Add
CyIpoptEvaluationError
and handle in callbacks by @Robbybp in #215 - Now picks up Windows Ipopt binary files that are adjacent to setup.py (restores regression) by @moorepants in #220
- ENH: minimize_ipopt: add input validation for
bounds
and support for new-style constraints by @mdhaber in #207 - Add sanity checks to Jacobian / Hessian indices by @chrhansk in #216
- Update the depedency pins to thos available in Ubuntu 22.04 LTS by @moorepants in #223
- Version 1.3.0 by @moorepants in #224
New Contributors
- @nrontsis made their first contribution in #162
- @mdhaber made their first contribution in #194
- @Robbybp made their first contribution in #182
- @plakrisenko made their first contribution in #214
- @chrhansk made their first contribution in #216
Full Changelog: v1.2.0...v1.3.0
Version 1.2.0
[1.2.0] - 2022-11-28
Added
- Added instructions for using the HSL binaries with the Conda Forge binaries.
- Support for Python 3.10 and 3.11.
Fixed
- Improved the type information in the JAX example.
- SciPy MemoizeJac deprecation warning handled.
- Handled KeyErrors upon unknown IPOPT return statuses.
- Removed unnecessary shebangs.
- Improved the Github Actions CI.
Removed
- Dropped support for Python 3.6.
What's Changed
- Version 1.1.0 by @moorepants in #129
- Avoid KeyError upon unknown IPOPT return statuses. by @tobias-kies-artemis in #134
- Fix a couple of small documentation typos by @musicinmybrain in #137
- Improve GitHub Actions by @brocksam in #139
- A little consistency in shebangs and execute bits by @musicinmybrain in #136
- Added instructions about using HSL with conda forge binaries to the documentation. by @moorepants in #138
- Remove deprecated setup.py install approach by @brocksam in #149
- Improve the jax example by @jhelgert in #146
- Avoid SciPy deprecation warning. by @moorepants in #157
New Contributors
- @tobias-kies-artemis made their first contribution in #134
Full Changelog: v1.1.0...v1.2.0
Version 1.1.0
[1.1.0] - 2021-09-07
Added
- Added support for objective and constraint Hessians and
jac=True
option
for constraints in the scipy interface. - Example added showing how to use JAX for calculating derivatives.
Changed
- Releases have been moved to the PyPi cyipopt distribution namespace:
https://pypi.org/project/cyipopt/. Users should now install withpip install cyipopt
. Be sure to uninstall theipopt
distribution first.
Removed
- The six and future dependencies are removed.
What's Changed
- Remove six and future by @moorepants in #112
- Added example using JAX and the scipy interface. by @jhelgert in #119
- Adds configuration to use github actions for testing. by @moorepants in #123
- Add support for objective and constraint hessians and
jac=True
option for constraints in the scipy interface by @jhelgert in #121 - Refactor
objective
,gradient
andevaluate_fun_with_grad
methods by @jhelgert in #128
Full Changelog: v1.0.3...v1.1.0
Version 1.0.3
[1.0.3] - 2021-04-07
Changed
- Changed PyPi distribution name back to
ipopt
, ascyipopt
is
currently unavailable.
[1.0.2] - 2021-04-06
Changed
- Corrected the CHANGELOG.
[1.0.1] - 2021-04-06
Changed
- Corrected the PyPi classifier.
[1.0.0] - 2021-04-06
Added
conda/cyipopt-dev.yml
conda environment file for development.minimize_ipopt
approximates the Jacobian of the objective and the
constraints using SciPy'sapprox_fprime
if not provided
[#91].- Make changes as outlined in Version 1.0 proposal
[#14]. requirements.txt
file.- Dedicated tests using pytest in
cyipopt/tests/
directory. examples/
directory.- Support for Python 3.9.
- Minimum version requirements for all dependencies.
Changed
- Installation and development documentation moved from
README.rst
todocs/
. - Python logger changed to use the
cyipopt
namespace
[#102]. - Class and method names now use PEP8 standards. Old class and method
names now result in a deprecation warning. - Module directory renamed from
ipopt.
tocyipopt
. doc/
folder renamed todocs/
.- Updated
CHANGELOG.rst
.
Deprecated
- Package being imported by
import ipopt
(replaced by
import cyipopt
). - Use of non-PEP8 named classes/function/methods, e.g.
cyipopt.problem
(replaced bycyipopt.Problem
),
cyipopt.problem.addOption
(replaced by
cyipopt.Problem.add_option
),cyipopt.problem.setProblemScaling
(replaced bycyipopt.Problem.set_problem_scaling
) etc.
Removed
test/
folder containing examples, which have mostly been moved to
examples/
docker/
,vagrant/
andMakefile
[#83].- Support for Python 2.7.
- Support for Python 3.5.
Full Changelog: v1.0.2...v1.0.3
Version 0.3.0
- Added support for Conda Forge Windows Ipopt >=3.13 binaries using the
IPOPTWINDIR="USECONDAFORGEIPOPT" environment variable value.
(#78) - Added support for Ipopt >=3.13 on Windows.
(#63)
What's Changed
- Release 0.2.0 by @moorepants in #65
- Remove travis limit on ipopt. by @moorepants in #67
- Add Ipopt 3.13 support for Windows by @apommel in #63
- Try using Conda-Forge's IPOPT Windows build. by @moorepants in #78
Full Changelog: v0.2.0...v0.3.0
Version 0.2.0
- Resolved compatibility issues with Windows.
(#49) - OSError now raised if pkg-config can't find ipopt on installation.
(#57) - Supporting only Python 2.7 and 3.6-3.8. Python 3.5 support dropped.
(#58) - Improvements to the README and setup.py for Windows installations.
(#54) - Drop Python 3.4 support and add Python 3.7 support.
(#51) - Adding installation testing on the Appveyor CI service.
(#50) - Added custom installation instructions for Ubuntu 18.04.
What's Changed
- Update PR #42 by @moorepants in #43
- Resolve compatibility issues with windows by @apommel in #49
- Add an appveyor Windows CI build. by @moorepants in #50
- Drop Python 3.4 support and add 3.7. by @moorepants in #51
- Add some more details on Windows installation by @avikde in #54
- Switch to new miniconda urls. by @moorepants in #56
- Drop Python 3.5 and add Python 3.8 in CI tests. by @moorepants in #58
- Added OSError to handle pkg-config not finding ipopt. by @moorepants in #57
New Contributors
Full Changelog: v0.1.9...v0.2.0
Version 0.1.9
- Fixed encoding issue preventing installation on some OSes.
- Removed SciPy requirements from examples.