DifferentialEquations Pkg won't be added

julia> versioninfo()
Julia Version 0.5.1
Commit 6445c82 (2017-03-05 13:25 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.7.1 (ORCJIT, haswell)

I was struggling in a combat between Bio and DifferentialEquations, which were trying to downgrade each other.
Finally, I decided to initialize the Pkg in Julia 0.5.1, and had a try to add DifferentialEquations first, but I just got the following error.

julia> Pkg.status()
No packages installed

julia> Pkg.add("DifferentialEquations")
ERROR: unsatisfiable package requirements detected: no feasible version could be found for package: PolynomialFactors
  (you may try increasing the value of the
   JULIA_PKGRESOLVE_ACCURACY environment variable)
 in resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at ./pkg/resolve.jl:37

Strangely, after adding some packages such as IJulia, JuMP, Atom, etc., I could add DifferentialEquations but not the latest version. Moreover, no matter how I tried, I only could install v1.5.0 even though 1.9.1 supports Julia 0.5.x.

There are too many, complex dependencies such huge packages and I’ve been totally messed up while checking so many REQUIREs. Anybody can help me?

This is being worked on right now. It’s because of a big upgrade happening right now. The very last tag is this one:

https://github.com/JuliaLang/METADATA.jl/pull/8832

And it should go through very soon. When that is merged, give it a try. If it doesn’t work after that, then please ping me and we’ll work this out!

It should be fixed now. Please file an issue if you have any other problems!

1 Like

Ahh I see. Right now I have the following packages.

julia> Pkg.status()
8 required packages:
 - Atom                          0.5.10
 - Bio                           0.4.7
 - Cbc                           0.3.1
 - Gurobi                        0.3.1
 - IJulia                        1.4.1
 - JuMP                          0.16.2
 - Plots                         0.10.3
 - PyPlot                        2.3.1
88 additional packages:
...

In this situation, Pkg.add(“DifferentialEquations”) caused this error.

julia> Pkg.add("DifferentialEquations")
ERROR: unsatisfiable package requirements detected: no feasible version could be found for package: DiffEqParamEstim
  (you may try increasing the value of the
   JULIA_PKGRESOLVE_ACCURACY environment variable)
 in resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}) at ./pkg/resolve.jl:37
 in resolve(::Dict{String,Base.Pkg.Types.VersionSet}, ::Dict{String,Dict{VersionNumber,Base.Pkg.Types.Available}}, ::Dict{String,Tuple{VersionNumber,Bool}}, ::Dict{String,Base.Pkg.Types.Fixed}, ::Dict{String,VersionNumber}, ::Set{String}) at ./pkg/entry.jl:495
 in edit(::Function, ::String, ::Base.Pkg.Types.VersionSet, ::Vararg{Base.Pkg.Types.VersionSet,N}) at ./pkg/entry.jl:30
...

Because solving differential equations are not so urgent and I do not want to push the contributors, I am going to wait the completion of the renewal. Thank you for response.

Did you do a Pkg.update()?

Yeap, I always do Pkg.update() before adding any package. But sometimes I feel (not convince) that updating Github repositories is not promptly applied to Julia METADATA. I’ll try again tomorrow :slight_smile:

Alright. Let me know if you have any issues. It should all be fixed, but if it’s not then you’re a good test case :slight_smile:.

Hi Chris,

To jump in here if that’s ok, this morning Pkg.add(“DifferentialEquations”) indeed installed again. Is below list, e.g. DifferentialEquations.jl v"1.5.0", correct on Julia v"0.5.1"? This is after a (daily) Pkg.update().

Regards,
Rob

