deprecate lu/eig/schur/svd/lq in favor of *fact counterparts and factorization destructuring#26997
deprecate lu/eig/schur/svd/lq in favor of *fact counterparts and factorization destructuring#26997Sacha0 wants to merge 5 commits intoJuliaLang:masterfrom
Conversation
| "`lufact(A[, pivot])` returns an `LU` object. So for a direct replacement, ", | ||
| "use `(lufact(A[, pivot])...,)`. But going forward, consider using the direct ", | ||
| "result of `lufact(A[, pivot])` instead, either destructured into its components ", | ||
| "(`l, u, p = lufact(A[, pivot])`) or as an `LU` object (`lup = lufact(A)`).")) |
There was a problem hiding this comment.
depwarn takes the name of the function being deprecated as a Symbol in the last argument, so this should have a , :lu) at the end. Same for the method below.
There was a problem hiding this comment.
Good catch! I have some rust to grind off :).
f4ebabe to
78344d1
Compare
|
Deprecation warnings fixed, exports removed, and news added. Also added a commit giving |
|
Let's break the CI straight flush: Added a commit extending this work to |
|
Thanks for doing this. I think we should go with @StefanKarpinski's suggestion though, i.e. use |
Clever! On the one hand, that approach should work for Thoughts? Thanks! |
stdlib/LinearAlgebra/src/eigen.jl
Outdated
| 0.0-1.0im 0.0+1.0im | ||
| -1.0-0.0im -1.0+0.0im | ||
|
|
||
| julia> vals, vecs = F; # destructuring via iterationw |
There was a problem hiding this comment.
iterationw -> iteration (no big deal, but since this is part of the user facing docs I think it is worth updating)
There was a problem hiding this comment.
Great catch! Should be fixed next I push. Thanks! :)
|
|
|
The one test failure with the most recent ( |
|
|
|
Small note: Edit: Or perhaps it's best to keep this |
IIRC this was introduced in 0.7, so perhaps just nix it for simplicity? |
(Your post coincided with my edit it seems 😄.) Absolutely, just removing this method would be much better than deprecating it to (Ref. pull request that introduced this method: #22633.) |
|
(AV x86_64 timed out, and Circle x86_64 hit unrelated LibGit2 errors.) |
|
Triage favors rewriting this pull request embracing the joy of breakage: Give the |
|
Superseded by #27159. |
|
You could have pinged me because of d: #22633. |
(Rewritten with updates:) This pull request concerns JuliaLang/LinearAlgebra.jl#322 and #25187, deprecating
lu,eig,schur,svd, andlqto*factcounterparts and factorization destructuring.Other, slightly different and/or trickier targets for similar deprecation:
cholandqr. Best!