Test FunctionMap keyword compatibility - #4070
Conversation
|
Investigation / validation scratchpad
No test was skipped, broken, disabled, silenced, or loosened. The #4064/#4066 commits were used only in disposable validation worktrees and are absent from this PR's two-file diff. |
|
CI is currently gated before it reaches this PR’s behavior by the independent prerequisite branches already called out in the body.
I am not changing this two-file PR for those failures. After #4064/#4066 merge, it should be rebased and the full CI matrix rerun; any failures that then reach FunctionMap need fresh classification. |
|
Allow base.structdiff |
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
57f31ca to
6b4b7e3
Compare
|
Addressed the review request to allow
The PR now has no production-source diff relative to |
|
Terminal CI classification for reviewed/rebased head No test body failed on this PR. Excluding Runic, all 118 failures stopped in resolution, source development, dependency installation, or package build before the workflow test step:
The 61 non-downgrade failures all explicitly report the current SciMLBase 3.39/3.40 resolver boundary. The 57 downgrade jobs stop inside the downgrade resolver with Local validation therefore remains the only run that reaches this two-file change until #4064/#4066 merge: focused constructor regressions 4/4; official FunctionMap QA AllocCheck 2/2, JET 1/1, Aqua/ExplicitImports 19/19; changed-file Runic and diff check passed. No CI workaround or unrelated dependency change is being added. |
Ignore until reviewed by @ChrisRackauckas.
Summary
Base.structdiffin the FunctionMap compatibility constructor, as requested in reviewNamedTupletype after field removalstep_limiterkeyword, the legacystep_limiter!compatibility path, and exact errors for one or multiple unsupported keywordsThere is no production-source change relative to current
master; this PR adds regression tests and the focused ExplicitImports exception for the reviewed implementation.Why the exception is narrow
Base.structdiffis deliberately used here to removestep_limiter!while retaining a statically knownNamedTupletype. The QA allow-list is scoped to:structdiffinOrdinaryDiffEqFunctionMapand records that type-stability requirement.Validation
All commands were run locally on Julia 1.12 with a workspace-local depot.
OrdinaryDiffEqFunctionMap_Coreon the validation-only Restore SciMLBase 3.39 compatibility for owner imports #4066 dependency stack:DiscreteProblem Defaults21/21 andDiscrete Algorithm Tests18/18; package tests passedOrdinaryDiffEqFunctionMap_QAon the same stack: AllocCheck 2/2, JET 1/1, Aqua/ExplicitImports 19/19; package tests passedgit diff --check: passedClean
mastercurrently cannot resolve the official group before reaching FunctionMap because the local NonlinearSolve subpackage requires SciMLBase 3.40 while the root project still caps it at 3.39. That independent dependency-floor correction is #4066 and was applied only in a disposable validation worktree; it is absent from this two-file PR.