julia> Pkg.add(“DifferentialEquations”)
INFO: Updating cache of DiffEqPDEBase…
INFO: Updating cache of LearnBase…
INFO: Updating cache of ParameterizedFunctions…
INFO: Updating cache of Sundials…
INFO: Updating cache of SymEngine…
INFO: Installing AlgebraicDiffEq v0.1.0
INFO: Installing ChunkedArrays v0.1.1
INFO: Downgrading DiffEqBase: v0.15.0 => v0.6.0
INFO: Installing DiffEqDevTools v0.6.0
INFO: Installing DiffEqPDEBase v0.1.0
INFO: Installing DiffEqParamEstim v0.1.0
INFO: Installing DiffEqSensitivity v0.0.4
INFO: Installing DifferentialEquations v1.5.0
INFO: Installing EllipsisNotation v0.0.2
INFO: Installing FiniteElementDiffEq v0.2.1
INFO: Installing GenericSVD v0.0.2
INFO: Installing InplaceOps v0.1.0
INFO: Installing LearnBase v0.1.5
INFO: Installing LossFunctions v0.0.3
INFO: Downgrading ODE: v0.4.0 => v0.3.0
INFO: Installing OrdinaryDiffEq v1.0.2
INFO: Installing ParameterizedFunctions v1.2.0
INFO: Installing ResettableStacks v0.1.0
INFO: Installing StochasticDiffEq v0.5.0
INFO: Installing StokesDiffEq v0.1.0
INFO: Installing Sundials v0.9.0
INFO: Installing SymEngine v0.1.5
INFO: Installing VectorizedRoutines v0.0.2
INFO: Building Rmath
INFO: Building Sundials
INFO: Building Conda
INFO: Building SymEngine
INFO: Package database updated

This is on:

julia> versioninfo()
Julia Version 0.5.1
Commit 6445c82 (2017-03-05 13:25 UTC)
Platform Info:
OS: macOS (x86_64-apple-darwin13.4.0)
CPU: Intel(R) Core™ i5-6267U CPU @ 2.90GHz
WORD_SIZE: 64
BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
LAPACK: libopenblas64_
LIBM: libopenlibm
LLVM: libLLVM-3.7.1 (ORCJIT, broadwell)

Hmm, I just wiped .julia and install gave DifferentialEquations v1.10.1 with DiffEqBase v0.15.0. For some reason it’s giving you a really old version. Would you mind posting your Pkg.status() so I can investigate this a bit? During this update I think we ran into a package resolver bug in Pkg, and we’re still not quite sure why the downgrading is happening in some cases.

Note that if you have LSODA.jl installed, you will get downgraded. That’s the only case I currently know of, and it hasn’t updated yet because that’s related to this other Discourse question:

But hopefully that will get worked out soon a new version can be tagged there. For now, if you have LSODA.jl, remove it (it doesn’t come standard with DifferentialEquations, so it’s only there if you intentionally installed it)

Thanks Chris,

Attached the (long) list. LSODA.jl is not installed.

I’m quite ok to wipe .julia v"0.5" to try what you did (last time I tried that was late December). I’ll hold off for now until you have had time if to scan this list and maybe would like me to try something.

Regards,
Rob

           _

