Error precompiling Atom/Media with Julia 1.0

bug

#1

I just tried to get started with Julia 1.0 and Juno. The installation of Juno within Atom worked fine, but after pressing enter in the Terminal it prompts me “Run Pkg.add("Atom") to install the Atom package.”, which I have.

After pressing enter again I get the rather lengthy error message

[ Info: Precompiling Atom [c52e3926-4ff0-5f6e-af25-54175e0327b1]
ERROR: LoadError: LoadError: MethodError: no method matching eval(::Module, ::Expr)
You may have intended to import Base.eval
Closest candidates are:
  eval(::Any) at /home/.../.julia/packages/Media/wRKl3/src/Media.jl:3
Stacktrace:
 [1] media(::Type, ::Type) at /home/.../.julia/packages/Media/wRKl3/src/system.jl:72
 [2] top-level scope at none:0
 [3] include at ./boot.jl:317 [inlined]
 [4] include_relative(::Module, ::String) at ./loading.jl:1038
 [5] include at ./sysimg.jl:29 [inlined]
 [6] include(::String) at /home/.../.julia/packages/Media/wRKl3/src/Media.jl:3
 [7] top-level scope at none:0
 [8] include at ./boot.jl:317 [inlined]
 [9] include_relative(::Module, ::String) at ./loading.jl:1038
 [10] include(::Module, ::String) at ./sysimg.jl:29
 [11] top-level scope at none:2
 [12] eval at ./boot.jl:319 [inlined]
 [13] eval(::Expr) at ./client.jl:389
 [14] top-level scope at ./none:3
in expression starting at /home/.../.julia/packages/Media/wRKl3/src/system.jl:75
in expression starting at /home/.../.julia/packages/Media/wRKl3/src/Media.jl:6
ERROR: LoadError: Failed to precompile Media [e89f7d12-3494-54d1-8411-f7d8b9ae1f27] to /home/.../.julia/compiled/v1.0/Media/VxfEM.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] macro expansion at ./logging.jl:313 [inlined]
 [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184
 [4] _require(::Base.PkgId) at ./logging.jl:311
 [5] require(::Base.PkgId) at ./loading.jl:852
 [6] macro expansion at ./logging.jl:311 [inlined]
 [7] require(::Module, ::Symbol) at ./loading.jl:834
 [8] include at ./boot.jl:317 [inlined]
 [9] include_relative(::Module, ::String) at ./loading.jl:1038
 [10] include(::Module, ::String) at ./sysimg.jl:29
 [11] top-level scope at none:2
 [12] eval at ./boot.jl:319 [inlined]
 [13] eval(::Expr) at ./client.jl:389
 [14] top-level scope at ./none:3
in expression starting at /home/.../.julia/packages/Juno/nMYPI/src/Juno.jl:5
ERROR: LoadError: Failed to precompile Juno [e5e0dc1b-0480-54bc-9374-aad01c23163d] to /home/.../.julia/compiled/v1.0/Juno/eE3TV.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] macro expansion at ./logging.jl:313 [inlined]
 [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184
 [4] _require(::Base.PkgId) at ./logging.jl:311
 [5] require(::Base.PkgId) at ./loading.jl:852
 [6] macro expansion at ./logging.jl:311 [inlined]
 [7] require(::Module, ::Symbol) at ./loading.jl:834
 [8] include at ./boot.jl:317 [inlined]
 [9] include_relative(::Module, ::String) at ./loading.jl:1038
 [10] include(::Module, ::String) at ./sysimg.jl:29
 [11] top-level scope at none:2
 [12] eval at ./boot.jl:319 [inlined]
 [13] eval(::Expr) at ./client.jl:389
 [14] top-level scope at ./none:3
in expression starting at /home/.../.julia/packages/Atom/3zuok/src/Atom.jl:5
ERROR: LoadError: Failed to precompile Atom [c52e3926-4ff0-5f6e-af25-54175e0327b1] to /home/.../.julia/compiled/v1.0/Atom/w9XOh.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] macro expansion at ./logging.jl:313 [inlined]
 [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184
 [4] _require(::Base.PkgId) at ./logging.jl:311
 [5] require(::Base.PkgId) at ./loading.jl:852
 [6] macro expansion at ./logging.jl:311 [inlined]
 [7] require(::Module, ::Symbol) at ./loading.jl:834
 [8] top-level scope at /home/.../.atom/packages/julia-client/script/boot_repl.jl:13
 [9] include at ./boot.jl:317 [inlined]
 [10] include_relative(::Module, ::String) at ./loading.jl:1038
 [11] include(::Module, ::String) at ./sysimg.jl:29
 [12] exec_options(::Base.JLOptions) at ./client.jl:229
 [13] _start() at ./client.jl:421
in expression starting at /home/.../.atom/packages/julia-client/script/boot_repl.jl:1

I get a similar error message if I try to execute using Atom from within the terminal prompt.

Is Juno just not available for Julia 1.0 yet (in which case the error messages would be rather unclear)?
Or did I have to install some other package?


#2

Julia 1.0 has removed all deprecation warnings, and they all become errors now. I don’t believe Atom is 1.0 ready yet. You can give it a try in Julia 0.7, which is essentially 1.0 but with deprecation warnings.


#3

Yeah, you can’t quite use Juno on 1.0 yet, but I hope we’ll have a release out in the next few hours.


#4

Okay, I’ll try again soon then. Is there an obvious channel to check when it is released (i.e. meant to work with v1.0)?

Another comment, from a user’s perspective it is rather unfortunate that there seems to be no clear message “this package is not available for the version of Julia”… it just tries to install and then fails in an (to me and I assume many users) obscure error message, leaving it unclear if the reason is that I made a mistake or the package weren’t update yet. I think (in my experience observing and helping others, previously) that installation errors are a significant issue for Julia being adopted more widely.

Anyway, thank you very much for your quick replies and I’m looking forward to using it once it’s ready!


#5

Yeah, that’s really rather unfortunate – almost no package developer really ever put an upper bound on the julia versions they’re supporting, so Julia thinks the package in question might work. That is fixed with the new package manager though, so things will get better :slight_smile:

I’ll make an announcement here on Discourse.


#6

I had the same error and I’m commenting mainly to keep up with the thread, in case any announcement is made here. Thanks for your work with Atom.


#7

Yes, I would like to know when this is updated as well.


#8

I take it the failure to precompile Queryverse on 1.0 has the same cause?


#9

In the sense that it’s not updated for Julia 1.0, yes, otherwise no :slight_smile:

As of a couple of minutes ago, Juno should be compatible with Julia 1.0 – please try it out and let me know if you run into any errors.


#10

Yes, it works for me now!
I get the warning could not import Base.endof into StringDistances but doesn’t seem fatal.


#11

Yeah, that’s a harmless warning (the now non-existent function is never used) which should be fixed once this is merged.


#12

Getting the following when trying to start Julia

Press Enter to start Julia.
Starting Julia...
[ Info: Precompiling Atom [c52e3926-4ff0-5f6e-af25-54175e0327b1]
ERROR: LoadError: LoadError: MethodError: no method matching eval(::Module, ::Expr)
You may have intended to import Base.eval
Closest candidates are:
  eval(::Any) at /Users/gabegm/.julia/packages/Media/wRKl3/src/Media.jl:3
Stacktrace:
 [1] media(::Type, ::Type) at /Users/gabegm/.julia/packages/Media/wRKl3/src/system.jl:72
 [2] top-level scope at none:0
 [3] include at ./boot.jl:317 [inlined]
 [4] include_relative(::Module, ::String) at ./loading.jl:1038
 [5] include at ./sysimg.jl:29 [inlined]
 [6] include(::String) at /Users/gabegm/.julia/packages/Media/wRKl3/src/Media.jl:3
 [7] top-level scope at none:0
 [8] include at ./boot.jl:317 [inlined]
 [9] include_relative(::Module, ::String) at ./loading.jl:1038
 [10] include(::Module, ::String) at ./sysimg.jl:29
 [11] top-level scope at none:2
 [12] eval at ./boot.jl:319 [inlined]
 [13] eval(::Expr) at ./client.jl:389
 [14] top-level scope at ./none:3
in expression starting at /Users/gabegm/.julia/packages/Media/wRKl3/src/system.jl:75
in expression starting at /Users/gabegm/.julia/packages/Media/wRKl3/src/Media.jl:6
ERROR: LoadError: Failed to precompile Media [e89f7d12-3494-54d1-8411-f7d8b9ae1f27] to /Users/gabegm/.julia/compiled/v1.0/Media/VxfEM.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] macro expansion at ./logging.jl:313 [inlined]
 [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184
 [4] _require(::Base.PkgId) at ./logging.jl:311
 [5] require(::Base.PkgId) at ./loading.jl:852
 [6] macro expansion at ./logging.jl:311 [inlined]
 [7] require(::Module, ::Symbol) at ./loading.jl:834
 [8] include at ./boot.jl:317 [inlined]
 [9] include_relative(::Module, ::String) at ./loading.jl:1038
 [10] include(::Module, ::String) at ./sysimg.jl:29
 [11] top-level scope at none:2
 [12] eval at ./boot.jl:319 [inlined]
 [13] eval(::Expr) at ./client.jl:389
 [14] top-level scope at ./none:3
in expression starting at /Users/gabegm/.julia/packages/Juno/JVaH8/src/Juno.jl:3
ERROR: LoadError: Failed to precompile Juno [e5e0dc1b-0480-54bc-9374-aad01c23163d] to /Users/gabegm/.julia/compiled/v1.0/Juno/eE3TV.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] macro expansion at ./logging.jl:313 [inlined]
 [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184
 [4] _require(::Base.PkgId) at ./logging.jl:311
 [5] require(::Base.PkgId) at ./loading.jl:852
 [6] macro expansion at ./logging.jl:311 [inlined]
 [7] require(::Module, ::Symbol) at ./loading.jl:834
 [8] include at ./boot.jl:317 [inlined]
 [9] include_relative(::Module, ::String) at ./loading.jl:1038
 [10] include(::Module, ::String) at ./sysimg.jl:29
 [11] top-level scope at none:2
 [12] eval at ./boot.jl:319 [inlined]
 [13] eval(::Expr) at ./client.jl:389
 [14] top-level scope at ./none:3
in expression starting at /Users/gabegm/.julia/packages/Atom/3zuok/src/Atom.jl:5
ERROR: LoadError: Failed to precompile Atom [c52e3926-4ff0-5f6e-af25-54175e0327b1] to /Users/gabegm/.julia/compiled/v1.0/Atom/w9XOh.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] macro expansion at ./logging.jl:313 [inlined]
 [3] compilecache(::Base.PkgId, ::String) at ./loading.jl:1184
 [4] _require(::Base.PkgId) at ./logging.jl:311
 [5] require(::Base.PkgId) at ./loading.jl:852
 [6] macro expansion at ./logging.jl:311 [inlined]
 [7] require(::Module, ::Symbol) at ./loading.jl:834
 [8] top-level scope at /Users/gabegm/.atom/packages/julia-client/script/boot_repl.jl:28
 [9] include at ./boot.jl:317 [inlined]
 [10] include_relative(::Module, ::String) at ./loading.jl:1038
 [11] include(::Module, ::String) at ./sysimg.jl:29
 [12] exec_options(::Base.JLOptions) at ./client.jl:229
 [13] _start() at ./client.jl:421
in expression starting at /Users/gabegm/.atom/packages/julia-client/script/boot_repl.jl:1

Julia has exited. Press Enter to start a new session.

#13

You’re not on the last version of Media.jl, so please call pkg> update and make sure you haven’t deved any packages that a relevant for Juno.


#14

I have a question related to this discussion - although at a much more superficial level.
I just (re) downloaded juliapro and versioninfo() says
“Julia Version 0.6.4”
How do I update to julia 1.0? Do I need to download julia 1.0 separately and then connect it to atom?


#15

JuliaPro is not using Julia 1.0 yet for a good reason, that is that many packages are not yet working with Julia 1.0.
So if you want to give Julia 1.0 a try without doing much serious work yet remove Julia Pro and install Atom and Julia 1.0 manually.


#16

Thanks for replying. Isn’t Julia 0.7 available either?


#17

In JuliaPro? No.


#18

Last bit of the question: I cannot add the package NLsolve. The REQUIRE doc for NLsolve says Julia 0.7.


Does it mean it does not run on 0.6?
When I try to add NLsolve in JuliaPro it says unsatisfied package requirement with respect to Optim, but I do have Optim (version 0.15.3).
Sorry if this is not the appropriate thread


#19

I also have problems with NLsolve on Julia 0.6. See: https://github.com/JuliaNLSolvers/NLsolve.jl/issues/182

Perhaps it is needed to use an older version of NLsolve, but it is not clear to me how to do that yet. But if you want to discuss that, please open a new thread.


#20

Done. In case you wanna see updates, it is here NLsolve requirement - Julia 0.6.4.1