This version of IDAES is the first requiring Pyomo 6.6. This version of Pyomo contains multiple internal improvements and refactorings.
While for the majority of cases this should have positive or no impact on solvability of IDAES models, we are aware of a small number of models that have been affected as a result of these changes.
For more information, refer to the [Pyomo 6.6.1 release notes](https://github.com/Pyomo/pyomo/releases/tag/6.6.1).
Other highlights
- Model Initialization
- A prototype API for a new approach to initializing IDAES models is now available which makes available some new techniques for initializing models. This is documented in the [Initializing Models Reference Guide](https://idaes-pse.readthedocs.io/en/2.1.0/reference_guides/initialization/index.html)
- Modular Properties Framework
- Support for some transport properties
- Helmholtz Equation of State properties
- Better error checking for case where unit models are set to include phase equilibrium but the property package is set to support only a single phase
- Multi-Stream Contactor model: a new base model for systems involving contacting of two or more streams with mass transfer. This model is intended to be used as the foundation for models such as membrane separators, solvent extraction and other similar processes. This is documented in the [Multi-Stream Contactor Reference Guide](https://idaes-pse.readthedocs.io/en/2.1.0/reference_guides/model_libraries/generic/unit_models/mscontactor.html)
- `idaes/models_extra/power_generation`
- `report()` methods for unit models using Helmholtz equation of state
- General Code Maintenance
- Streamlining of dependencies and creation of new optional dependency groupings to support non-core tools
- General linting of codebase to ensure compliance with most pylint checks
- Spell checking of all code and doc strings
- Removal of backward compatibility code for Python 2