_ _ ()_ | A fresh approach to technical computing
() | () () | Documentation: http://docs.julialang.org
_ _ | | __ _ | Type “?help” for help.
| | | | | | |/ ` | |
| | |
| | | | (
| | | Version 0.5.1 (2017-03-05 13:25 UTC)
/ |_|||_’_| | Official http://julialang.org/ release
|__/ | x86_64-apple-darwin13.4.0

julia> Pkg.status()
53 required packages:

  • ApproxFun 0.6.0
  • Atom 0.5.10
  • BenchmarkTools 0.0.7
  • CSV 0.1.4
  • Cairo 0.3.0
  • Cbc 0.3.1
  • Clp 0.3.0
  • Combinatorics 0.4.0
  • DataFrames 0.9.0
  • DataTables 0.0.2
  • Dierckx 0.2.0
  • DifferentialEquations 1.5.0
  • Documenter 0.9.2
  • Escher 0.3.3
  • Espresso 0.1.0+ master
  • GLM 0.7.0
  • GR 0.19.0
  • Gadfly 0.6.0
  • GraphViz 0.1.0
  • Graphs 0.7.1+ master
  • HDF5 0.8.0
  • Homebrew 0.5.6
  • HyperDualNumbers 1.0.0
  • IJulia 1.4.1
  • Interact 0.4.3
  • Interpolations 0.4.0
  • Ipopt 0.2.6
  • IterativeSolvers 0.2.2
  • Jags 1.0.2+ master
  • JuMP 0.16.2
  • JuliaFEM 0.2.1
  • Lint 0.5.0
  • LsqFit 0.2.0
  • Luxor 0.8.3
  • Mamba 0.10.0
  • NLsolve 0.9.1
  • ODE 0.3.0
  • Permutations 0.0.1
  • PkgDev 0.1.3
  • Plots 0.10.3+ master
  • PyPlot 2.3.1
  • Query 0.3.2+ master
  • RCall 0.7.2
  • Roots 0.3.0
  • Stan 1.0.2+ master
  • StaticArrays 0.3.0
  • Switch 0.0.1
  • Symata 0.2.0+ master
  • TaylorSeries 0.4.0
  • TypedTables 0.1.2
  • Unitful 0.2.2+ master
  • Unums 0.2.1
  • WriteVTK 0.5.1
    162 additional packages:
  • ASTInterpreter 0.0.4
  • AbstractTrees 0.0.4
  • AlgebraicDiffEq 0.1.0
  • ArgParse 0.4.0
  • AxisAlgorithms 0.1.6
  • AxisArrays 0.1.2
  • BHAA 0.0.0- master (unregistered)
  • BHAAnalysis 0.0.0- master (unregistered)
  • BHACases 0.0.0- master (unregistered)
  • BHAPlotRecipes 0.0.0- master (unregistered)
  • BandedMatrices 0.2.2
  • BinDeps 0.4.7
  • Blink 0.5.1
  • Blosc 0.2.0
  • BoreHoleAssemblyAnalysis 0.0.0- master (unregistered)
  • BufferedStreams 0.3.2
  • COFF 0.0.2
  • CRC 1.2.0
  • Calculus 0.2.2
  • CategoricalArrays 0.1.3
  • ChunkedArrays 0.1.1
  • ClassicalLaminateTheory 0.0.0- master (unregistered)
  • CodeTools 0.4.3
  • Codecs 0.3.0
  • ColorTypes 0.4.0
  • Colors 0.7.3
  • Compat 0.23.0
  • Compose 0.5.0
  • Conda 0.5.3
  • Contour 0.2.0
  • DWARF 0.1.0
  • DataArrays 0.3.12
  • DataStreams 0.1.3
  • DataStructures 0.5.3
  • Dates 0.4.4
  • DiffBase 0.1.0
  • DiffEqBase 0.6.0
  • DiffEqDevTools 0.6.0
  • DiffEqPDEBase 0.1.0
  • DiffEqParamEstim 0.1.0
  • DiffEqSensitivity 0.0.4
  • Distances 0.4.1
  • Distributions 0.12.3
  • DocStringExtensions 0.3.2
  • DualNumbers 0.3.0
  • EDxMIT15053 0.0.0- master (unregistered)
  • EDxMIT201 0.0.0- master (unregistered)
  • EDxMath226 0.0.0- master (unregistered)
  • EEM 0.0.0- master (unregistered)
  • ELF 0.1.0
  • Einsum 0.1.0
  • EllipsisNotation 0.0.2
  • FactCheck 0.4.3
  • FastGaussQuadrature 0.2.1
  • FastTransforms 0.1.0
  • FileIO 0.3.1
  • FiniteElementDiffEq 0.2.1
  • FixedPointNumbers 0.3.6
  • FixedSizeArrays 0.2.5
  • Formatting 0.2.1
  • ForwardDiff 0.4.2
  • FunctionalCollections 0.3.2
  • GZip 0.3.0
  • Gallium 0.0.4
  • GenericSVD 0.0.2
  • Geomechanics 0.0.0- master (unregistered)
  • Graphics 0.2.0
  • Hexagons 0.1.0
  • Hiccup 0.1.1
  • HttpCommon 0.2.7
  • HttpParser 0.2.0
  • HttpServer 0.2.0
  • InplaceOps 0.1.0
  • IntervalSets 0.0.5
  • IterableTables 0.0.0- master (unregistered)
  • Iterators 0.3.0
  • JLD 0.6.10
  • JSON 0.9.0
  • JuliaParser 0.7.4
  • Juno 0.2.7
  • KernelDensity 0.3.2
  • LNR 0.0.2
  • LaTeXStrings 0.2.1
  • Lazy 0.11.6
  • LearnBase 0.1.5
  • LegacyStrings 0.2.1
  • Libz 0.2.4
  • LightXML 0.5.0
  • LineSearches 0.1.5
  • Loess 0.2.0
  • Logging 0.3.1
  • LossFunctions 0.0.3
  • MachO 0.0.4
  • MacroTools 0.3.6
  • Markdown 0.3.0
  • Matcha 0.0.1
  • MathProgBase 0.6.4
  • MbedTLS 0.4.5
  • Measures 0.1.0
  • Media 0.2.7
  • Memoize 0.1.0
  • Mustache 0.1.4
  • Mux 0.2.3
  • NMfE 0.0.0- master (unregistered)
  • NaNMath 0.2.4
  • NamedArrays 0.6.0
  • NamedTuples 2.1.0
  • Nettle 0.3.0
  • NullableArrays 0.1.0
  • ObjFileBase 0.0.4
  • Optim 0.7.8
  • OrdinaryDiffEq 1.0.2
  • PDMats 0.5.6
  • ParameterizedFunctions 1.2.0
  • Parameters 0.7.2
  • Patchwork 0.3.1
  • PlotThemes 0.1.1
  • PlotUtils 0.3.0
  • PolynomialFactors 0.0.4
  • Polynomials 0.1.5
  • PositiveFactorizations 0.0.4
  • Primes 0.1.3
  • PtFEM 0.0.0- master (unregistered)
  • PyCall 1.11.1
  • QuadGK 0.1.2
  • RangeArrays 0.1.2
  • Ranges 0.0.1
  • Ratios 0.0.4
  • Reactive 0.3.7
  • RecipesBase 0.1.0
  • RecursiveArrayTools 0.2.0
  • Reexport 0.0.3
  • Requires 0.3.0
  • ResettableStacks 0.1.0
  • ReverseDiffSparse 0.7.2
  • Rmath 0.1.6
  • RobGoedmansNotebooks 0.0.0- master (unregistered)
  • SHA 0.3.2
  • Showoff 0.1.1
  • SimpleTraits 0.4.0+ master
  • SortingAlgorithms 0.1.1
  • SpecialFunctions 0.1.1
  • StatsBase 0.13.1
  • StatsFuns 0.5.0
  • StochasticDiffEq 0.5.0
  • StokesDiffEq 0.1.0
  • StructIO 0.0.2
  • Sugar 0.1.0
  • Sundials 0.9.0
  • SymEngine 0.1.5
  • TerminalUI 0.0.2
  • TextWrap 0.2.0
  • ToeplitzMatrices 0.2.0
  • URIParser 0.1.8
  • UnitfulOFU 0.0.0- master (unregistered)
  • UnitfulPlots 0.0.0- master (unregistered)
  • VT100 0.1.0
  • VectorizedRoutines 0.0.2
  • WeakRefStrings 0.2.0
  • WebSockets 0.2.1
  • WoodburyMatrices 0.2.2
  • ZMQ 0.4.2

For what it’s worth, my most recent bout of ‘unsatisfiable package requirements’ also limited me to DifferentialEquations v1.5.

Not sure if it is true for others. But doing a clean reinstall of all my Julia packages, I find that I can’t have both the Juno stuff (Atom etc) and DifferentialEquations at the same time. But I can have just DiffEq stuff now if I don’t install Atom!

Oops, thank you, that fixed it for me as well! (I just dir Pkg.rm(“Atom”) and all packages were upgraded)

Do you guys have ImageMagick.jl installed? I can reproduce this by, in a fresh install:

  1. Adding DifferentialEquations
  2. Setting up Juno
  3. Adding Plots
  4. Adding ImageMagick

I’ll start trying to find out what’s up (or if it’s a Pkg resolver issue), but if we can narrow down the test case it would help.

No, I haven’t, but I remember I had similar storms around Image.jl and co a couple of weeks ago so I removed them.

Below what Pkg.rm(“Atom”) did:

julia> Pkg.rm(“Atom”)
INFO: Updating cache of DelayDiffEq…
INFO: Updating cache of DiffEqCallbacks…
INFO: Updating cache of DiffEqDevTools…
INFO: Updating cache of DiffEqFinancial…
INFO: Updating cache of DiffEqJump…
INFO: Updating cache of DiffEqMonteCarlo…
INFO: Updating cache of DiffEqParamEstim…
INFO: Updating cache of DiffEqSensitivity…
INFO: Updating cache of DifferentialEquations…
INFO: Updating cache of FiniteElementDiffEq…
INFO: Updating cache of OrdinaryDiffEq…
INFO: Updating cache of StochasticDiffEq…
INFO: Installing DelayDiffEq v0.3.0
INFO: Upgrading DiffEqBase: v0.6.0 => v0.15.0
INFO: Installing DiffEqBiological v0.0.1
INFO: Installing DiffEqCallbacks v0.0.2
INFO: Upgrading DiffEqDevTools: v0.6.0 => v0.7.0
INFO: Installing DiffEqFinancial v0.1.0
INFO: Installing DiffEqJump v0.3.0
INFO: Installing DiffEqMonteCarlo v0.2.0
INFO: Upgrading DiffEqPDEBase: v0.1.0 => v0.2.0
INFO: Upgrading DiffEqParamEstim: v0.1.0 => v0.2.0
INFO: Upgrading DiffEqSensitivity: v0.0.4 => v0.1.0
INFO: Upgrading DifferentialEquations: v1.5.0 => v1.10.1
INFO: Upgrading FiniteElementDiffEq: v0.2.1 => v0.3.0
INFO: Installing MultiScaleArrays v0.1.0
INFO: Upgrading ODE: v0.3.0 => v0.4.0
INFO: Upgrading OrdinaryDiffEq: v1.0.2 => v1.8.0
INFO: Upgrading ParameterizedFunctions: v1.2.0 => v1.3.0
INFO: Upgrading StochasticDiffEq: v0.5.0 => v1.4.0
INFO: Upgrading Sundials: v0.9.0 => v0.10.0
INFO: Removing ASTInterpreter v0.0.4
INFO: Removing AbstractTrees v0.0.4
INFO: Removing Atom v0.5.10
INFO: Removing Blink v0.5.1
INFO: Removing COFF v0.0.2
INFO: Removing CRC v1.2.0
INFO: Removing CodeTools v0.4.3
INFO: Removing DWARF v0.1.0
INFO: Removing ELF v0.1.0
INFO: Removing Gallium v0.0.4
INFO: Removing JuliaParser v0.7.4
INFO: Removing LNR v0.0.2
INFO: Removing MachO v0.0.4
INFO: Removing Mustache v0.1.4
INFO: Removing ObjFileBase v0.0.4
INFO: Removing StructIO v0.0.2
INFO: Removing TerminalUI v0.0.2
INFO: Removing VT100 v0.1.0
INFO: Building Rmath
INFO: Building Sundials
INFO: Building Conda
INFO: Building SymEngine
INFO: Package database updated

julia> Pkg.installed(“ImageMagick”)

I’m now playing around and getting from really wild results. Example, adding and removing Plots/ImageMagick a few times, now it will sometimes downgrade after removing a package.

Pkg.update()
INFO: Updating METADATA...
INFO: Computing changes...
INFO: No packages to install, update or remove

Pkg.rm("Plots")
INFO: Downgrading ForwardDiff: v0.4.2 => v0.2.5
INFO: Downgrading LsqFit: v0.2.0 => v0.1.0
INFO: Downgrading NLsolve: v0.9.1 => v0.8.0
INFO: Downgrading Optim: v0.7.8 => v0.6.1
INFO: Removing DiffBase v0.1.0
INFO: Removing FixedSizeArrays v0.2.5
INFO: Removing Measures v0.1.0
INFO: Removing PlotThemes v0.1.1
INFO: Removing PlotUtils v0.3.0
INFO: Removing Plots v0.10.3
INFO: Removing Showoff v0.1.1

We should bring @tkelman in on this, but that sounds like a resolver bug to me. I looked around and don’t see any package with a Juno.jl maximum version (only minimum versions), so I don’t see how that could downgrade things.

Is there an easy way to query what set of version requirements caused the downgrades?

I believe it is a resolver bug, I have never been able to find an actual version compatibility conflict, and I’ve been getting these errors basically every time I try and update for weeks.

Well if it is, for better or worse, at least it sounds like we have a reproducible example.

Maybe More Pkg trouble: "unsatisfiable package requirements detected" - #16 by tkelman from a few days ago is related?

Does this issue also occur on 0.6? @carlobaldassi contributed several PRs improving the resolver. I don’t know if those have been backported yet.