Pyomo

Latest version: v6.7.3

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

Scan your dependencies

Page 4 of 14

6.0.1

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

- General
- Catch non-standard file.write() implementations (1999)
- Testing
- Fix miscellaneous tests caught by peripheral test suites (1991)
- GDP Updates
- Switch bigm's M value calculation to always use fbbt (2000)
- Contributed Packages
- FBBT: Add support for LinearExpression (1994)
- PyNumero: Improve management of stdout in cyipopt solver (2001)
- GDPopt: Fix implicit conversion warnings (2002)

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

6.0

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

BACKWARDS COMPATIBILITY WARNINGS
- Moved PySP into a separate package available at
https://github.com/Pyomo/pysp
- Renamed "Simple" components to "Scalar" components
- Removed support for implicit ranged inequalities
- Removed support for component reconstruct method
- Removed support for casting relational expressions to bool
- Removed support for Python 2.7, 3.5, and pypy2

- Drop PyUtilib Dependency
- Replace pyutilib.misc.import_file with pyomo.common.fileutils (1815)
- Replace pyutilib.math with Python math package (1809)
- Remove or replaced pyutilib.misc items (1814, 1822)
- Replace pyutilib.subprocess with Python subprocess (1812)
- Replace pyutilib.th with unittest and pyomo.common.unittest (1859, 1898)
- Remove pyutilib.pyro (1869)
- Remove pyutilib dependencies from Pyomo script (1976)
- Remove hard pyutilib dependency (1980)

