Skip to content

Commit 3333cec

Browse files
authored
Merge pull request #2495 from blnicho/finalize-release-6.4.2
Finalize release 6.4.2
2 parents c568fbe + b61a4ac commit 3333cec

11 files changed

+82
-28
lines changed

.coin-or/projDesc.xml

+2-2
Original file line numberDiff line numberDiff line change
@@ -227,8 +227,8 @@ Carl D. Laird, Chair, Pyomo Management Committee, claird at andrew dot cmu dot e
227227
Use explicit overrides to disable use of automated
228228
version reporting.
229229
-->
230-
<stableVersionNumber>6.4.1</stableVersionNumber>
231-
<releaseNumber>6.4.1</releaseNumber>
230+
<stableVersionNumber>6.4.2</stableVersionNumber>
231+
<releaseNumber>6.4.2</releaseNumber>
232232

233233
</developmentStatus>
234234

CHANGELOG.txt

+66-7
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,65 @@
22
Pyomo CHANGELOG
33
===============
44

5+
-------------------------------------------------------------------------------
6+
Pyomo 6.4.2 17 Aug 2022
7+
-------------------------------------------------------------------------------
8+
9+
- General
10+
- Resolve dill incompatibility with attempt_import (#2419)
11+
- Speed up book tests and improve import/logging infrastructure (#2449)
12+
- Make typing overloads available at runtime (#2471)
13+
- Update list of known TPLs to reflect Python 3.10 (#2478)
14+
- Add NL writer version 2 but don't activate by default (#2473)
15+
- Add deprecation.relocated_module utility (#2492)
16+
- Core
17+
- Support cython functions through Initializer (#2421)
18+
- Ensure UnindexedComponent_set is correctly pickled/restored (#2416)
19+
- Update as_numeric() to raise an exception on non-is_numeric_type() Pyomo
20+
objects (#2444)
21+
- replace_expressions: support replacing variables with constants (#2410)
22+
- Update component_data_objects and component_data_iterindex to not
23+
return duplicate data (#2456)
24+
- Fix exception handling logic bug in quicksum (#2458)
25+
- Reduce recursion in model clone/deepcopy (#2487)
26+
- Resolve exception cloning empty LinearExpression objects (#2489)
27+
- Resolve errors from inplace operators on Expression objects (#2493)
28+
- Documentation
29+
- Fix typos and incorrect link (#2420, #2482)
30+
- Fix Sphinx warnings in documentation builds (#2434)
31+
- Solver Interfaces
32+
- Add support for SCIP 8.0 (#2409)
33+
- Add explicit space to GAMS put statements to support GAMS 39+ (#2450)
34+
- Catch exceptions in BARON interface when parsing objective bounds (#2467)
35+
- Testing
36+
- Skip SCIP 8.0 tests on PyPy (#2424)
37+
- Force conda to use conda-forge channel in GHA (#2430)
38+
- Fix GHA win/3.10 Python version inconsistency (#2433)
39+
- Enable Pyomo.DAE Simulator tests on PyPy (#2443)
40+
- Abort the Jenkins build if virtualenv creation fails (#2451)
41+
- Remove scipy from GHA PyPy builds (#2474)
42+
- Move performance testing driver scripts to scripts/performance (#2476)
43+
- Improve common.timing test robustness (#2490)
44+
- Contributed Packages
45+
- APPSI: Improve error message in nl writer when all variables fixed (#2407)
46+
- APPSI: Fix bug in Gurobi interface when modifying the objective (#2454)
47+
- APPSI: Solve blocks that use variables that are not on the block (#2453)
48+
- APPSI: Method to release Gurobi license from persistent interface (#2480)
49+
- community_detection: Trap exceptions from networkx (#2415)
50+
- FBBT: Add tolerances to tests (#2445)
51+
- GDPopt: Refactor to improve extensibility and maintainability (#2406)
52+
- incidence_analysis: Add method for weakly connected components (#2418)
53+
- MindtPy: Fix bug in copying variable values between models (#2432)
54+
- MindtPy: Add support for appsi_cplex and appsi_gurobi (#2373)
55+
- Parmest: Add utils submodule and support to convert Params to Vars (#2352)
56+
- Parmest: Fix use of relocated_module_attribute (#2472)
57+
- PyROS: Fixes to ellipsoidal sets (#2425)
58+
- PyROS: Account for variable domains (#2426)
59+
- PyROS: Fix objective validation (#2371)
60+
- PyROS: Avoid master feasibility problem unit consistency checks (#2459)
61+
- PyROS: Fix discrete uncertainty set separation (#2469)
62+
- PyROS: Update exception handling parsing BARON lower/upper bounds (#2486)
63+
564
-------------------------------------------------------------------------------
665
Pyomo 6.4.1 13 May 2022
766
-------------------------------------------------------------------------------
@@ -31,7 +90,7 @@ Pyomo 6.4.1 13 May 2022
3190
- Contributed Packages
3291
- APPSI: Minor improvements and generalizations (#2383, #2386, #2389,
3392
#2391, #2388, #2392)
34-
- incidence_analysis: Add option to ignore inequality constraints in
93+
- incidence_analysis: Add option to ignore inequality constraints in
3594
IncidenceGraphInterface (#2350)
3695
- MC++: Update interface tests (#2400)
3796
- MindtPy: Add quadratic_strategy option to pass quadratic constraints
@@ -157,15 +216,15 @@ Pyomo 6.2 17 Nov 2021
157216
- Remove deprecated calls to warnings.warning (#2106)
158217
- Add Bool and Integer domain validators (#2110)
159218
- Overhaul of Pyomo TempfileManager (#2109)
160-
- Allow passing tuples and expressions to
219+
- Allow passing tuples and expressions to
161220
calculate_variable_from_constraint() (#2133)
162221
- Add external functions to block in create_subsystem_block (#2142)
163222
- Track changes in pint 0.18 and Xpress 8.13.0 (#2168)
164223
- Remove code deprecated in Pyomo version 5.6 or older (#1992)
165224
- Add Linux aarch64 wheel build support (#2076)
166225
- Update wheel creation GitHub Actions version (#2192)
167226
- Remove optional_packages from pyomo.environ (#2195)
168-
- Ignore bounds/domain when updating variable value in
227+
- Ignore bounds/domain when updating variable value in
169228
calculate_variable_from_constraint() (#2177)
170229
- Core
171230
- Fix Expression.getitem when initialized with Skip (#2136)
@@ -174,7 +233,7 @@ Pyomo 6.2 17 Nov 2021
174233
- Fix bug in differentiate module related to reused subexpressions (#2148)
175234
- Rework expression replacement and LinearExpression object (#2143)
176235
- Add support for custom pint registries (#2153)
177-
- Add support for solving blocks and targets in logical_to_linear
236+
- Add support for solving blocks and targets in logical_to_linear
178237
transformation (#2147)
179238
- Add support for finding components with a ComponentUID (#2178)
180239
- Fix bugs with open NumericRanges (#2170, #2179)
@@ -206,16 +265,16 @@ Pyomo 6.2 17 Nov 2021
206265
- Contributed Packages
207266
- APPSI: Add support for external functions in NL writer (#2111)
208267
- APPSI: Improved handling of immutable parameters (#2112)
209-
- PyNumero: Pass AMPLFUNC directly to pynumero_ASL and not through
268+
- PyNumero: Pass AMPLFUNC directly to pynumero_ASL and not through
210269
environment (#2114, #2129)
211270
- PyNumero: ExternalPyomoModel performance improvements (#2155)
212271
- PyNumero: Remove exception when variable bounds are equal (#2121)
213272
- Parmest: Add support for indexed variables (#2108)
214-
- incidence_analysis: Simplify extraction of diagonal blocks from a block
273+
- incidence_analysis: Simplify extraction of diagonal blocks from a block
215274
triangularization (#2128)
216275
- GDPopt: Make line endings PEP8 compliant (#2173)
217276
- MindtPy: Add support for MIP solver solution pools (#2164)
218-
- MindtPy: Skip specific tests due to failure with Gurobi 9.5.0 on
277+
- MindtPy: Skip specific tests due to failure with Gurobi 9.5.0 on
219278
Windows (#2183)
220279
- MindtPy: Fix feasibility pump and fixed variable detection (#2185, #2187)
221280
- PyROS: Add uncertain variable bounds detection (#2159)

README.md

-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44
[![Documentation Status](https://readthedocs.org/projects/pyomo/badge/?version=latest)](http://pyomo.readthedocs.org/en/latest/)
55
[![GitHub contributors](https://img.shields.io/github/contributors/pyomo/pyomo.svg)](https://github.com/pyomo/pyomo/graphs/contributors)
66
[![Merged PRs](https://img.shields.io/github/issues-pr-closed-raw/pyomo/pyomo.svg?label=merged+PRs)](https://github.com/pyomo/pyomo/pulls?q=is:pr+is:merged)
7-
[![Issue stats](http://isitmaintained.com/badge/resolution/pyomo/pyomo.svg)](http://isitmaintained.com/project/pyomo/pyomo)
8-
[![Project Status: Active - The project has reached a stable, usable state and is being actively developed.](http://www.repostatus.org/badges/latest/active.svg)](http://www.repostatus.org/#active)
97

108
[![a COIN-OR project](https://www.coin-or.org/GitHub/coin-or-badge.png)](https://www.coin-or.org)
119

RELEASE.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
We are pleased to announce the release of Pyomo 6.4.1.
1+
We are pleased to announce the release of Pyomo 6.4.2.
22

33
Pyomo is a collection of Python software packages that supports a
44
diverse set of optimization capabilities for formulating and analyzing

pyomo/common/timing.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ class was constructed). Note: timing logged using logger.info
235235
if args and '%' not in msg:
236236
deprecation_warning(
237237
"tic(): 'ostream' and 'logger' should be "
238-
"specified as keyword arguments", version='TBD')
238+
"specified as keyword arguments", version='6.4.2')
239239
ostream, *args = args
240240
if args:
241241
logger, *args = args
@@ -275,7 +275,7 @@ class was constructed). Note: timing logged using `level`
275275
if args and msg is not None and '%' not in msg:
276276
deprecation_warning(
277277
"toc(): 'delta', 'ostream', and 'logger' should be "
278-
"specified as keyword arguments", version='TBD')
278+
"specified as keyword arguments", version='6.4.2')
279279
delta, *args = args
280280
if args:
281281
ostream, *args = args

pyomo/contrib/gdpopt/config_options.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@
2828

2929
def _strategy_deprecation(strategy):
3030
deprecation_warning("The argument 'strategy' has been deprecated "
31-
"in favor of 'algorithm.'", version="TBD")
31+
"in favor of 'algorithm.'", version="6.4.2")
3232
return In(_supported_algorithms)(strategy)
3333

3434
def _init_strategy_deprecation(strategy):
3535
deprecation_warning("The argument 'init_strategy' has been deprecated "
36-
"in favor of 'init_algorithm.'", version="TBD")
36+
"in favor of 'init_algorithm.'", version="6.4.2")
3737
return In(valid_init_strategies)(strategy)
3838

3939
def _get_algorithm_config():

pyomo/contrib/gdpopt/solve_discrete_problem.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ def solve_MILP_discrete_problem(util_block, solver, config):
6262
deprecation_warning(
6363
"The 'call_before_master_solve' argument is deprecated. "
6464
"Please use the 'call_before_discrete_problem_solve' option "
65-
"to specify the callback.", version="TBD")
65+
"to specify the callback.", version="6.4.2")
6666

6767
with SuppressInfeasibleWarning():
6868
mip_args = dict(config.mip_solver_args)
@@ -83,7 +83,7 @@ def solve_MILP_discrete_problem(util_block, solver, config):
8383
deprecation_warning(
8484
"The 'call_after_master_solve' argument is deprecated. "
8585
"Please use the 'call_after_discrete_problem_solve' option to "
86-
"specify the callback.", version="TBD")
86+
"specify the callback.", version="6.4.2")
8787

8888
terminate_cond = results.solver.termination_condition
8989
if terminate_cond is tc.infeasibleOrUnbounded:

pyomo/contrib/gdpopt/util.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ def copy_var_list_values(from_list, to_list, config,
155155
"""
156156
if ignore_integrality:
157157
deprecation_warning("The 'ignore_integrality' argument no longer "
158-
"has any functionality.", version="TBD")
158+
"has any functionality.", version="6.4.2")
159159

160160
if len(from_list) != len(to_list):
161161
raise ValueError('The lengths of from_list and to_list do not match.')

pyomo/contrib/parmest/ipopt_solver_wrapper.py

+3-7
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,6 @@
99
# This software is distributed under the 3-clause BSD License.
1010
# ___________________________________________________________________________
1111

12-
from .utils.ipopt_solver_wrapper import *
13-
14-
from pyomo.common.deprecation import deprecation_warning
15-
deprecation_warning(
16-
'The pyomo.contrib.parmest.ipopt_solver_wrapper module has been moved to '
17-
'pyomo.contrib.parmest.utils.ipopt_solver_wrapper. Please update your import',
18-
version='TBD')
12+
from pyomo.common.deprecation import relocated_module
13+
relocated_module('pyomo.contrib.parmest.utils.ipopt_solver_wrapper',
14+
version='6.4.2')

pyomo/version/info.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@
2727
major=6
2828
minor=4
2929
micro=2
30-
releaselevel='invalid'
31-
#releaselevel='final'
30+
#releaselevel='invalid'
31+
releaselevel='final'
3232
serial=0
3333

3434
if releaselevel == 'final':

setup.py

+1
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,7 @@ def _print_deps(self, deplist):
209209
],
210210
extras_require = {
211211
'tests': [
212+
#'codecov', # useful for testing infrastructures, but not required
212213
'coverage',
213214
'pytest',
214215
'pytest-parallel',

0 commit comments

Comments
 (0)