You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+26-25Lines changed: 26 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,34 +4,35 @@
4
4
### Added
5
5
- Added automated script for generating type stubs
6
6
- Include parameter names in type stubs
7
-
- Added pre-commit hook for automatic stub regeneration (see .pre-commit-config.yaml)
8
-
- Wrapped isObjIntegral() and test
9
-
- Added structured_optimization_trace recipe for structured optimization progress tracking
10
-
- Added methods: getPrimalDualIntegral()
11
-
- getSolVal() supports MatrixExpr now
12
-
- Added realtime_trace_jsonl recipe for real-time optimization progress tracking with JSONL streaming output
7
+
- Added pre-commit hook for automatic stub regeneration (see `.pre-commit-config.yaml`)
8
+
- Wrapped `isObjIntegral()` and test
9
+
- Added `structured_optimization_trace` recipe for structured optimization progress tracking
10
+
- Added methods: `getPrimalDualIntegral()`
11
+
-`getSolVal()` supports `MatrixExpr` now
12
+
- Added `realtime_trace_jsonl` recipe for real-time optimization progress tracking with JSONL streaming output
13
13
### Fixed
14
-
- getBestSol() now returns None for infeasible problems instead of a Solution with NULL pointer
14
+
-`getBestSol()` now returns `None` for infeasible problems instead of a `Solution` with `NULL` pointer
15
15
- all fundamental callbacks now raise an error if not implemented
16
-
- Fixed the type of MatrixExpr.sum(axis=...) result from MatrixVariable to MatrixExpr.
17
-
- Updated IIS result in PyiisfinderExec()
18
-
- Model.getVal now supports GenExpr type
19
-
- Fixed lotsizing_lazy example
20
-
- Fixed incorrect getVal() result when _bestSol.sol was outdated
21
-
- Fixed segmentation fault when using Variable or Constraint objects after freeTransform() or Model destruction
16
+
- Fixed the type of `MatrixExpr.sum(axis=...)` result from `MatrixVariable` to `MatrixExpr`.
17
+
- Updated IIS result in `PyiisfinderExec()`
18
+
-`Model.getVal` now supports `GenExpr` type
19
+
- Fixed `lotsizing_lazy` example
20
+
- Fixed incorrect `getVal()` result when `_bestSol.sol` was outdated
21
+
- Fixed segmentation fault when using `Variable` or `Constraint` objects after `freeTransform()` or `Model` destruction
22
+
-`getTermsQuadratic()` now correctly returns all linear terms
22
23
### Changed
23
-
- changed default value of enablepricing flag to True
24
-
- Speed up MatrixExpr.sum(axis=...) via quicksum
25
-
- Speed up MatrixExpr.add.reduce via quicksum
26
-
- Speed up np.ndarray(..., dtype=np.float64) @ MatrixExpr
27
-
- Speed up Expr * Expr via C-level API and Term * Term
28
-
- Speed up Term * Term via a $O(n)$ sort algorithm instead of Python $O(n\log(n))$ sorted function. `Term.__mul__` requires that Term.vartuple is sorted.
29
-
- Rename from `Term.__add__` to `Term.__mul__`, due to this method only working with Expr * Expr.
30
-
- MatrixExpr and MatrixExprCons use `__array_ufunc__` protocol to control all numpy.ufunc inputs and outputs
31
-
- Set `__array_priority__` for MatrixExpr and MatrixExprCons
32
-
- changed addConsNode() and addConsLocal() to mirror addCons() and accept ExprCons instead of Constraint
24
+
- changed default value of `enablepricing` flag to `True`
25
+
- Speed up `MatrixExpr.sum(axis=...)` via `quicksum`
26
+
- Speed up `MatrixExpr.add.reduce` via `quicksum`
27
+
- Speed up `np.ndarray(..., dtype=np.float64) @ MatrixExpr`
28
+
- Speed up `Expr * Expr` via C-level API and `Term * Term`
29
+
- Speed up `Term * Term` via a $O(n)$ sort algorithm instead of Python $O(n\log(n))$ sorted function. `Term.__mul__` requires that `Term.vartuple` is sorted.
30
+
- Rename from `Term.__add__` to `Term.__mul__`, due to this method only working with `Expr * Expr`.
31
+
-`MatrixExpr` and `MatrixExprCons` use `__array_ufunc__` protocol to control all `numpy.ufunc` inputs and outputs
32
+
- Set `__array_priority__` for `MatrixExpr` and `MatrixExprCons`
33
+
- changed `addConsNode()` and `addConsLocal()` to mirror `addCons()` and accept `ExprCons` instead of `Constraint`
33
34
- Improved `chgReoptObjective()` performance
34
-
- Return itself for abs to UnaryExpr(Operator.fabs)
35
+
- Return itself for `abs` to `UnaryExpr(Operator.fabs)`
35
36
### Removed
36
37
37
38
## 6.0.0 - 2025.11.28
@@ -116,7 +117,7 @@
116
117
- Stopped tests from running in draft PRs
117
118
### Removed
118
119
119
-
## 5.4.1 - 2024.02.24
120
+
## 5.4.1 - 2025.02.24
120
121
### Added
121
122
- Added option to get Lhs, Rhs of nonlinear constraints
0 commit comments