JuliaOpt / MathProgBase.jl

DEPRECATED: Solver-independent functions (i.e. linprog and mixintprog) and low-level interface for Mathematical Programming
Other
80 stars 38 forks source link

Tests for MathProgBase fail on 0.7 beta #213

Open ufechner7 opened 6 years ago

ufechner7 commented 6 years ago

I tried to run the tests on 0.7beta to fix depreciations, but they fail:

(v0.7) pkg> test MathProgBase
   Testing MathProgBase
 Resolving package versions...
  Updating `/tmp/tmp6ttAjh/Project.toml`
  [6e4b80f9] - BenchmarkTools v0.3.2
  [336ed68f] - CSV v0.2.5
  [34da2185] + Compat v0.69.0
  [e2685f51] + ECOS v0.9.0
  [3c7084bd] + GLPKMathProgInterface v0.4.0
  [4076af6c] - JuMP v0.18.2
  [2774e3e8] - NLsolve v2.0.0
  [438e738f] - PyCall v1.17.1
  [d330b81b] - PyPlot v2.5.0+ #3a09082 (https://github.com/JuliaPy/PyPlot.jl.git)
  [6038ab10] - Rotations v0.7.1
  [90137ffa] - StaticArrays v0.8.2
  [2913bbd2] - StatsBase v0.24.0
  [44cfe95a] - Pkg 
  Updating `/tmp/tmp6ttAjh/Manifest.toml`
  [6e4b80f9] - BenchmarkTools v0.3.2
  [336ed68f] - CSV v0.2.5
  [49dc2e85] - Calculus v0.4.0
  [324d7699] - CategoricalArrays v0.3.10
  [944b1d66] - CodecZlib v0.4.3
  [3da002f7] - ColorTypes v0.7.2
  [5ae59095] - Colors v0.9.0
  [bbf7d656] - CommonSubexpressions v0.1.0
  [8f4d0f93] - Conda v0.8.1
  [a93c6f00] - DataFrames v0.11.6
  [9a8bc11e] - DataStreams v0.3.6
  [864edb3b] - DataStructures v0.9.0
  [c5cfe0b6] - DiffBase v0.3.2
  [01453d9d] - DiffEqDiffTools v0.6.0
  [163ba53b] - DiffResults v0.0.3
  [b552c78f] - DiffRules v0.0.6
  [b4f34e82] - Distances v0.7.0
  [e2685f51] + ECOS v0.9.0
  [53c48c17] - FixedPointNumbers v0.5.1
  [f6369f11] - ForwardDiff v0.7.5
  [60bf3e95] + GLPK v0.6.0
  [3c7084bd] + GLPKMathProgInterface v0.4.0
  [d9be37ee] + Homebrew v0.6.3
  [7d512f48] - InternedStrings v0.6.2
  [4076af6c] - JuMP v0.18.2
  [b964fa9f] - LaTeXStrings v1.0.0
  [f8899e07] + LinQuadOptInterface v0.1.0
  [d3d80556] - LineSearches v6.0.2
  [1914dd2f] - MacroTools v0.4.2
  [e1d29d7a] - Missings v0.2.10
  [d41bc354] - NLSolversBase v6.1.1
  [2774e3e8] - NLsolve v2.0.0
  [77ba4419] - NaNMath v0.3.1
  [73a701b4] - NamedTuples v4.0.2
  [d96e819e] - Parameters v0.9.0
  [438e738f] - PyCall v1.17.1
  [d330b81b] - PyPlot v2.5.0+ #3a09082 (https://github.com/JuliaPy/PyPlot.jl.git)
  [189a3867] - Reexport v0.1.0
  [89212889] - ReverseDiffSparse v0.8.1
  [6038ab10] - Rotations v0.7.1
  [a2af1166] - SortingAlgorithms v0.3.0
  [276daf66] - SpecialFunctions v0.6.0
  [90137ffa] - StaticArrays v0.8.2
  [2913bbd2] - StatsBase v0.24.0
  [3bb67fe8] - TranscodingStreams v0.5.2
  [81def892] - VersionParsing v1.1.1
  [ea10d353] - WeakRefStrings v0.4.7
  [9fa8497b] - Future 
  [10745b16] - Statistics 
WARNING: importing deprecated binding Base.Void into LinQuadOptInterface.
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /home/ufechner/.julia/packages/LinQuadOptInterface/h8Jw/src/mockoptimizer.jl:10
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /home/ufechner/.julia/packages/LinQuadOptInterface/h8Jw/src/mockoptimizer.jl:10
WARNING: importing deprecated binding Base.Nullable into LinQuadOptInterface.
ERROR: LoadError: LoadError: TypeError: in Type{...} expression, expected UnionAll, got typeof(Base.Nullable)
Stacktrace:
 [1] top-level scope at none:0
 [2] include at ./boot.jl:317 [inlined]
 [3] include_relative(::Module, ::String) at ./loading.jl:1034
 [4] include at ./sysimg.jl:29 [inlined]
 [5] include(::String) at /home/ufechner/.julia/packages/LinQuadOptInterface/h8Jw/src/LinQuadOptInterface.jl:9
 [6] top-level scope at none:0
 [7] include at ./boot.jl:317 [inlined]
 [8] include_relative(::Module, ::String) at ./loading.jl:1034
 [9] include(::Module, ::String) at ./sysimg.jl:29
 [10] top-level scope at none:0
 [11] eval at ./boot.jl:319 [inlined]
 [12] eval(::Expr) at ./client.jl:394
 [13] top-level scope at ./none:3 [inlined]
 [14] top-level scope at ./<missing>:0
