Require StableRNGs 1 for tests#1521
Conversation
Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
|
Validation scratchpad for
An independent clean-master reproduction/history trace is running in parallel. I will add its exact introducing-commit and boundary result here when terminal, then classify hosted checks after the repository's normal CI window. |
|
Independent clean-master audit is terminal:
The independent trap restored the original Project byte-for-byte and left its worktree clean. Combined with the validation-only #1512 layer already recorded above, this independently isolates the one-line StableRNGs floor from current-master test failures. |
|
Terminal CI classification for exact head
The exact promoted minimum graph was also exercised locally on Julia 1.10. It selected |
Summary
Please ignore this PR until it has been reviewed by @ChrisRackauckas.
Why
SciML/.github#119 makes old-style
[extras]remain at their action-selected minimum versions duringPkg.test. With those production semantics, current Catalystmasterresolves the unbounded StableRNGs test extra to 0.1.0. Julia 1.10 then errors in the existingtest/reactionsystem_core/reactionsystem.jl:207regression with an ambiguousRandom.Sampler(::Type{StableRNGs.LehmerRNG}, ::UnitRange{Int64}, ::Val{Inf})method.StableRNGs 0.1.1 is the minimal mechanical fix for that ambiguity. This PR intentionally requires 1 instead: 1.0.0 was already available about 4.5 months before Catalyst first declared StableRNGs as a test extra, and
test/extensions/Project.tomlalready requires StableRNGs 1.0.4. Root tests use the publicStableRNGAPI rather than the removed implementation nameLehmerRNG, so retaining the pre-1.0 line provides no useful transition window. The existing ReactionSystem test directly exercises the failing behavior, so this compat-only correction does not add a redundant dependency-version assertion.Local validation
The exact runs used Julia 1.10.11, General
ebea3c922b48a58438335288df661a3b4b2f85ae,julia-actions/julia-downgrade-compatfab1defb76df9fd672f63c94df73ce131d32e134, and the production promotion helper from SciML/.github#119 head4d16630091d8a7c4397f0fe3653d88beaad7b15c.masterselected StableRNGs 0.1.0. Reaction Structure passed 99/99, then ReactionSystem Structure stopped at the sampler ambiguity after 13 passes and one error. The locked manifest remained unchanged at SHA-25679d72ab1381f570ff3c56f2b3d19630d46ae6aefe2710afa278f96e75b975382.SciMLBaseimport already fixed independently by Import SciMLBase directly in module-qualified tests #1514. The candidate manifest stayed byte-identical through build and test at SHA-2560fac799e57bf1dde580f0460e7756cf570e78a17bacc6d38c110ef40fd26d7e3.git diff --check, and the one-line scope check passed. Repository-wide Runic reproduced Catalyst's existing broad formatting baseline tracked in Runic 1.7.0 reports 74 unformatted files on master #1518; this PR changes no Julia source.The temporary #1512 validation changes and generated manifest were removed before committing; the branch contains only the StableRNGs compat entry.