NonlinearSolve.jl and Optimization.jl conflict on install

Tried on an Mac M1 and on Windows, also on (initially) empty package. Whatever of these two I install first, on installation of the second one I get error like this:

(OptimizationInd) pkg> add NonlinearSolve
   Resolving package versions...
    Updating `~/Julia/OptimizationInd/Project.toml`
  [8913a72c] + NonlinearSolve v1.10.0
    Updating `~/Julia/OptimizationInd/Manifest.toml`
  [ec485272] + ArnoldiMethod v0.2.0
  [30b0a656] + ArrayInterfaceCore v0.1.29
  [62783981] + BitTwiddlingConvenienceFunctions v0.1.5
  [2a0fbf3d] + CPUSummary v0.2.3
  [fb6a15b2] + CloseOpenIntervals v0.1.12
  [adafc99b] + CpuId v0.3.1
  [2b5f629d] + DiffEqBase v6.128.2
  [7034ab61] + FastBroadcast v0.2.6
  [29a986be] + FastLapackInterface v2.0.0
  [6a86dc24] + FiniteDiff v2.21.1
  [86223c79] + Graphs v1.8.0
  [3e5b6fbb] + HostCPUFeatures v0.1.16
  [d25df0c9] + Inflate v0.1.3
  [ef3ab10e] + KLU v0.4.0
  [ba0b0d4f] + Krylov v0.9.4
  [10f19ff3] + LayoutPointers v0.1.14
  [7ed4a6bd] + LinearSolve v2.5.1
  [bdcacae8] + LoopVectorization v0.12.165
  [d125e4d3] + ManualMemory v0.1.8
  [46d2c3a1] + MuladdMacro v0.2.4
  [8913a72c] + NonlinearSolve v1.10.0
  [6fe1bfb0] + OffsetArrays v1.12.10
  [65ce6f38] + PackageExtensionCompat v1.0.1
  [d96e819e] + Parameters v0.12.3
  [f517fe37] + Polyester v0.7.5
  [1d0040c9] + PolyesterWeave v0.2.1
  [f2c3362d] + RecursiveFactorization v0.2.20
  [94e857df] + SIMDTypes v0.1.0
  [476501e8] + SLEEFPirates v0.6.39
  [727e6d20] + SimpleNonlinearSolve v0.1.19
  [699a6c99] + SimpleTraits v0.9.4
  [47a9eef4] + SparseDiffTools v2.6.0
  [e56a9233] + Sparspak v0.3.9
  [aedffcd0] + Static v0.8.8
  [0d7ed370] + StaticArrayInterface v1.4.1
  [7792a7ef] + StrideArraysCore v0.4.17
  [8290d209] + ThreadingUtilities v0.5.2
  [d5829a12] + TriangularSolve v0.1.19
  [3a884ed6] + UnPack v1.0.2
  [3d5dd08c] + VectorizationBase v0.21.64
  [19fa3120] + VertexSafeGraphs v0.2.0
  [a63ad114] + Mmap
  [1a1011a3] + SharedArrays
Precompiling project...
  2 dependencies successfully precompiled in 8 seconds. 172 already precompiled.
  2 dependencies had warnings during precompilation:
