Closed MilesCranmer closed 2 years ago
Seems like 0.4.1 is working: https://github.com/MilesCranmer/SymbolicRegression.jl/runs/7941825248?check_suite_focus=true, so the issue comes from the diff between 0.4.1 and 0.4.2.
There was only one function added in that patch:
Try just deleting that function in a branch and running the tests.
If that doesn't work, then try just importing ReverseDiff to your package. That's the only other change.
Alright, looks like it's ReverseDiff which is causing the issue! Thanks for your help!
Hi all,
I was wondering if you could help me solve the following mystery. As described in detail on discourse, my GitHub action for SymbolicRegression.jl started breaking about 10 days ago on Windows systems. Following some detective work with the help of @rikhuijzer, I did a binary search over all changed dependencies. It seems as though adding a compat entry:
solves this issue. i.e., it seems like the change from 0.4.0 to 0.4.2 is, for whatever reason, breaking SymbolicRegression.jl's distributed tests on Windows.
The weird thing is that PreallocationTools is not a direct dependency (dependency of LabelledArrays.jl which is itself a dependency of SymbolicUtils.jl), but it seems like it is causing something to break when worker processes try to activate the environment.
The diff between 0.4.0 and 0.4.2 doesn't raise any red flags, so I also tried to rule out some other things. Since ReverseDiff.jl and FunctionWrappers.jl are newly-introduced requirements by 0.4.2, I tried installing them manually. This doesn't recreate the bug - it only seems to be from PreallocationTools.jl for some reason. All other packages can have their exact same versions, but when PreallocationTools.jl is updated, it seems to cause the bug.
In terms of actual interaction with PreallocationTools, the only thing I can think of is through SymbolicUtils.jl. Is there perhaps any code in SymbolicUtils.jl that would behave differently if the newer version of PreallocationTools.jl is installed?
You can view an example of this error here: https://github.com/MilesCranmer/SymbolicRegression.jl/actions/runs/2896116572 - (I pasted the error message on the discourse thread) - sometimes the jobs hang, and sometimes they crash.
I also realized that the reason the job appears to work on Julia 1.5 on Windows is because PreallocationTools.jl requires Julia 1.6, so it doesn't get installed on the Julia 1.5 runs.
Thanks! Miles