- General
- Drop support and testing for Python 2.7, 3.5, and pypy2 (1763, 1818)
- Remove PySP (1819)
- Clean up code for Python 2/3 cross-compatibility, remove use of six
(1829, 1833, 1901, 1908, 1910, 1911, 1876, 1915, 1919,
1931, 1938, 1937)
- Standardize usage of string type comparison (1826)
- Switch default branch of Pyomo from master to main (1843)
- Cleanup console scripts (1830)
- Update import_file to recognize module context (1871)
- Remove 2nd edition Pyomo Book examples (1883)
- Move Container/Options/Bunch into just Bunch (1838)
- Improve handling of enum.Enum domains in ConfigValue (1893)
- Add MANIFEST.in file to include cpp files in PyPI package (1851)
- Add GitHub issue templates for bug reports and feature requests (1920)
- Fix identification of Pyomo root dir in unittest.runtests (1922)
- Update the Config system (1916)
- Resolve numerous deprecation warnings (1935)
- Timing and timing test improvements (1939, 1894, 1945)
- Overhaul deprecated decorator to work better with class, enum, and
sphinx (1906)
- Improve attempt_import mechanism (1940, 1948)
- Stop caching the picklability of function types (1959)
- Support explicit constants in ExternalFunction arguments (1967)
- Add RenameClass metaclass (1973)
- Add 3rd edition Pyomo Book examples and tests (1914)
- Promote assertStructuredAlmostEqual to a module function (1979)
- Core
- Improve sorted_robust for (nested) tuple items (1842)
- Update _component_data_iter to use sorted_robust (1852)
- Disable implicit ranged inequalities (1840)
- Improve error message when constructing a RangeSet with external
data (1875)
- Fix bug in scaling transformation (1854)
- Fix bug in identify_mutable_parameters (1878)
- Fix inequality function to work with floats (1841)
- Update test_model to skip tests if GLPK is not available (1917)
- Rename param._NotValid to param.Param.NoValue (1927)
- Improve error message for disabled methods on Abstract components (1896)
- Propagate exception flag to _EvaluationVisitor (1946)
- Define pprint() for ExternalFunction components (1965)
- Support setting Var and Param values with unit expressions (1966)
- Allow assigning None to a unitted variable (1977)
- Update to only allow constant expressions to be cast to bool (1954)
- Rename "Simple" components to "Scalar" components (1971)
- Add utility for comparing expressions (1981)
- Improve quoting in component names and indices (1982, 1985)
- Remove component.reconstruct() (1983)
- Documentation
- Add documentation and doctests for pyomo.common.timing (1924)
- Update the ReadTheDocs configuration (1929)
- Improve robustness of doctest tests (1942)
- Solver Interfaces
- Track changes in NEOS/RAPOSa expected behavior (1816)
- Fix quadratic term handling for QCQO problems in mosek_direct (1835)
- Remove pyomo.opt.blackbox and the COLIN solver interface (1872)
- Add support for SHOT solver to GAMS interface (1889)
- Fix sign convention in CBC for maximization problems (1848)
- Update gurobi available() checks (1921)
- Update CBC interface to handle infinite gap (1907)
- Preserve CWD when xpress import fails (1958)
- Update baron interface to prevent infinite loop when no solution is
found (1963)
- Remove pyomo.solvers.tests.core (1897)
- Testing
- Clean up Jenkins test driver (1813)
- Update unittest.timeout to work on Windows (1825)
- Manually add commit HASH to codecov upload on GitHub Actions (1824)
- Relax tee/timeout test timing to improve robustness (1831)
- Update Mosek tests (1844)
- Add Casadi to GitHub Actions test environment (1849)
- Disable codecov uploads from forks (1863)
- Update IDAES-ext version used in our GitHub Actions jobs workflows (1882)
- Rewrite test driver script (1870, 1902)
- Rebuild GitHub Actions caches (1934)
- Update expected CBC test failures (1943)
- Update merged reader test to reduce failures in OSX (1953)
- Add non-fatal timeout for nightly NEOS test (1964)
- Do not download/build extensions for slim builds (1988)
- DAE Updates
- Split get_index_set_except into two functions (1879)
- GDP Updates
- Fix multiple References to local variables in nested disjuncts (1968)
- Fix GDP error when using a disjunction with nested disjunctions as a
target (1969)
- Convert Disjunct.indicator_var from binary to boolean variable (1960)
- Network Updates
- Fix bug in cloning Ports (1899)
- Updates to improve interoperability with pyomo.gdp (1961)
- Contributed Packages
- PyNumero: add Hessian support for grey box models, support multiple
grey box models in a single Pyomo model, add callback functionality
to cyipopt interface, track changes in cyipopt API, expose nl file
options in PyomoNLP, add documentation and doctests (1810, 1832,
1873, 1913, 1930, 1936)
- Update contrib.viewer tests (1820)
- Add new Auto-Persistent Pyomo Solver Interfaces (APPSI) package (1793)
- GDPopt: add option to solve a relaxation with integer cuts, remove default
strategy (1837)
- Benders: rename master problem to root problem (1828)
- FBBT: Improve interval arithmetic for some special cases (1949)
- Parmest: remove dependency on PySP and add interface to mpi-sppy (1778)
- Add new incidence_analysis package for maximum matching and block
triangularization (1888)
- MindtPy: general improvements and add feasibility pump (1847)

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

5.7.3

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

ADVANCE CHANGE NOTICE:
- This is the last Pyomo release to support Python 2.7, 3.4, and 3.5
- This is the last Pyomo release to bundle PySP
- This is the last Pyomo release that will have a strict PyUtilib dependency

- General
- Improve GHA workflow for uploading manylinux wheels (1758, 1757)
- Add Python 3.9 to OSX/Windows on the GHA release workflow (1755)
- Standardize file line endings (1764)
- Resolve matplotlib deferred import failure (1770)
- Move the ATTIC directory to an internal archived repository (1762)
- Rename log_active_constraints to log_model_constraints (1788)
- Remove references to ordereddict package (1796)
- Convert old deprecation messages to use pyomo.common.deprecation (1798)
- Update and standardize Pyomo logging configuration (1797)
- Add writer consistency checks between filenames and formats (1804)
- Initialize self.tempdir in TempfileManagerClass (1806)
- Core
- Add is_reference API (1740)
- Add option to not rename components in the scaling transformation (1596)
- Improve units documentation and performance (1769, 1794, 1805)
- Documentation
- Move the doc/attic directory to an internal archived repository (1773)
- Solver Interfaces
- Fix missing imports in the persistent solver interface (1772)
- Update NEOS interface to provide email addresses (1782, 1783, 1795)
- Add mipgap capture to CPLEX direct interface (1775)
- Update solver license_is_valid checks (1789)
- Update CPLEX solution parser for CPLEX 12.10 (1792)
- Resolve issues with the NEOS interface (1802)
- DAE Updates
- Extend flattener to allow multiple sets (1768)
- GDP Updates
- Fix subproblem initialiations in gdp.cuttingplane (1780)
- Testing
- Fix Jenkins test script (1771)
- Fix GHA tests to work with PyMySQL 1.0.0 (1777)
- Contributed Packages
- PyNumero: resolve portability issue with Cyipopt exception handling,
add PyomoNLP methods for accessing equality/inequality constraints (1781,
1791)
- Parmest: update pairwise plot to use the covariance matrix (1774)

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

