@@ -28,9 +28,16 @@ changes.
28
28
(Following the convention in MathOptInterface, the dual of ` a <= b ` is
29
29
always negative, regardless of optimization sense.) (#593 )
30
30
* The structs ` LtConstraint ` , ` GtConstraint ` , ` EqConstraint `
31
- ` SOCConstraint ` , ` ExpConstraint ` and ` SDPConstraint ` have
32
- been replaced by ` GenericConstraint{S} ` where ` S<:MOI.AbstractSet ` (#590 )
33
- (#597 ), (#598 ), (#599 ), (#601 ), (#602 ), (#623 )
31
+ ` SOCConstraint ` , ` ExpConstraint ` , ` GeoMeanEpiConeConstraint ` , and
32
+ ` SDPConstraint ` have been replaced by ` GenericConstraint{S} ` where
33
+ ` S<:MOI.AbstractSet ` (#590 ), (#597 ), (#598 ), (#599 ), (#601 ), (#602 ),
34
+ (#604 ), (#623 ), (#632 )
35
+ * ** Subtle breaking change** : scalar row indexing like ` x[i, :] ` now produces a
36
+ column vector instead of a row vector. This better aligns with Julia Base,
37
+ but it can result in subtle differences, particularly for code like
38
+ ` x[i, :] * y[i, :]' ` : this used to be equivalent to the inner product, but it
39
+ is now the outer product. In Base Julia, this is the outer product, so the
40
+ previous code may be been silently broken (#624 )
34
41
* The syntaxes ` dot(*) ` , ` dot(/) ` and ` dot(^) ` have been removed in favor of
35
42
explicit broadcasting (` x .* y ` , ` x ./ y ` , and ` x .^ y ` ). These were (mild)
36
43
type piracy. In addition, ` vecdot(x,y) ` has been removed. Call
@@ -64,6 +71,10 @@ changes.
64
71
vectors), matching Base's behavior (#528 )
65
72
* Added ` root_det ` (#605 )
66
73
* Added ` VcatAtom ` which is a more efficient implementation of ` vcat ` (#607 )
74
+ * Added support for ` SparseArrays.SparseMatrixCSC ` in ` Constant ` . This fixed
75
+ performance problems with some atoms (#631 )
76
+ * ` solve! ` now reports the time and memory allocation during compilation from
77
+ the DCP expression graph to MathOptInterface (#633 )
67
78
68
79
### Fixed
69
80
@@ -74,14 +85,14 @@ changes.
74
85
* Fix ` dot ` to correctly complex-conjugates its first argument (#524 )
75
86
* Add tests and fix a number of bugs in various atoms (#546 ), (#547 ), (#550 ),
76
87
(#554 ), (#556 ), (#558 ), (#559 ), (#561 ), (#562 ), (#563 ), (#565 ), (#566 ),
77
- (#567 ), (#568 ), (#608 ), (#609 ), (#617 )
88
+ (#567 ), (#568 ), (#608 ), (#609 ), (#617 ), ( # 626 )
78
89
* Fixed performance issues in a number of issues related to scalar indexing
79
- (#618 ), (#619 ), (#620 ), (#621 )
90
+ (#618 ), (#619 ), (#620 ), (#621 ), ( # 625 ), ( # 634 )
80
91
81
92
### Other
82
93
83
94
* Improved the documentation (#506 ), (#517 ), (#529 ), (#571 ), (#573 ), (#574 ),
84
- (#576 ), (#579 ), (#587 ), (#594 )
95
+ (#576 ), (#579 ), (#587 ), (#594 ), ( # 628 )
85
96
* Refactored the tests into a functional form (#532 )
86
97
* Updated ` Project.toml ` (#535 )
87
98
* Added ` test/Project.toml ` (#536 )
@@ -92,7 +103,7 @@ changes.
92
103
* Removed the unused file ` src/problem_depot/problems/benchmark.jl ` (#560 )
93
104
* Added various tests to improve code coverage (#522 ), (#572 ), (#575 ), (#577 ),
94
105
(#580 )
95
- * Updated versions in GitHub actions (#596 ), (#612 )
106
+ * Updated versions in GitHub actions (#596 ), (#612 ), ( # 629 )
96
107
* Added license headers (#606 )
97
108
98
109
## v0.15.4 (October 24, 2023)
0 commit comments