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
+30-7Lines changed: 30 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,6 +18,35 @@ This is a breaking change since the JuMP extension is dropped.
18
18
*`HagerZhangLinesearch` stepsize, a state-of-the-art line search for smooth objectives with cubic interpolation and adaptive Wolfe condition checking. (#554)
19
19
* Stopping criteria can now be initialized using `initialize_stepsize!`, similar to solvers. (#554)
20
20
21
+
### Fixed
22
+
23
+
* Fixed `show` methods of various state and stopping criteria to properly handle both `repr` and multiline printing (#569)
24
+
* Unified all `show` methods and their human readable analoga `status_summary` throughout the package (#569)
25
+
* Fixed some text descriptions of a few stopping criteria.
26
+
* unify naming of fields, `debugDictionary` of the debug state is now called `debug_dictionary`
27
+
* the `NesterovRule` now also stores an actual `AbstractRetractionMethod` instead of implicitly always using the default one.
28
+
* Line searches consistently respect `stop_when_stepsize_exceeds` keyword argument as a hard limit. (#554)
29
+
*`StopWhenChangeLess` falsely claimed to indicate convergence. This is now fixed. (#554)
30
+
31
+
## [0.5.37] May 5, 2026
32
+
33
+
### Changed
34
+
35
+
* The default restart rule for `conjugate_gradient_descent` is now `RestartOnNonDescent` instead of `NeverRestart`, which makes the algorithm more robust to non-convexity and numerical issues. The old default can still be used by explicitly passing `restart_condition=NeverRestart()`. (#604)
36
+
*`HagerZhangCoefficientRule` now has a safeguard against the denominator being too close to zero (the `denom_threshold` field). By default it is set to 1.0e-10. You can set it to a lower positive value (or even zero) to weaken the safeguard, but it is recommended to keep it to avoid numerical issues. (#604)
37
+
* introduce for all `Rule`s also a variant without being encapsulated in a memory, where the old values have to be passed as keywords. This is now used by the `ConjugateGradientBealeRestartRule` when evaluating its inner rule. (#604)
38
+
39
+
## [0.5.36] April 24, 2026
40
+
41
+
### Added
42
+
43
+
* a function `stopped_at(state)` to access the number of iterations it took a solver to stop. (#599)
44
+
45
+
### Fixed
46
+
47
+
* a small bug where `get_count(sc::StopWhenAny, Val(:Iteration))` wrongly reported it stopped before the first iteration when it actually did not yet stop. (#599)
48
+
49
+
## [0.5.35] April 16, 2026
21
50
22
51
### Changed
23
52
@@ -30,13 +59,7 @@ discontinue the `JuMP` extension. (#532)
30
59
31
60
### Fixed
32
61
33
-
* Fixed `show` methods of various state and stopping criteria to properly handle both `repr` and multiline printing (#569)
34
-
* Unified all `show` methods and their human readable analoga `status_summary` throughout the package (#569)
35
-
* Fixed some text descriptions of a few stopping criteria.
36
-
* unify naming of fields, `debugDictionary` of the debug state is now called `debug_dictionary`
37
-
* the `NesterovRule` now also stores an actual `AbstractRetractionMethod` instead of implicitly always using the default one.
38
-
* Line searches consistently respect `stop_when_stepsize_exceeds` keyword argument as a hard limit. (#554)
39
-
*`StopWhenChangeLess` falsely claimed to indicate convergence. This is now fixed. (#554)
62
+
* The default line search in `conjugate_gradient_descent` is now `ArmijoLinesearchStepsize` instead of `ArmijoLinesearch`, which makes it work well with custom point types.
0 commit comments