Pyomo

Latest version: v6.9.1

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

Scan your dependencies

Page 9 of 15

5.1

-------------------------------------------------------------------------------

- Added a CONOPT plugin to handle a custom SOL file output (88)
- Changed 'pyomo solve' to use any Model object that is found, rather than
requiring the default object to be named 'model' (80)
- Reworked the solver testing infrastructure to enable enumeration of all
test scenarios, which is used by 'pyomo test-solvers' (78)
- Fixes for xpress solver options writer (79)
- Resolved an issue where Pyomo was unnecessarily cloning most inequality
expressions (80)
- Reworked the Pyomo *.DAT file parser and post-parse processing logic. This
eliminates parse ambiguities that were causing test failures.
- Finalized book test examples for the new edition of the Pyomo book
- Added pyomo.contrib to support integration of third-party Pyomo libraries
in a standard manner
- Fixed TravisCI testing issues where the incorrect version of Python was being
tested
- Fixed error messages in pyomo.dae (81)
- Revised CBC interface to recognize intermediate non-integer solutions (77)
- Added checks for IPOPT test failures based on version info (72)
- Removed support for OpenOpt

-------------------------------------------------------------------------------

5.0.1

-------------------------------------------------------------------------------

- Updating PyUtilib dependency

-------------------------------------------------------------------------------

5.0

-------------------------------------------------------------------------------

- Added examples used in the Pyomo book to the Pyomo software repos
- Added support for automatically generating "template expressions"
- Fix tuple flattening in the case of unhashable SimpleParam in indexes
- Deactivated solver plugins before the are returned from the SolverFactory
- Significantly simplified the polynomial_degree() logic for Pyomo4 expressions
- Updates to expression logic
- Adding a 'feasible' attribute to the TerminationCondition Enum
- Updates to ExternalFunction logic
- Renamed the component name() method to getname() and added a 'name' property
- Fix to allow creating undefined (and uninitialized) mutable params
- Added more careful checks in Set() and Param() to ensure that an abstract set
expression is not evaluated
- Added DAE examples to Pyomo

-------------------------------------------------------------------------------

4.4.1

-------------------------------------------------------------------------------

- Fixing PyUtilib dependency version.

-------------------------------------------------------------------------------

4.4

-------------------------------------------------------------------------------

- Output a warning in benders when the solver interface used to solve the
master problem does not report a solution gap
- Document DAE transformations (28)
- Allow use of ellipsis in the middle of the indices when slicing
- The Component slicing logic now uses simple slices (`:`) for matching a
single index and the Ellipsis (`...`) for matching zero or more indices.
- Fixing Python 3 compatibility problems in pyomo.dae & dae examples.
- Support evaluating external functions in AMPL-stype shared libraries.
- Renaming "BasicExternalFunction" to "AMPLExternalFunction"
- Allowing Params to be used in setting bounds on a ContinuousSet.
- Use HTTPS with NEOS
- Allow a mutable Parameter that has not been initialized with a value to
be used in the rhs of an equality constraint. (13)
- Updates to SolverFactor to better support functionality offered by the
'executable' keyword for SystemCallSolver.
- Updates to writers to enforce consistent output ordering in quadratic
expressions.
- Improving the error message for Constraint rules that return None
- Adding PySP solver interface to the SD solver
- Adding an implicit SP representation to PySP that uses annotations
for declaring mutable parameters as stochastic data and providing
a distribution (only tables supported for now).
- Partial fix for infinite recursion reported (6). This will support
creating scalar (simple) components by passing a set([None]) in
as the index.
- Extending component slicing ability to nested (hierarchical) slices.

-------------------------------------------------------------------------------

4.3

-------------------------------------------------------------------------------

- Scripts
- pyomo_install
- Added --pip-options to specify options for PIP option
- Added --index-url to specify the PyPI mirror
- Restructured this script to make it more modular
- Deprecated the --with-extras option
- Added "--venv-only" option for setting up a local python virtual
environment with no additional packages (apart from pip, setuptools, and
potentially wheel).
- Fixes when installing from zip files offline.
- get-pyomo-extras.py
- Misc fixes and updates
- pyomo
- Consolidated help information within the 'pyomo help' subcommand
- Added 'pyomo install-extras' to install third-party dependencies
- pyomo.bilevel
- Major changes to get the bilevel_ld solver working
- Extended the logic in SubModel to allow for implicit declarations of
upper-level variables.
- pyomo.check
- More complete scoping checks
- pyomo.core
- Changes to allow sorted output using DataPortal objects
- Bug fix in linear dualization transformation
- Adding a mechanism to load default configuration information from a
standard location.
- Changes to allow objectives to be used inside expressions, and to
allow objectives to be sent through the solver plugins
- Updating blocks so that models can be created and populated using rule options
- Added a domain property method to IndexedVar so it cannot be treated as having
a single domain
- Added the Var() 'dense' option. This defaults to True, which defines variables
densely. But sparse variables are defined when dense==False.
- Change to define a SOS constraint over the declared index set for a variable
unless an explicit index set is provided.
- Changes to ensure that most components do not define their data densely.
- pyomo.dae
- Updates to support Python3 and current Pyomo Transformation API
- Fixed the collocation extension to reduce the degrees of freedom for certain variables
- pyomo.gdp
- Many fixes to bilinear transformation
- Fixed the Big-M estimation routine to work with constant expressions
- pyomo.neos
- Added support for ephemeral solver options, which over-ride the
options dictionary
- Fixes to enable loading of solutions from NEOS solvers
- pyomo.opt
- Sort variable names when printing results
- Many fixes to sol reader.
- pyomo.pysp
- Updates to ScenarioStructure.dat to handle a larger
class of models that can have non-uniform variable sets
in later time stages. Also updating parsing rules to
allow for more convenient variable declarations
- NodeVariables / NodeDerivedVariables can be used in
place of StageVariables / StageDerivedVariables to
declare variables on a per-node basis
- Indexed variables can be declared without bracket
notation (e.g., x[*,*] -> x)
- Single or indexed block names can be used to
conveniently declare all variables found on that
block within a node or stage
- Re-write of runef and runbenders based off of new PySP
scripting tools
- Adding option to runbenders for including one or more
scenarios in the master benders problem
- Fixes to csvsolutionwriter so that it works with
distributed PH
- Added new script (evaluate_xhat) that allows users to
evaluate SP solutions on alternate scenario trees.
- Added more extensive checking to PySP->SMPS conversion
utility (pysp2smps) to alert users when conversion fails
due to non-uniform problem structure or missing
stochastic annotations
- Added helper routine to convert a networkx directed
graph into a PySP scenario tree model
- Fixes to PH for better handling of user warmstarts
- pyomo.repn
- Updates to the NL writer to handle new expression types.
- Added an MPS writer
- pyomo.scripting
- Updated the Pyro mip server to improve its efficiency
- pyomo.solvers
- Updates to xpress plugin to use the ASL interface to xpress.
- Fixed a major issue with the gap computation in the CPLEX direct/persistent
solver plugins
- Significant speed-up of the the CPLEX persistent plugin.
- Added the 'mps' mode for various solvers.
- Changes to the Pyro solver manager to allow out-of-order results collection

-------------------------------------------------------------------------------

Page 9 of 15

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.