5.7.2

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

- General
- Increase timeout when loading libraries through CtypesEnviron (1644)
- Add support for deferred import of submodules (1683, 1729)
- Overhaul imports to replace 'import *' and remove unused imports (1607)
- Move pyutilib.misc Bunch/Container/Options imports to
pyomo.common.collections (1708, 1735)
- Move pyutilib.common exceptions to pyomo.common.errors (1694, 1733)
- Move pyutilib.misc.timing to pyomo.common.timing (1688)
- Move pyutilib.misc.config into pyomo.common.config (1687)
- Move pyutilib.factory to pyomo.common.factory (1695)
- Move pyutilib.misc.gc_manager to pyomo.common.gc_manager (1716)
- Move pyutilib LogHandler to pyomo.common.log (1717)
- Move pyutilib.services.tempfiles to pyomo.common.tempfiles (1742)
- Make logger and ostream public attributes in the TicTocTimer (1714)
- Update management of matplotlib imports (1738)
- Add utility function to get slice of component along certain set (1639)
- Remove unused pyomo.solvers.plugins.testdriver directory (1750)
- Core
- Use name buffer in add_slack_variables transformation (1637)
- Make Constraint.Feasible be an alias for Constraint.Skip (1676)
- Updates to slicing infrastructure and documentation (1638, 1736)
- Add public API for checking Param mutability (1651)
- Update methods for differentiating Pyomo expressions (1663)
- Add skip_stale_vars option to store_to function (1679)
- Improve Block initialization (1703)
- Update ComponentUID to improve serialization and leverage slicing
(1652, 1713, 1748)
- Extend Reference function to accept Sequence and Mapping derivatives (1739)
- Fix bugs in deepcopying/pickling units (1743)
- Fix cloning AMPLExternalFunction objects after external library is
loaded (1745)
- Improve log message when loading solution with 'warning' status (1752)
- Solver Interfaces
- Fix typo in Gurobi direct interface (1649)
- Explicitly close log files for cplex_direct (1655)
- Deprecate use of base64.decodestring in Python 3 NEOS interface (1661)
- Improvements to MOSEK direct interface, new persistent interface,
add license check to tests, resolve incompatibilities with
Python 2.7 (1686, 1746)
- DAE Updates
- Improve performance of discretization transformations (1727)
- Allow flattener to find constraints that skip the first index (1720)
- GDP Updates
- Rewrite of gdp.cuttingplane transformation (1668)
- Fix handling of local variables in gdp.hull
- PySP Updates
- Defer import of profiling packages and guppy module (1677, 1697)
- Fix integer conversion of string arguments in ProgressiveHedging (1684)
- Testing
- Update Jenkins driver to resolve codecov report upload (1670)
- Update slim and cythonized builds in GitHub Actions and Jenkins
drivers (1674)
- Fix security risk in GitHub Actions workflow (1654)
- Bundle GitHub Actions coverage report uploads (1680)
- Create Pyomo-specific unittest.TestCase and update fragile test (1682)
- Add python-louvain to testing infrastructure (1646)
- Update the idaes-ext download in the GitHub Actions workflows (1698)
- Make pyomo.common.timing tests more flexible (1711)
- Rename assertRelativeEqual to assertStructuredAlmostEqual (1719)
- Replace ubuntu-latest with ubuntu-18.04 in GitHub Actions workflows (1709)
- Change GitHub Action setup-miniconda action to version 2 (1696)
- GitHub Actions: add linux/conda and linux/parallel builds (1725)
- Timing updates (1728)
- Remove Travis-CI test driver and references to Travis-CI (1722)
- Resolve test failures with xpress 8.11 (1706)
- Fix installation of pymumps through conda in GitHub Actions (1731)
- Add TPLs, update solver PATH, and remove solvers from SLIM builds in GitHub
Actions tests (1732)
- Add Gurobi to GitHub Actions workflows (1721)
- Add Python 3.9 to test suite (1753, 1755)
- Documentation
- Add docstrings in pyomo.util.config (1707)
- Contributed Packages
- Add new package for performing Louvain community detection on a
Pyomo model (1526)
- FME: treat bounds of variables being projected as constraints in the
transformation (1664)
- MindtPy: add extended cutting plane and global OA strategies (1590)
- Parmest: bug fix in return_values, resolve example incompatibility with
Python<3.5, use CUID v2 representations, update handling of indexed
stage variables (1645, 1699, 1734, 1737)
- PyNumero: add ENABLE_HSL cmake option, extend Cyipopt solver
interface, improve MPI Matvec performance, update mumps interface to
use attempt_import, performance enhancements to pynumero.sparse,
misc updates (1632, 1653, 1610, 1667, 1681, 1705, 1724)

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

