Use public APIs for AutoDePSpecialize wrappers - #1121
Use public APIs for AutoDePSpecialize wrappers#1121ChrisRackauckas-Claude wants to merge 1 commit into
Conversation
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
|
Implementation and validation log:
|
|
Superseded by #1124, which takes the route @ChrisRackauckas asked for: rather than reconstructing these objects through indirect public surface, promote each name at its owning package and then use it directly. Two findings from a local QA run on clean
Also worth recording: the Closing in favor of #1124. |
Summary
RespecializeParams.OpaqueVoidAPI and reuse the existing dual-awarewrapfun_iippathproblem_type/StandardNonlinearProblemandSymbolicIndexingInterface.all_symbolsThis removes the ExplicitImports QA violations without making internal helper names public. The FunctionWrappersWrappers compatibility floor is raised to 1.9.3, where the required public constructor is available.
Closes #1118.
Supersedes #1073.
Validation
With current compatible dependency versions on Julia 1.12:
QA: 20 passedCore: passed, includingAutoDePSpecialize opaque-p(25 passed)With the new compatibility floors pinned (
FunctionWrappersWrappers1.9.3, SciMLBase 3.37.0, SymbolicIndexingInterface 0.3.43):QA: 20 passedCore: passed, includingAutoDePSpecialize opaque-p(25 passed)Commands:
Whole-repository Runic 1.7.0 and
git diff --checkboth completed with exit code 0.The root NonlinearSolve
Coregroup was also run. It reached the pre-existing continuation allocation assertions, wheresweep_per_step(prob_big)measured 92.64 bytes against<48andarclength_per_step(prob_big)measured 48.0 against<48. The sweep result reproduced unchanged on cleanupstream/master; this PR does not alter those continuation drivers or their test thresholds.