in expression starting at /home/ufechner/.julia/packages/LinQuadOptInterface/h8Jw/src/mockoptimizer.jl:213
in expression starting at /home/ufechner/.julia/packages/LinQuadOptInterface/h8Jw/src/LinQuadOptInterface.jl:368
ERROR: LoadError: LoadError: Failed to precompile LinQuadOptInterface to /home/ufechner/.julia/compiled/v0.7/LinQuadOptInterface/tfVx.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] macro expansion at ./logging.jl:298 [inlined]
 [3] compilecache(::Base.PkgId) at ./loading.jl:1169
 [4] macro expansion at ./logging.jl:298 [inlined]
 [5] _require(::Base.PkgId) at ./loading.jl:929
 [6] require(::Base.PkgId) at ./loading.jl:838
 [7] require(::Module, ::Symbol) at ./loading.jl:833
 [8] include at ./boot.jl:317 [inlined]
 [9] include_relative(::Module, ::String) at ./loading.jl:1034
 [10] include at ./sysimg.jl:29 [inlined]
 [11] include(::String) at /home/ufechner/.julia/packages/GLPK/43W5/src/GLPK.jl:7
 [12] top-level scope at none:0
 [13] include at ./boot.jl:317 [inlined]
 [14] include_relative(::Module, ::String) at ./loading.jl:1034
 [15] include(::Module, ::String) at ./sysimg.jl:29
 [16] top-level scope at none:0
 [17] eval at ./boot.jl:319 [inlined]
 [18] eval(::Expr) at ./client.jl:394
 [19] top-level scope at ./none:3 [inlined]
 [20] top-level scope at ./<missing>:0
in expression starting at /home/ufechner/.julia/packages/GLPK/43W5/src/MOIWrapper.jl:5
in expression starting at /home/ufechner/.julia/packages/GLPK/43W5/src/GLPK.jl:2237
ERROR: LoadError: LoadError: LoadError: Failed to precompile GLPK to /home/ufechner/.julia/compiled/v0.7/GLPK/r6Co.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] macro expansion at ./logging.jl:298 [inlined]
 [3] compilecache(::Base.PkgId) at ./loading.jl:1169
 [4] _require(::Base.PkgId) at ./loading.jl:942
 [5] require(::Base.PkgId) at ./loading.jl:838
 [6] require(::Module, ::Symbol) at ./loading.jl:833
 [7] include at ./boot.jl:317 [inlined]
 [8] include_relative(::Module, ::String) at ./loading.jl:1034
 [9] include at ./sysimg.jl:29 [inlined]
 [10] include(::String) at /home/ufechner/.julia/packages/GLPKMathProgInterface/aGKc/src/GLPKMathProgInterface.jl:1
 [11] top-level scope at none:0
 [12] include at ./boot.jl:317 [inlined]
 [13] include_relative(::Module, ::String) at ./loading.jl:1034
 [14] macro expansion at ./logging.jl:312 [inlined]
 [15] _require(::Base.PkgId) at ./loading.jl:929
 [16] require(::Base.PkgId) at ./loading.jl:838
 [17] require(::Module, ::Symbol) at ./loading.jl:833
 [18] include at ./boot.jl:317 [inlined]
 [19] include_relative(::Module, ::String) at ./loading.jl:1034
 [20] include(::Module, ::String) at ./sysimg.jl:29
 [21] include(::String) at ./client.jl:393
 [22] top-level scope at none:0
in expression starting at /home/ufechner/.julia/packages/GLPKMathProgInterface/aGKc/src/GLPKInterfaceBase.jl:4
in expression starting at /home/ufechner/.julia/packages/GLPKMathProgInterface/aGKc/src/GLPKMathProgInterface.jl:9
in expression starting at /home/ufechner/.julia/dev/MathProgBase/test/runtests.jl:1
ERROR: Package MathProgBase errored during testing

(v0.7) pkg> 

Any idea?

blegat commented 6 years ago

The error seems to come from LQOI. Nullable{T} should be replaced by Union{Nothing, T}. cc @odow @joaquimg

odow commented 6 years ago

This is failing because it uses GLPK as a solver which uses LQOI.

However, thanks to @carlobaldassi: https://github.com/JuliaOpt/LinQuadOptInterface.jl/pull/36, https://github.com/JuliaOpt/GLPK.jl/pull/55