5.7.1

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

- General
- Add functions for checking the solver termination condition to environ (1540)
- Remove appdirs dependency (1558)
- Setting version number for new deprecation warnings (1524)
- Add generic tarball creation to GitHub Actions Workflow for creating Wheels
(1522)
- Deprecate pyomo install-extras (1521)
- Add test to monitor 'import pyomo.environ' time (1577)
- Move ComponentMap and ComponentSet to pyomo.common.collections (1593)
- Fix issue when parsing /etc/os-release (1603)
- Fix deprecation decorator tests (1629)
- Core
- Add a logical expression system (1507)
- Resolve table formatting with unicode character data (1530)
- Fix Model.compute_statistics method (1553)
- Deprecate CUID targets in add_slack_variables transformation (1563)
- Defer import of sympy in the cnf_walker (1576)
- Minor fixes to units (1582, 1584)
- Add IndexedSet.data method that was mistakenly removed (1609)
- Add support for class method initializers (1608)
- Rework constraint initialization (1592)
- Remove truthiness assumption for sequence in TuplizeValuesInitializer (1620)
- Add deprecated support for Var(within=RealSet) (1619)
- Fix standard repn of external functions with fixed arguments (1623)
- Solver Interfaces
- Use Baron option to more consistently return duals (1538)
- Add direct and persistent interfaces to Xpress (1443)
- Augment persistent solver interfaces to support column generation (1568)
- DAE Updates
- Add options to solve_consistent_initial_conditions (1534, 1606)
- Add find_nearest_index method to ContinuousSet (1559)
- Allow flattening of ctypes other than Var (1583)
- GDP Updates
- Fix a couple bugs in GDP basic steps (1532)
- Make key for calculated M values in bigM dictionary consistent (1618)
- Testing
- Fix to retry codecov upload if codecov.sh script fails (1539)
- Update to GitHub Actions tests to fix an OSX Python environment failure (1555)
- Allow failing codecov uploads on GitHub Actions tests (1561)
- Add doctests to the GitHub Actions builds (1542)
- Add manual job trigger for GitHub Actions Workflows (1578)
- Rebuild GitHub Actions download caches (1598)
- Disable OS package cache for OSX (1625)
- Documentation
- Clean up some old documentation on sparse sets (1545)
- Remove OnlineDocs spy files from the repository (1549)
- Resolve RTD documentation build warnings (1552)
- Fix typo in code snippet (1624)
- Update contribution guide (1621)
- Contributed Packages
- Defer the Z3 availability check in the satsolver (1529)
- MindtPy: add configuration arguments, bug fixes (1500)
- Parmest: fix solver options typo, update graphics module (1531, 1622)
- PyNumero: Add scaling to Cyipopt interface, set AMPLFUNC before loading NL
files, improve MPI matvec performance (1554, 1546, 1610)
- Fix bugs in sensitivity toolbox (1536, 1574)
- Add integer arithmetic option to FME transformation (1594)

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

5.7.0

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

