@@ -28,9 +28,16 @@ changes.
2828 (Following the convention in MathOptInterface, the dual of ` a <= b ` is
2929 always negative, regardless of optimization sense.) (#593 )
3030 * 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 )
3441 * The syntaxes ` dot(*) ` , ` dot(/) ` and ` dot(^) ` have been removed in favor of
3542 explicit broadcasting (` x .* y ` , ` x ./ y ` , and ` x .^ y ` ). These were (mild)
3643 type piracy. In addition, ` vecdot(x,y) ` has been removed. Call
@@ -64,6 +71,10 @@ changes.
6471 vectors), matching Base's behavior (#528 )
6572 * Added ` root_det ` (#605 )
6673 * 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 )
6778
6879### Fixed
6980
@@ -74,14 +85,14 @@ changes.
7485 * Fix ` dot ` to correctly complex-conjugates its first argument (#524 )
7586 * Add tests and fix a number of bugs in various atoms (#546 ), (#547 ), (#550 ),
7687 (#554 ), (#556 ), (#558 ), (#559 ), (#561 ), (#562 ), (#563 ), (#565 ), (#566 ),
77- (#567 ), (#568 ), (#608 ), (#609 ), (#617 )
88+ (#567 ), (#568 ), (#608 ), (#609 ), (#617 ), ( # 626 )
7889 * Fixed performance issues in a number of issues related to scalar indexing
79- (#618 ), (#619 ), (#620 ), (#621 )
90+ (#618 ), (#619 ), (#620 ), (#621 ), ( # 625 ), ( # 634 )
8091
8192### Other
8293
8394 * Improved the documentation (#506 ), (#517 ), (#529 ), (#571 ), (#573 ), (#574 ),
84- (#576 ), (#579 ), (#587 ), (#594 )
95+ (#576 ), (#579 ), (#587 ), (#594 ), ( # 628 )
8596 * Refactored the tests into a functional form (#532 )
8697 * Updated ` Project.toml ` (#535 )
8798 * Added ` test/Project.toml ` (#536 )
@@ -92,7 +103,7 @@ changes.
92103 * Removed the unused file ` src/problem_depot/problems/benchmark.jl ` (#560 )
93104 * Added various tests to improve code coverage (#522 ), (#572 ), (#575 ), (#577 ),
94105 (#580 )
95- * Updated versions in GitHub actions (#596 ), (#612 )
106+ * Updated versions in GitHub actions (#596 ), (#612 ), ( # 629 )
96107 * Added license headers (#606 )
97108
98109## v0.15.4 (October 24, 2023)
0 commit comments