Raise SciMLOperators public API floors and resolve cache ambiguity - #1060
Conversation
Require the first SciMLOperators release that declares AbstractSciMLOperator public, then remove the obsolete QA allowlist entry. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Align the subpackages that directly use AbstractSciMLOperator with the first release that declares it public, and remove the corresponding QA exceptions. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Add the missing Nothing-specialized method for AbstractSciMLOperator caches and cover that dispatch directly. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
|
Validation record for final head
The minimum-compatible path-source resolution used the fix in julia-actions/julia-downgrade-compat#55, stacked on #54. |
|
Early exact-head CI downgrade classification for
These are the direct path-source dependency-resolution cases fixed and covered by julia-actions/julia-downgrade-compat#55 (stacked on #54). #55 passes its full 136/136 local suites on Julia 1.10/current and both exact-head CI jobs. The NonlinearSolve code/tests did not execute in these two failing jobs; this is the declared action prerequisite, not a runtime failure. Remaining exact-head jobs continue to run. |
|
Terminal CI audit for
Every intended sublibrary Core/QA lane relevant to the changed floors passed, along with downstream, documentation, Runic, and spell checks. This comment only classifies observed logs; it does not suppress any failure. |
Ignore this PR until it has been reviewed by @ChrisRackauckas.
Summary
AbstractSciMLOperatorpublic, in every subpackage that directly imports itNothingspecialization forJacobianCache{<:AbstractSciMLOperator}, resolving its intersection with the generic deprecated call methodMatrixOperatorregression testSciMLOperators commit
a28a25ac5f81e3922351fecc2535e2b264ec8f2cmadeAbstractSciMLOperatorpublic. Registry and tree-history verification show that release 1.23.0 predates that commit and release 1.24.0 contains it. Establishing that public API floor permits the operator-specific disambiguation without relying on dependency internals.The minimum-compatible sublibrary environments also depend on julia-actions/julia-downgrade-compat#55, stacked on #54, so direct local runtime dependencies are retained and resolved while producing the downgraded manifest.
Process
579761dd26ccd522fae20b29cef8e9ed945569c5.AbstractSciMLOperatorconsumer and raised its SciMLOperators floor.Local verification
Core: 112/112 passed, including the operator-cache regression 1/1.alldeps), with SciMLOperators 1.24.0:Corepassed.Corepassed.Corepassed with NonlinearSolveBase 2.34.2 and SciMLJacobianOperators 0.1.16; its largest matrix, TrustRegion, passed 1596/1596 and the final SciMLOperator Jacobian set passed 14/14.Core: 112/112 passed, including the operator-cache regression 1/1.QA: 16/16 passed.QA: 16/16 passed.QA: method ambiguity passed 1/1 andall_explicit_imports_are_publicpassed 1/1. The complete result is 17 passed / 1 errored because upstream master independently accesses the non-publicFunctionWrappersWrappers.SingleCacheStorage; that public-API migration remains separate work.