- General
- Remove references to Python versions older than 2.7 (1361)
- Fix Python 3 compatibility issue in setup.py (1354)
- Updates to the FileDownloader, fix Python 3 type issue, add utility for
identifying os platform, improve find_library method (1353, 1368, 1373)
- Fix tokenization, update errors in the DAT parser (1366, 1516)
- Fix typo in relax_integrality deprecation warning (1385)
- Promote __version__ identifier to the pyomo module scope (1390)
- Update to only compute is_fixed when necessary (1402, 1415)
- Add ConfigEnum class (1418)
- Prevent exception for transformations missing doc string (1454)
- Automate wheel creation using GitHub actions (1409)
- Replace uses of pyutilib.enum package (1506)
- Core
- Units support for Pyomo components and models (1341, 1460, 1494, 1504)
- Integrate new Set component implementation (1319)
- Add deprecation warning for Set.value_list (1371)
- Fix bug when constructing empty sets with dimen>1 (1377)
- Rename component.type() to component.ctype (1376)
- Fixes for linear expression handling (1403, 1405)
- Fix handling of deactivated blocks in relax_integer_vars transformation (1428)
- Fix component_data_objects for scalar components with no len() (1436)
- Ensure block rules are always called (1438)
- Fix construction of scalar derived blocks (1459)
- Updates to native Pyomo differentiation (1423)
- Expand expression template support (1433)
- Ensure sympy configuration happens (1470)
- Add deprecation wrapper for old StreamBasedExpressionVisitor API (1488)
- Identify squared linear sums as quadratic in generate_standard_repn (1493)
- Check for consistent dimensions when slicing (1492)
- Solver Interfaces
- Updates to GAMS interface, update GAMSDirect.available to catch unexpected
exceptions, add GDX interface for returning solution values, improve error
reporting from GAMS, fix handling of fixed variables in LinearExpressions
(1351, 1446, 1382, 1463)
- CPLEXDirect performance improvements (1416)
- Improve Baron warning for ResName/TimName options (1486)
- PySP Updates
- Clean up PySP sizes example (1395)
- Remove use of pyutilib.enum package (1464)
- GDP Updates
- Rewrite of the Chull transformation (1421)
- Fix bug in bigm transformation for nested disjunctions (1479)
- Rename gdp.chull transformation to gdp.hull (1471)
- Deprecate GDP reclassify transformation (1502)
- DAE Updates
- Add DAE set manipulation utilities (1288)
- Add function for identifying and solving for consistent initial conditions (1410)
- Fix DAE flattener for non-time-indexed blocks (1489)
- Network Updates
- Update to cast fixed values back to float (1469)
- Testing
- Update Travis badge to reflect migration from .org to .com (1364)
- Add test coverage to linux/osx GitHub actions (1359)
- Update Baron, Ipopt, gjh_asl_json, Xpress solvers in GitHub actions
(1378, 1393, 1394, 1452)
- Unified GitHub actions workflow (1426)
- Disable Appveyor testing (1447)
- Update coverage configuration and reporting (1451, 1455, 1457, 1462)
- Solver testing improvements (1473)
- Documentation
- Update RangeSet docstring (1437)
- Expand developer documentation (1472)
- Update README.txt for building the Sphinx documentation (1480)
- Add documentation for sensitivity_toolbox (1481)
- Contributed Packages
- PyNumero updates, add CyIpopt interface, enable build through
build-extensions, add HSL interface, package reorganization, add operations
for block vectors/matrices, fix broken examples (1356, 1412, 1381, 1419,
1439, 1467, 1518)
- Add Fourier-Motzkin elimination (FME) transformation (1370, 1440)
- GDPOpt updates, fix use of numeric derivatives, preserve implicit config
options (1422, 1432,)
- Mindtpy updates, add lp/nlp algorithm, bug fixes, documentation, fix
warmstart, add cycling check (1391, 1476)
- Fix and deprecate constraint tightener transformation in the preprocessing
module (1458, 1388)
- FBBT updates, fix numerical issues (1360)
- parmest updates, add ScenarioCreator, update data in example to match paper
results, calculate covariance matrix (1363, 1474, 1475)
- Add basic interior point algorithm based on PyNumero (1450, 1505, 1495)

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

Page 4 of 14

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.