CompatHelper: bump compat for ContinuumArrays to 0.16, (keep existing compat)#70
Conversation
469461d to
d6b486f
Compare
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](actions/checkout@v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #70 +/- ##
==========================================
- Coverage 67.98% 67.79% -0.20%
==========================================
Files 24 24
Lines 1690 1621 -69
==========================================
- Hits 1149 1099 -50
+ Misses 541 522 -19 ☔ View full report in Codecov by Sentry. |
|
@dlfivefifty I finally got around fixing compat bounds. A lot of tests fail (related to |
|
The changes are to avoid relying on
|
|
@dlfivefifty I seem to hitting a few snags:
In short, I need all arguments to the multiplication passed to my materialization routine. Incidentally, some of those that are implemented through the CompactBases.jl/src/fd_derivatives.jl Line 222 in 4b817a5 CompactBases.jl/src/fd_derivatives.jl Line 253 in 4b817a5 Quick test example: julia> N = 10
10
julia> ρ = 1.0
1.0
julia> R = StaggeredFiniteDifferences(N, ρ)
Staggered finite differences basis {Float64} on 0.0 .. 10.5 with 10 points spaced by ρ = 1.0
julia> r = axes(R, 1)
Inclusion(0.0 .. 10.5)
julia> D = Derivative(r)
Derivative(Inclusion(0.0 .. 10.5))
julia> ∇ = R'D*R
10×10 LinearAlgebra.Tridiagonal{Float64, Vector{Float64}}:
0.0 0.666667 ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅
-0.666667 0.0 0.533333 ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅
⋅ -0.533333 0.0 0.514286 ⋅ ⋅ ⋅ ⋅ ⋅ ⋅
⋅ ⋅ -0.514286 0.0 0.507937 ⋅ ⋅ ⋅ ⋅ ⋅
⋅ ⋅ ⋅ -0.507937 0.0 0.505051 ⋅ ⋅ ⋅ ⋅
⋅ ⋅ ⋅ ⋅ -0.505051 0.0 0.503497 ⋅ ⋅ ⋅
⋅ ⋅ ⋅ ⋅ ⋅ -0.503497 0.0 0.502564 ⋅ ⋅
⋅ ⋅ ⋅ ⋅ ⋅ ⋅ -0.502564 0.0 0.501961 ⋅
⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ -0.501961 0.0 0.501548
⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ -0.501548 0.0
julia> ∇² = R'D'D*R
ERROR: Overload diff(::StaggeredFiniteDifferences{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}})
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:35
[2] diff_layout(#unused#::ContinuumArrays.BasisLayout, Vm::StaggeredFiniteDifferences{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}, dims::Int64)
@ ContinuumArrays ~/.julia/packages/ContinuumArrays/ZkEzA/src/bases/bases.jl:602
[3] #diff#89
@ ~/.julia/packages/QuasiArrays/5wpon/src/calculus.jl:50 [inlined]
[4] diff
@ ~/.julia/packages/QuasiArrays/5wpon/src/calculus.jl:50 [inlined]
[5] mul
@ ~/.julia/packages/ContinuumArrays/ZkEzA/src/operators.jl:139 [inlined]
[6] mul
@ ~/.julia/packages/ContinuumArrays/ZkEzA/src/operators.jl:42 [inlined]
[7] *(A::QuasiArrays.QuasiAdjoint{Float64, StaggeredFiniteDifferences{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}}, B::QuasiArrays.QuasiAdjoint{Float64, Derivative{Float64, IntervalSets.ClosedInterval{Float64}}})
@ QuasiArrays ~/.julia/packages/QuasiArrays/5wpon/src/matmul.jl:23
[8] *(::QuasiArrays.QuasiAdjoint{Float64, StaggeredFiniteDifferences{Float64, StepRangeLen{Float64, Base.TwicePrecision{Float64}, Base.TwicePrecision{Float64}, Int64}}}, ::QuasiArrays.QuasiAdjoint{Float64, Derivative{Float64, IntervalSets.ClosedInterval{Float64}}}, ::Derivative{Float64, IntervalSets.ClosedInterval{Float64}})
@ Base ./operators.jl:578
[9] top-level scope
@ REPL[35]:1 |
|
Probably the best approach is to add a |
|
But then I would need such a proxy type for each basis, and also make it restriction-aware? That does not seem to be a scalable solution. |
|
Just have diff return you might need to set simplifiable to be false |
This pull request changes the compat entry for the
ContinuumArrayspackage from0.10, 0.11, 0.12to0.10, 0.11, 0.12, 0.16.This keeps the compat entries for earlier versions.
Note: I have not tested your package with this new compat entry.
It is your responsibility to make sure that your package tests pass before you merge this pull request.