JuliaWeb/Gumbo.jl

Broken on v0.6

essenciary opened this issue · 6 comments

You probably know already, but just in case - it's broken on v0.6 due to broken AbstractTrees.jl
Is it possible to remove the dependency?

Sorry for long reply! The usual excuses about being busy, etc.

Hmmm, as I indicated in #37, I don't believe this to be the case anymore since version 0.4.0. Travis and PkgEval both indicate that the package loads and tests pass on 0.6.

Can you share the results of calling versioninfo(), and more details about the exact error you run into?

@porterjamesj
Annoyingly enough, it's still there. Fresh install of Julia v0.6, I get:

 _____         _     
|   __|___ ___|_|___ 
|  |  | -_|   | | -_|
|_____|___|_|_|_|___|
                                                      

Starting Genie in >> DEV << mode using 1 worker(s) 

ERROR: LoadError: invalid subtyping in definition of PostOrderDFS
Stacktrace:
 [1] include_from_node1(::String) at ./loading.jl:569
 [2] include(::String) at ./sysimg.jl:14
 [3] anonymous at ./<missing>:2
while loading /Users/adrian/.julia/v0.6/AbstractTrees/src/AbstractTrees.jl, in expression starting on line 521
ERROR: LoadError: LoadError: LoadError: LoadError: LoadError: LoadError: LoadError: LoadError: Failed to precompile AbstractTrees to /Users/adrian/.julia/lib/v0.6/AbstractTrees.ji.
compilecache(::String) at ./loading.jl:703
_require(::Symbol) at ./loading.jl:456
require(::Symbol) at ./loading.jl:398
include_from_node1(::String) at ./loading.jl:569
include(::String) at ./sysimg.jl:14
include_from_node1(::String) at ./loading.jl:569
eval(::Module, ::Any) at ./boot.jl:235
_require(::Symbol) at ./loading.jl:483
require(::Symbol) at ./loading.jl:398
include_from_node1(::String) at ./loading.jl:569
eval(::Module, ::Any) at ./boot.jl:235
_require(::Symbol) at ./loading.jl:483
require(::Symbol) at ./loading.jl:398
eval(::Expr) at /Users/adrian/.julia/v0.6/Genie/src/Renderer.jl:1
include_from_node1(::String) at ./loading.jl:569
eval(::Module, ::Any) at ./boot.jl:235
_require(::Symbol) at ./loading.jl:483
require(::Symbol) at ./loading.jl:398
include_from_node1(::String) at ./loading.jl:569
eval(::Module, ::Any) at ./boot.jl:235
_require(::Symbol) at ./loading.jl:483
require(::Symbol) at ./loading.jl:398
include_from_node1(::String) at ./loading.jl:569
eval(::Module, ::Any) at ./boot.jl:235
_require(::Symbol) at ./loading.jl:483
require(::Symbol) at ./loading.jl:398
include_from_node1(::String) at ./loading.jl:569
eval(::Module, ::Any) at ./boot.jl:235
_require(::Symbol) at ./loading.jl:483
require(::Symbol) at ./loading.jl:398
macro expansion at ./distributed/macros.jl:99 [inlined]
anonymous at ./<missing>:?
include_from_node1(::String) at ./loading.jl:569
include(::String) at ./sysimg.jl:14
(::Base.Distributed.##135#136{Base.#include,Tuple{String},Array{Any,1}})() at ./distributed/remotecall.jl:314
run_work_thunk(::Base.Distributed.##135#136{Base.#include,Tuple{String},Array{Any,1}}, ::Bool) at ./distributed/process_messages.jl:56
#remotecall_fetch#140(::Array{Any,1}, ::Function, ::Function, ::Base.Distributed.LocalProcess, ::String, ::Vararg{String,N} where N) at ./distributed/remotecall.jl:339
remotecall_fetch(::Function, ::Base.Distributed.LocalProcess, ::String, ::Vararg{String,N} where N) at ./distributed/remotecall.jl:339
#remotecall_fetch#144(::Array{Any,1}, ::Function, ::Function, ::Int64, ::String, ::Vararg{String,N} where N) at ./distributed/remotecall.jl:367
remotecall_fetch(::Function, ::Int64, ::String, ::Vararg{Any,N} where N) at ./distributed/remotecall.jl:367
(::Base.##504#506{Base.JLOptions})() at ./task.jl:335
while loading /Users/adrian/.julia/v0.6/Gumbo/src/manipulation.jl, in expression starting on line 3
while loading /Users/adrian/.julia/v0.6/Gumbo/src/Gumbo.jl, in expression starting on line 29
while loading /Users/adrian/.julia/v0.6/Flax/src/Flax.jl, in expression starting on line 6
while loading /Users/adrian/.julia/v0.6/Genie/src/Renderer.jl, in expression starting on line 10
while loading /Users/adrian/.julia/v0.6/Genie/src/Router.jl, in expression starting on line 4
while loading /Users/adrian/.julia/v0.6/Genie/src/AppServer.jl, in expression starting on line 6
while loading /Users/adrian/.julia/v0.6/Genie/src/Genie.jl, in expression starting on line 38
while loading /Users/adrian/simple_test_app/genie.jl, in expression starting on line 28
#remotecall_fetch#140(::Array{Any,1}, ::Function, ::Function, ::Base.Distributed.LocalProcess, ::String, ::Vararg{String,N} where N) at ./distributed/remotecall.jl:340
remotecall_fetch(::Function, ::Base.Distributed.LocalProcess, ::String, ::Vararg{String,N} where N) at ./distributed/remotecall.jl:339
#remotecall_fetch#144(::Array{Any,1}, ::Function, ::Function, ::Int64, ::String, ::Vararg{String,N} where N) at ./distributed/remotecall.jl:367
remotecall_fetch(::Function, ::Int64, ::String, ::Vararg{Any,N} where N) at ./distributed/remotecall.jl:367
(::Base.##504#506{Base.JLOptions})() at ./task.jl:335
Stacktrace:
 [1] sync_end() at ./task.jl:287
 [2] macro expansion at ./task.jl:303 [inlined]
 [3] process_options(::Base.JLOptions) at ./client.jl:279
 [4] _start() at ./client.jl:371
ERROR: failed process: Process(`/Applications/Julia-0.6.app/Contents/Resources/julia/bin/julia -L /Users/adrian/simple_test_app/genie.jl --color=yes --depwarn=no -q`, ProcessExited(1)) [1]
julia> versioninfo()
Julia Version 0.6.0
Commit 903644385b (2017-06-19 13:05 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin13.4.0)
  CPU: Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz
  WORD_SIZE: 64
  BLAS: libopenblas (USE64BITINT DYNAMIC_ARCH NO_AFFINITY Haswell)
  LAPACK: libopenblas64_
  LIBM: libopenlibm
  LLVM: libLLVM-3.9.1 (ORCJIT, skylake)

Actually, it looks like I'm on AbstractTrees v0.0.4!

Sorry for that, I wasn't aware - I was running Pkg.update() like a maniac, but Pkg just kept the package downgraded and I wasn't aware there are new versions out.

No worries! Possibly you had another installed package that was keeping AbstractTrees at an earlier version? I don't really understand how the Pkg resolution algorithm works . . . hopefully this will be a lot better when Pkg3 comes out.