Skip to content

precompile failure on julia v1.4 when using with DifferentialEquations #103

@wnoise

Description

@wnoise

This failure is due to Julia 1.5 syntax used in the compatibility hook src/compat/diffeqbase.jl .

The Project.toml claims compatibility with Julia "1".

I do think compatibility with 1.4 is worth supporting, especially given that the current stable Ubuntu (20.04) comes with 1.4.1.

Pull request to follow (based off of the initial commit; my general policy is to create bug-fixes as far-back as practical so that it can most easily be merged into any branches that may have the bug.)

Demonstration and stack trace:

; julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.4.1
 _/ |\__'_|_|_|\__'_|  |  Ubuntu ⛬  julia/1.4.1+dfsg-1
|__/                   |

julia> using DifferentialEquations

julia> using ComponentArrays
[ Info: Precompiling ComponentArrays [b0b7db55-cfe3-40fc-9ded-d10e2dbeff66]
┌ Warning: Error requiring `RecursiveFactorization` from `ComponentArrays`
│   exception =
│    LoadError: syntax: invalid keyword argument syntax "tol"
│    Stacktrace:
│     [1] top-level scope at /home/adenney/.julia/packages/ComponentArrays/OKeW7/src/compat/diffeqbase.jl:2
│     [2] include(::Module, ::String) at ./Base.jl:377
│     [3] include at /home/adenney/.julia/packages/ComponentArrays/OKeW7/src/ComponentArrays.jl:1 [inlined]
│     [4] required(::String) at /home/adenney/.julia/packages/ComponentArrays/OKeW7/src/ComponentArrays.jl:49
│     [5] top-level scope at REPL[2]:1
│     [6] eval at ./boot.jl:331 [inlined]
│     [7] eval at /home/adenney/.julia/packages/ComponentArrays/OKeW7/src/ComponentArrays.jl:1 [inlined]
│     [8] (::ComponentArrays.var"#122#125")() at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:99
│     [9] err(::Any, ::Module, ::String) at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:47
│     [10] (::ComponentArrays.var"#121#124")() at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:98
│     [11] withpath(::Any, ::String) at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:37
│     [12] (::ComponentArrays.var"#120#123")() at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:97
│     [13] listenpkg(::Any, ::Base.PkgId) at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:20
│     [14] top-level scope at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:95
│     [15] top-level scope at /home/adenney/.julia/packages/ComponentArrays/OKeW7/src/ComponentArrays.jl:54
│     [16] eval at ./boot.jl:331 [inlined]
│     [17] eval at /home/adenney/.julia/packages/ComponentArrays/OKeW7/src/ComponentArrays.jl:1 [inlined]
│     [18] (::ComponentArrays.var"#89#107")() at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:99
│     [19] err(::Any, ::Module, ::String) at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:47
│     [20] (::ComponentArrays.var"#88#106")() at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:98
│     [21] withpath(::Any, ::String) at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:37
│     [22] (::ComponentArrays.var"#87#105")() at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:97
│     [23] listenpkg(::Any, ::Base.PkgId) at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:20
│     [24] macro expansion at /home/adenney/.julia/packages/Requires/7Ncym/src/require.jl:95 [inlined]
│     [25] __init__() at /home/adenney/.julia/packages/ComponentArrays/OKeW7/src/ComponentArrays.jl:53
│     [26] _include_from_serialized(::String, ::Array{Any,1}) at ./loading.jl:697
│     [27] _require_from_serialized(::String) at ./loading.jl:748
│     [28] _require(::Base.PkgId) at ./loading.jl:1039
│     [29] require(::Base.PkgId) at ./loading.jl:927
│     [30] require(::Module, ::Symbol) at ./loading.jl:922
│     [31] eval(::Module, ::Any) at ./boot.jl:331
│     [32] eval_user_input(::Any, ::REPL.REPLBackend) at /build/julia-98cBbp/julia-1.4.1+dfsg/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:86
│     [33] macro expansion at /build/julia-98cBbp/julia-1.4.1+dfsg/usr/share/julia/stdlib/v1.4/REPL/src/REPL.jl:118 [inlined]
│     [34] (::REPL.var"#26#27"{REPL.REPLBackend})() at ./task.jl:358
│    in expression starting at /home/adenney/.julia/packages/ComponentArrays/OKeW7/src/compat/diffeqbase.jl:2
└ @ Requires ~/.julia/packages/Requires/7Ncym/src/require.jl:49

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions