2.0.0 - 2025-03-29
Next: 2.0.1 → | 📋 All Releases | 🏷️ GitHub Release
Summary: 💥 MAJOR RELEASE - Complete framework migration from Pyomo to Linopy with redesigned architecture.
✨ Added
Model Capabilities: - Full model serialization support - save and restore unsolved Models - Enhanced model documentation with YAML export containing human-readable mathematical formulations - Extend flixopt models with native linopy language support - Full Model Export/Import capabilities via linopy.Model
Results & Data:
- Unified solution exploration through Calculation.results
attribute
- Compression support for result files
- to_netcdf/from_netcdf
methods for FlowSystem and core components
- xarray integration for TimeSeries with improved datatypes support
💥 Breaking Changes
Framework Migration:
- Optimization Engine: Complete migration from Pyomo to Linopy optimization framework
- Package Import: Framework renamed from flixOpt to flixopt (import flixopt as fx
)
- Data Architecture: Redesigned data handling to rely on xarray.Dataset throughout the package
- Results System: Results handling completely redesigned with new CalculationResults
class
Variable Structure:
- Restructured the modeling of the On/Off state of Flows or Components
- Variable renaming: ...|consecutive_on_hours
→ ...|ConsecutiveOn|hours
- Variable renaming: ...|consecutive_off_hours
→ ...|ConsecutiveOff|hours
- Constraint renaming: ...|consecutive_on_hours_con1
→ ...|ConsecutiveOn|con1
- Similar pattern for all consecutive on/off constraints
🔥 Removed
- Pyomo dependency (replaced by linopy)
- Period concepts in time management (simplified to timesteps)
🐛 Fixed
- Improved infeasible model detection and reporting
- Enhanced time series management and serialization
- Reduced file size through improved compression
📝 Docs
- Google Style Docstrings throughout the codebase