pyOptSparse
Python optimization framework.
Release timeline (newest first, grouped by year and version)
2026 4 entries
2.x
- v2.15.1 release
## What's Changed * Fix IPOPT installation option list rendering in docs by @A-CGray in https://github.com/mdolab/pyoptsparse/pull/479 * Slow down TP109 function evaluation to fix SNOPT testing issue by @A-CGray in https://github.com/mdolab/pyoptsparse/pull/478 * Updated minimum
source: github-release - v2.16.1 release
## What's Changed * Update types by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/466 * Add sparse matrix and scaling tests by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/486 * Fix mpi4py import in test_optProb by @eirikurj in https://github.com/mdolab/pyoptsparse
source: github-release - v2.16.0 release
## What's Changed * Fix mutable default argument in optimizer `__init__`s by @A-CGray in https://github.com/mdolab/pyoptsparse/pull/484 * Add an unopy interface by @robfalck in https://github.com/mdolab/pyoptsparse/pull/483 **Full Changelog**: https://github.com/mdolab/pyoptspars
source: github-release - v2.15.0 release
## What's Changed * Build with mesonpy by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/433 * Update docs and prep for 2.15 release by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/475 **Full Changelog**: https://github.com/mdolab/pyoptsparse/compare/v2.14.5...v2.15
source: github-release
2025 8 entries
2.x
- v2.14.5 release
## What's Changed * Update maintainers file by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/471 * Bug fix in IPOPT wrapper by @kanekosh in https://github.com/mdolab/pyoptsparse/pull/470 **Full Changelog**: https://github.com/mdolab/pyoptsparse/compare/v2.14.4...v2.14.5
source: github-release - v2.14.4 release
## What's Changed * Minor improvements to `addConGroup` by @A-CGray in https://github.com/mdolab/pyoptsparse/pull/463 * Support calling `addObjective` on subset of procs by @A-CGray in https://github.com/mdolab/pyoptsparse/pull/465 * Update documentation on IPOPT options by @kane
source: github-release - v2.14.3 release
## What's Changed * Add note on installing tkinter for optview by @A-CGray in https://github.com/mdolab/pyoptsparse/pull/453 * Add autolink by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/452 * Ruff fixes by @A-CGray in https://github.com/mdolab/pyoptsparse/pull/455 * Add
source: github-release - v2.14.2 release
## What's Changed * Fix SolutionInform dict access by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/451 **Full Changelog**: https://github.com/mdolab/pyoptsparse/compare/v2.14.1...v2.14.2
source: github-release - v2.14.1 release
## What's Changed * Add unconstrained tests for all optimizers by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/402 * Change solution inform into a dataclass by @eirikurj in https://github.com/mdolab/pyoptsparse/pull/437 **Full Changelog**: https://github.com/mdolab/pyopts
source: github-release - v2.14.0 release
## What's Changed * Switch to cyipopt by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/425 * Add bare-bones GHA tests by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/434 * Add function to return list of installed optimizers by @ewu63 in https://github.com/mdolab/py
source: github-release - v2.13.1 release
## What's Changed * Improve windows build by @whophil in https://github.com/mdolab/pyoptsparse/pull/428 * Update removed C API in py313 by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/426 * Version bump 2.13.1 by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/430 **
source: github-release - v2.13.0 release
## What's Changed * Use `packaging` instead of `pkg_resources` by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/412 * Strongly enforce SLSQP Bounds by @andrewellis55 in https://github.com/mdolab/pyoptsparse/pull/413 * IPOPT now returns Lagrange multpliers using the same si
source: github-release
2024 5 entries
2.x
- v2.12.0 release
## What's Changed * Added linear constraint check and updated documentation by @kanekosh in https://github.com/mdolab/pyoptsparse/pull/410 * Added restartDict to snstop by @sseraj in https://github.com/mdolab/pyoptsparse/pull/404 **Full Changelog**: https://github.com/mdolab/pyop
source: github-release - v2.11.3 release
## What's Changed * Fix `_masterFunc2` fail flag caching and add fail flag identification to IPOPT by @eytanadler in https://github.com/mdolab/pyoptsparse/pull/407 **Full Changelog**: https://github.com/mdolab/pyoptsparse/compare/v2.11.2...v2.11.3
source: github-release - v2.11.2 release
## What's Changed * flush streams and files before/after optimization by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/403 * Version bump by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/406 **Full Changelog**: https://github.com/mdolab/pyoptsparse/compare/v2.11.1..
source: github-release - v2.11.1 release
## What's Changed * fix skip message by @swryan in https://github.com/mdolab/pyoptsparse/pull/398 * Update name by @ewu63 in https://github.com/mdolab/pyoptsparse/pull/397 * Adding ability to reduce the amount of text printed when displaying optimization results by @crecine in ht
source: github-release - v2.11.0 release
## Bugfix * fixed convertJacobian by @gjkennedy in https://github.com/mdolab/pyoptsparse/pull/371 * Fix formatting in SLSQP output file by @eirikurj in https://github.com/mdolab/pyoptsparse/pull/378 * Fix SNOPT printout encoding and skip printing import warnings by @ewu63 in http
source: github-release
2023 5 entries
2.x
- v2.10.2 release
## Maintenance * Adjust SNOPT option formatting by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/349 * Installation docs update by @kanekosh in https://github.com/mdolab/pyoptsparse/pull/350 * Make nsga2 tests optional + docs update by @nwu63 in https://github.com/mdolab/p
source: github-release - v2.10.1 release
## New Features * Save more variables by default in SNOPT history file by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/347 ## Maintenance and Bug Fixes * Remove callables from optProb only when serializing in History file by @nwu63 in https://github.com/mdolab/pyoptsparse
source: github-release - v2.10.0 release
## New and Deprecated features * Remove some warnings by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/343 * NOTE: This PR introduces backward incompatible changes * provide Solution in top-level init by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/341 ## Maintenan
source: github-release - v2.9.4 release
## New Features * Add ability to specify search path for SNOPT import with env var by @whophil in https://github.com/mdolab/pyoptsparse/pull/338 ## Bug Fixes * Update informs list to be consistent with SNOPT 7.7 + updating docstrings for flake8 rst checks by @marcomangano in http
source: github-release - v2.9.3 release
## New features * Added inform to the string representation of the solution. by @robfalck in https://github.com/mdolab/pyoptsparse/pull/320 ## Bug Fixes * Fix `sol.fStar` for NSGA2 by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/330 ## Maintenance * Black style fix for up
source: github-release
2022 8 entries
2.x
- v2.9.2 release
## New features * Allow user to write stuff into iterDict by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/311 ## Maintenance * Replaced np.int with int by @sseraj in https://github.com/mdolab/pyoptsparse/pull/319 ## Documentation * Updated IPOPT build instructions for oth
source: github-release - v2.9.1 release
## Features * Enable user requested termination of IPOPT by @swryan in https://github.com/mdolab/pyoptsparse/pull/305 * Add enum for optimizers by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/309 ## Bug fixes * Hard code meson version for Windows build so that tests pass
source: github-release - v2.9.0 release
The only change for this release is the adoption of meson as the build system for pyOptSparse. This offers several benefits for end users, the main one being experimental support of Windows builds. ## What's Changed * Meson Build + Proper Windows Support by @jackm97 in https://gi
source: github-release - v2.8.3 release
## Bug fixes * Update funcs with values from the cache by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/302 **Full Changelog**: https://github.com/mdolab/pyoptsparse/compare/v2.8.2...v2.8.3
source: github-release - v2.8.2 release
## New features None ## Bug fixes * Switch to shallow copy for options by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/298 ## Documentation * Updated docstrings for linear constraint by @kanekosh in https://github.com/mdolab/pyoptsparse/pull/299 ## Maintenance * Updated Y
source: github-release - v2.8.1 release
## New Features N/A ## Bug fixes * Fixed hot start gradient bug by @sseraj in https://github.com/mdolab/pyoptsparse/pull/285 ## Maintenance * Update azure-pipelines.yaml by @marcomangano in https://github.com/mdolab/pyoptsparse/pull/286 * Np float remove by @marcomangano in https
source: github-release - v2.8.0 release
## New features * Add support for snstop and hot start in pySNOPT by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/284 **Full Changelog**: https://github.com/mdolab/pyoptsparse/compare/v2.7.0...v2.8.0
source: github-release - v2.7.0 release
## New features * Add message attribute to Exceptions by @Laurentww in https://github.com/mdolab/pyoptsparse/pull/277 * Suppress SNOPT minor print log by @nwu63 in https://github.com/mdolab/pyoptsparse/pull/279 * Added iteration timing to history file by @nwu63 in https://github.
source: github-release
2021 9 entries
2.x
- v2.6.4 release
## New features None ## Bug fixes - Remove `deepcopy` of sensitivity dict to improve performance (#275) - Fixed an issue for the save_tec func in OptView (#276) ## Documentation - Added note in documentation on macOS/Windows builds (#274)
source: github-release - v2.6.3 release
# New features None # Bugfix - Allow objFun pickling (#266) # Maintenance - Remove other linked libraries when building ipoptcore (#265) - Convert to f-strings (#271) - pyupgrade code (#270) - Update testing (#272) # Documentation - Add conda to docs (#267)
source: github-release - v2.6.2 release
## Features None ## Bug fixes - Fixed IPOPT duplicate entries in the history file (#252) ## Maintenance - Added testing coverage tool (#248, #249) - Refactored tests (#251) - Other maintenance (#247)
source: github-release - v2.6.1 release
## Features None ## Bug fixes - Updated IPOPT printing (#233, #235) - Fixed complex casting in FD (#243) - Remove misleading Optimum key from terminal printout (#242) ## Maintenance - Added type hinting (#230) - Updated docs(#234, #246) - Changed DeprecationWarning to the default
source: github-release - v2.6.0 release
## Features None ## Bug fixes - Made stored function values real (#225) - Fix counters bug (#232) ## Maintenance - Formatting updates + added isort (#226) ## Backwards-incompatible changes - Removed NOMAD wrapper (#229)
source: github-release - v2.5.1 release
## Features None ## Bug fixes - Fixed `sol.fStar` (#217) - Fix several issues with hotstart (#219) ## Upcoming API Changes - Refactored finalize functions (#221 and #223). Note that we have renamed the functions `finalizeDesignVariables()` and `finalizeConstraints()` and made the
source: github-release - v2.5.0 release
## Features - Added a Dash version of OptView (#200) - The gradient function `sens` can now be specified when initializing the Optimization problem (#212) - The SNOPT version is now stored in the history file (#214) ## Bugfixes None ## Documentation and Maintenance - Switched to
source: github-release - v2.4.1 release
# pyOptSparse v2.4.1 release notes This is a patch release that fixes several bugs: - changed SLSQP output file id (#198) - fixed SNOPT workspace lengths (#197) In particular, #197 fixes a critical bug introduced in v2.4.0 that prevents certain large optimizations from running wi
source: github-release - v2.4.0 release
# pyOptSparse v2.4.0 release notes This is a minor release that adds `mdolab-baseclasses` as a dependency. It should be automatically pip-installed from PyPI if it is not available locally. No other user-facing changes are expected, but see #193 for full details. To be clear, ext
source: github-release
2020 17 entries
2.x
- v2.3.0 release
pyOptSparse v2.3.0 release notes ====================== This release adds support for SNOPT v7.7.5 (#185), including two new features: - `Backoff factor` - `Proximal iterations limit`
source: github-release - v2.2.2 release
# pyOptSparse v2.2.2 release notes Highlights: - Non-objective/constraint values stored in the history file can now be accessed via `getValues` (#184) - pyOptSparse now has a journal paper! The citation information has been updated (#178) - Various maintenance updates
source: github-release - v2.2.1 release
# pyOptSparse v2.2.1 release notes This is a patch release primarily focused on documentation updates. - Documentation updates (#171, #172, #173, #175) - Added JOSS paper preprint files (#176)
source: github-release - v2.2.0 release
# pyOptSparse v2.2.0 release notes ## Backwards-incompatible changes - Python 2 is now no longer supported (#164). We currently run tests using Python 3.7 and 3.8, but other versions of Python 3 may also work. - The flat, OpenMDAO-style sensitivity dictionary is no longer support
source: github-release - v2.1.7 release
pyOptSparse v2.1.7 release notes ===================== This is another patch release for pyOptSparse. Changes are: - Fixed bug for unconstrained optimization with PSQP, CONMIN, and NLPQLP (#162) - Documentation update (#161) - Removed patch version from dependencies (#160)
source: github-release - v2.1.6 release
# pyOptSparse v2.1.6 release notes This is another patch release for pyOptSparse. Highlights: - Fixed installation bug for IPOPT (#153) - Updated documentation and other maintenance tasks
source: github-release - v2.1.5 release
# pyOptSparse v2.1.5 release notes This releases fixes the following bug: - Added negative informs to PSQP (#148)
source: github-release - v2.1.4 release
# pyOptSparse v2.1.4 release notes This is another bugfix release for pyOptSparse. Bug fixes - Various fixes to the History object (#140, #142, #144) Maintenance: - Updated `setup.py` to make `optview` an entry-point available as a CLI program without needing an alias (#134)
source: github-release - v2.1.3 release
# pyOptSparse v2.1.3 release notes This is a patch release for pyOptSparse. Changes are: - Updated IPOPT to support v3.13.2 (#133) - Properly set the informs for all optimizers that support them (#138) - Documentation update (#131)
source: github-release - v2.1.2 release
# pyOptSparse v2.1.2 release notes This is a new patch release of pyOptSparse. New features: - Added new environment variable controlling MPI import (#118, #121) - Added ParOpt support, now pinning ParOpt version 2.0.2 Maintenance updates: - Updated documentation (#123, #130) - R
source: github-release - v2.1.1 release
# pyOptSparse v2.1.1 release notes This is a new patch release of pyOptSparse. ## Bug fixes - Fix for multiplier extraction (#103) - Fix for complex value in optimization summary print out (#102) - Fix bug in `setDVs` when setting a subset of DVs (#109) ## Code Maintenance - Adde
source: github-release - v2.1.0 release
# pyOptSparse v2.1.0 release notes This is a new minor release of pyOptSparse. ## New Features - Added new API for accessing pyOptSparse history files (#84, #87, #99) ## Bugfixes and Code Maintenance - Updated informs from IPOPT (#91) - Code cleanup for Python 3 and updated Travi
source: github-release - v2.0.3 release
# pyOptSparse v2.0.3 release notes This is a minor bugfix release related to the Lagrange multiplier scaling in the solution object. See #81 for details.
source: github-release - v2.0.2 release
# pyOptSparse v2.0.2 release notes This is a bugfix release to address #80 related to hotstarts when saving the history file.
source: github-release - v2.0.1 release
# pyOptSparse v2.0.1 release notes This is a bugfix release. We have removed the git commit hash from the history file due to 1. unless the code is pip-installed in place (via `-e`), the approach will not work in extracting the hash 2. there's a possibility that this causes some
source: github-release - v2.0 releasemajorMajor version 2
# pyOptSparse v2.0 release notes ## Features - Support for SNOPT v7.2 has been removed. **From this version forward the code will not be compatible with SNOPT v7.2**. The currently tested version of SNOPT is v7.7. This is due to `pySNOPT` switching to a different entry point for
source: github-release
1.x
- v1.2 release
This is another minor release. Notable changes are: - `sqlitedict` is now an external dependency, no longer provided by pyoptsparse itself - a `requirements.txt` file is provided to facilitate installation of Python dependencies - IPOPT wrapper has been updated to work with Pytho
source: github-release
2019 2 entries
1.x
- v1.1 release
This release mainly provides the feature in PR #63, which allows for triggering of user-requested termination in SNOPT. See [POEM 002](https://github.com/OpenMDAO/POEMs/pull/6) for the rationale and additional information. Additional bug fixes: - #62 - #60 - #59
source: github-release - v1.0 releasemajorFirst release
This is a release of the current codebase as we transition to using software versioning. As such, there are no major changes to the code, we are simply releasing the existing version as v1.0. The `release_notes.md` file highlights some recent changes.
source: github-release