β”Œ OptimizationSparseForwardDiffExt [701a54de-6e64-5ef9-9423-e7f6ffec093b]
β”‚  β”Œ Warning: Module OptimizationSparseForwardDiffExt with build ID ffffffff-ffff-ffff-0006-476fca23b122 is missing from the cache.
β”‚  β”‚ This may mean OptimizationSparseForwardDiffExt [701a54de-6e64-5ef9-9423-e7f6ffec093b] does not support precompilation but is imported by a module that does.
β”‚  β”” @ Base loading.jl:1793
β”‚  β”Œ Error: Error during loading of extension OptimizationSparseForwardDiffExt of Optimization, use `Base.retry_load_extensions()` to retry.
β”‚  β”‚   exception =
β”‚  β”‚    1-element ExceptionStack:
β”‚  β”‚    Declaring __precompile__(false) is not allowed in files that are being precompiled.
β”‚  β”‚    Stacktrace:
β”‚  β”‚      [1] _require(pkg::Base.PkgId, env::Nothing)
β”‚  β”‚        @ Base ./loading.jl:1797
β”‚  β”‚      [2] _require_prelocked(uuidkey::Base.PkgId, env::Nothing)
β”‚  β”‚        @ Base ./loading.jl:1660
β”‚  β”‚      [3] _require_prelocked(uuidkey::Base.PkgId)
β”‚  β”‚        @ Base ./loading.jl:1658
β”‚  β”‚      [4] run_extension_callbacks(extid::Base.ExtensionId)
β”‚  β”‚        @ Base ./loading.jl:1255
β”‚  β”‚      [5] run_extension_callbacks(pkgid::Base.PkgId)
β”‚  β”‚        @ Base ./loading.jl:1290
β”‚  β”‚      [6] run_package_callbacks(modkey::Base.PkgId)
β”‚  β”‚        @ Base ./loading.jl:1124
β”‚  β”‚      [7] _require_prelocked(uuidkey::Base.PkgId, env::String)
β”‚  β”‚        @ Base ./loading.jl:1667
β”‚  β”‚      [8] macro expansion
β”‚  β”‚        @ ./loading.jl:1648 [inlined]
β”‚  β”‚      [9] macro expansion
β”‚  β”‚        @ ./lock.jl:267 [inlined]
β”‚  β”‚     [10] require(into::Module, mod::Symbol)
β”‚  β”‚        @ Base ./loading.jl:1611
β”‚  β”‚     [11] top-level scope
β”‚  β”‚        @ ~/.julia/packages/Optimization/7iJte/ext/OptimizationSparseFiniteDiffExt.jl:8
β”‚  β”‚     [12] include
β”‚  β”‚        @ ./Base.jl:457 [inlined]
β”‚  β”‚     [13] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
β”‚  β”‚        @ Base ./loading.jl:2049
β”‚  β”‚     [14] top-level scope
β”‚  β”‚        @ stdin:3
β”‚  β”‚     [15] eval
β”‚  β”‚        @ ./boot.jl:370 [inlined]
β”‚  β”‚     [16] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)
β”‚  β”‚        @ Base ./loading.jl:1903
β”‚  β”‚     [17] include_string
β”‚  β”‚        @ ./loading.jl:1913 [inlined]
β”‚  β”‚     [18] exec_options(opts::Base.JLOptions)
β”‚  β”‚        @ Base ./client.jl:305
β”‚  β”‚     [19] _start()
β”‚  β”‚        @ Base ./client.jl:522
β”‚  β”” @ Base loading.jl:1261
β””  
β”Œ OptimizationSparseFiniteDiffExt [92caba6d-e51c-553f-b336-9fb2cfdd4f0e]
β”‚  β”Œ Warning: Module OptimizationSparseFiniteDiffExt with build ID ffffffff-ffff-ffff-0006-476fcca72788 is missing from the cache.
β”‚  β”‚ This may mean OptimizationSparseFiniteDiffExt [92caba6d-e51c-553f-b336-9fb2cfdd4f0e] does not support precompilation but is imported by a module that does.
β”‚  β”” @ Base loading.jl:1793
β”‚  β”Œ Error: Error during loading of extension OptimizationSparseFiniteDiffExt of Optimization, use `Base.retry_load_extensions()` to retry.
β”‚  β”‚   exception =
β”‚  β”‚    1-element ExceptionStack:
β”‚  β”‚    Declaring __precompile__(false) is not allowed in files that are being precompiled.
β”‚  β”‚    Stacktrace:
β”‚  β”‚      [1] _require(pkg::Base.PkgId, env::Nothing)
β”‚  β”‚        @ Base ./loading.jl:1797
β”‚  β”‚      [2] _require_prelocked(uuidkey::Base.PkgId, env::Nothing)
β”‚  β”‚        @ Base ./loading.jl:1660
β”‚  β”‚      [3] _require_prelocked(uuidkey::Base.PkgId)
β”‚  β”‚        @ Base ./loading.jl:1658
β”‚  β”‚      [4] run_extension_callbacks(extid::Base.ExtensionId)
β”‚  β”‚        @ Base ./loading.jl:1255
β”‚  β”‚      [5] run_extension_callbacks(pkgid::Base.PkgId)
β”‚  β”‚        @ Base ./loading.jl:1290
β”‚  β”‚      [6] run_package_callbacks(modkey::Base.PkgId)
β”‚  β”‚        @ Base ./loading.jl:1124
β”‚  β”‚      [7] _require_prelocked(uuidkey::Base.PkgId, env::String)
β”‚  β”‚        @ Base ./loading.jl:1667
β”‚  β”‚      [8] macro expansion
β”‚  β”‚        @ ./loading.jl:1648 [inlined]
β”‚  β”‚      [9] macro expansion
β”‚  β”‚        @ ./lock.jl:267 [inlined]
β”‚  β”‚     [10] require(into::Module, mod::Symbol)
β”‚  β”‚        @ Base ./loading.jl:1611
β”‚  β”‚     [11] top-level scope
β”‚  β”‚        @ ~/.julia/packages/Optimization/7iJte/ext/OptimizationSparseForwardDiffExt.jl:8
β”‚  β”‚     [12] include
β”‚  β”‚        @ ./Base.jl:457 [inlined]
β”‚  β”‚     [13] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
β”‚  β”‚        @ Base ./loading.jl:2049
β”‚  β”‚     [14] top-level scope
β”‚  β”‚        @ stdin:3
β”‚  β”‚     [15] eval
β”‚  β”‚        @ ./boot.jl:370 [inlined]
β”‚  β”‚     [16] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)
β”‚  β”‚        @ Base ./loading.jl:1903
β”‚  β”‚     [17] include_string
β”‚  β”‚        @ ./loading.jl:1913 [inlined]
β”‚  β”‚     [18] exec_options(opts::Base.JLOptions)
β”‚  β”‚        @ Base ./client.jl:305
β”‚  β”‚     [19] _start()
β”‚  β”‚        @ Base ./client.jl:522
β”‚  β”” @ Base loading.jl:1261
β””  

(OptimizationInd) pkg> 

Yes, there’s an issue open and we’re working though it. It’s something to do with cycles in extensions. It’s at least benign if you’re not using the new (undocumented?) autodiff choices in Optimization.jl, but it’s annoying and something we’re trying to fix ASAP.

1 Like