Use public cache construction for ForwardDiff wrappers - #1073
Use public cache construction for ForwardDiff wrappers#1073ChrisRackauckas-Claude wants to merge 5 commits into
Conversation
|
Follow-up commit Isolation and rerun results:
The follow-up removes storage-field extraction and constructs the concrete heterogeneous wrapper through the documented explicit-parameter public constructor. |
|
CI classification for Downgrade run 29418505348:
This is the clean-base failure already bisected to #1039 and fixed independently by #1057; it does not exercise the ForwardDiff cache construction. The combined Jacobian-reuse stack applies #1057 before this PR. No test expectation or tolerance is changed here. |
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
1174566 to
1182563
Compare
|
Rebased the two source/test commits onto current upstream Added commit The branch update used |
Summary
FunctionWrappersWrappers.SingleCacheStoragetypeSingleCache()constructor through documented type parametersBigFloatfallback pathRoot cause
NonlinearSolveBaseForwardDiffExtdirectly constructedFunctionWrappersWrappers.SingleCacheStorage, which is intentionally not public. ExplicitImports therefore failed the NonlinearSolveBase QA job withNonPublicQualifiedAccessException.The first public-constructor prototype removed that violation but widened both continuation driver return types to
Any. The final implementation asks the public cache-mode constructor which documentedCStype it selected, then uses the publicFunctionWrappersWrapper{FW,P,CS}(f)constructor with a concrete heterogeneous wrapper tuple.The compat floor matters: the explicit public constructor is absent in FunctionWrappersWrappers 1.0 and first appears in 1.9.3. Version 2.35.3 avoids the independently reserved NonlinearSolveBase 2.35.1 and #1061 version 2.35.2.
Investigation
0343930c2e53b47da8fa35d06379b12f5875b584(Make AutoSpecialize infer through functor residuals; zero-alloc homotopy stepping #1046)Validation
GROUP=Core Pkg.test()forlib/NonlinearSolveBase: passedgit diff --check: passedNo assertion was loosened, skipped, disabled, or converted to broken.