Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does not compile on Julia 1.0 #253

Closed
MaWo2 opened this issue Aug 20, 2018 · 7 comments
Closed

Does not compile on Julia 1.0 #253

MaWo2 opened this issue Aug 20, 2018 · 7 comments

Comments

@MaWo2
Copy link

MaWo2 commented Aug 20, 2018

Using julia 1.0 I cannot compile Interact.jl version 0.8.0 on OS: Windows 8.1 64 bit.

julia> using Interact
[ Info: Precompiling Interact [c601a237-2ae4-5e1e-952c-7a85b0c7eef1]
ERROR: LoadError: ArgumentError: Package Interact does not have Reexport in its dependencies:
- If you have Interact checked out for development and have added Reexport as a dependency but haven't updated your primary environment's manifest file, try `Pkg.resolve()`.
- Otherwise you may need to report an issue with Interact
Stacktrace:
 [1] require(::Module, ::Symbol) at .\loading.jl:830
 [2] include at .\boot.jl:317 [inlined]
 [3] include_relative(::Module, ::String) at .\loading.jl:1038
 [4] include(::Module, ::String) at .\sysimg.jl:29
 [5] top-level scope at none:2
 [6] eval at .\boot.jl:319 [inlined]
 [7] eval(::Expr) at .\client.jl:389
 [8] top-level scope at .\none:3
in expression starting at C:\Julia\Julia-packages\v1.0\packages\Interact\iMA1c\src\Interact.jl:5
ERROR: Failed to precompile Interact [c601a237-2ae4-5e1e-952c-7a85b0c7eef1] to C:\Julia\Julia-packages\v1.0\compiled\v1.0\Interact\XmYW4.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

I then tried using Reexport before using Interact, which turned the error to a warning:

julia> using Interact
[ Info: Precompiling Interact [c601a237-2ae4-5e1e-952c-7a85b0c7eef1]
┌ Warning: Package Interact does not have Reexport in its dependencies:
│ - If you have Interact checked out for development and have
│   added Reexport as a dependency but haven't updated your primary
│   environment's manifest file, try `Pkg.resolve()`.
│ - Otherwise you may need to report an issue with Interact
└ Loading Reexport into Interact from project dependency, future warnings for Interact are suppressed.
WARNING: Method definition show(IO, Base.MIME{Symbol("text/html")}, Widgets.AbstractWidget{T, S} where S where T) in module WebIO at C:\Julia\Julia-packages\v1.0\packages\WebIO\ukomf\src\node.jl:121 overwritten in module InteractBase at C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\widget.jl:8.
WARNING: Method definition div(Any...) in module Widgets at C:\Julia\Julia-packages\v1.0\packages\Widgets\dKbgT\src\layout.jl:71 overwritten in module InteractBase at C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\defaults.jl:19.
WARNING: Method definition #div(Any, typeof(Widgets.div), Any...) in module Widgets overwritten in module InteractBase.
┌ Warning: Requires now needs a UUID; please see the readme for changes in 0.7.
└ @ InteractBase C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\providers\atom.jl:1
┌ Warning: Requires now needs a UUID; please see the readme for changes in 0.7.
└ @ InteractBase C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\providers\blink.jl:1
┌ Warning: Requires now needs a UUID; please see the readme for changes in 0.7.
└ @ InteractBase C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\providers\mux.jl:1
WARNING: Method definition #div(Any, typeof(Widgets.div), Any...) in module Widgets overwritten in module InteractBase.
WARNING: Method definition div(Any...) in module Widgets at C:\Julia\Julia-packages\v1.0\packages\Widgets\dKbgT\src\layout.jl:71 overwritten in module InteractBase at C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\defaults.jl:19.
WARNING: Method definition show(IO, Base.MIME{Symbol("text/html")}, Widgets.AbstractWidget{T, S} where S where T) in module WebIO at C:\Julia\Julia-packages\v1.0\packages\WebIO\ukomf\src\node.jl:121 overwritten in module InteractBase at C:\
Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\widget.jl:8.
WARNING: Method definition #div(Any, typeof(Widgets.div), Any...) in module Widgets overwritten in module InteractBase.
WARNING: Method definition div(Any...) in module Widgets at C:\Julia\Julia-packages\v1.0\packages\Widgets\dKbgT\src\layout.jl:71 overwritten in module InteractBase at C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\defaults.jl:19.
WARNING: Method definition show(IO, Base.MIME{Symbol("text/html")}, Widgets.AbstractWidget{T, S} where S where T) in module WebIO at C:\Julia\Julia-packages\v1.0\packages\WebIO\ukomf\src\node.jl:121 overwritten in module InteractBase at C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\widget.jl:8.
WARNING: could not import Widgets.@map into Interact

Having used all the other packages listed under REQUIRE I now get the following warning:

julia> using Interact
[ Info: Recompiling stale cache file C:\Julia\Julia-packages\v1.0\compiled\v1.0\Interact\XmYW4.ji for Interact [c601a237-2ae4-5e1e-952c-7a85b0c7eef1]
┌ Warning: Package Interact does not have Reexport in its dependencies:
│ - If you have Interact checked out for development and have
│   added Reexport as a dependency but haven't updated your primary
│   environment's manifest file, try `Pkg.resolve()`.
│ - Otherwise you may need to report an issue with Interact
└ Loading Reexport into Interact from project dependency, future warnings for Interact are suppressed.
WARNING: Method definition #div(Any, typeof(Widgets.div), Any...) in module Widgets overwritten in module InteractBase.
WARNING: Method definition div(Any...) in module Widgets at C:\Julia\Julia-packages\v1.0\packages\Widgets\dKbgT\src\layout.jl:71 overwritten in module InteractBase at C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\defaults.jl:19.
WARNING: Method definition show(IO, Base.MIME{Symbol("text/html")}, Widgets.AbstractWidget{T, S} where S where T) in module WebIO at C:\Julia\Julia-packages\v1.0\packages\WebIO\ukomf\src\node.jl:121 overwritten in module InteractBase at C:\Julia\Julia-packages\v1.0\packages\InteractBase\NkuRm\src\widget.jl:8.
WARNING: could not import Widgets.@map into Interact

Is Interact.jl not yet ported to julia 1.0?

@piever
Copy link
Collaborator

piever commented Aug 20, 2018

No, it's not yet ported but is quite close, hopefully I'll be able to tag a new release in a week or so.
You can try doing Pkg.checkout("Interact"); Pkg.checkout("InteractBulma"); Pkg.checkout("InteractBase")
and it should load but working with Blink requires JuliaGizmos/Blink.jl#143 and the jupyter notebook has issues: JuliaGizmos/WebIO.jl#180

@JeffFessler
Copy link

same problem with Julia version v0.8.0 with Julia 0.7.0 on a Mac OSX 10.11.6.
precompile fails at first, but then add Reexport and add Observables makes it so that precompile passes albeit with many warnings like this:
WARNING: could not import Widgets.@map into Interact

Then in IJulia notebook, using Interact does not work:

┌ Info: Recompiling stale cache file /Volumes/s0/Users/fessler/.julia/compiled/v0.7/Interact/XmYW4.ji for Interact [c601a237-2ae4-5e1e-952c-7a85b0c7eef1] └ @ Base loading.jl:1185 ┌ Warning: Package Interact does not have Reexport in its dependencies: │ - If you have Interact checked out for development and have │ added Reexport as a dependency but haven't updated your primary │ environment's manifest file, try Pkg.resolve(). │ - Otherwise you may need to report an issue with Interact └ Loading Reexport into Interact from project dependency, future warnings for Interact are suppressed. WARNING: Method definition show(IO, Base.MIME{Symbol("text/html")}, Widgets.AbstractWidget{T, S} where S where T) in module WebIO at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/node.jl:121 overwritten in module InteractBase at /Volumes/s0/Users/fessler/.julia/packages/InteractBase/NkuRm/src/widget.jl:8. WARNING: Method definition #div(Any, typeof(Widgets.div), Any...) in module Widgets overwritten in module InteractBase. WARNING: Method definition div(Any...) in module Widgets at /Volumes/s0/Users/fessler/.julia/packages/Widgets/dKbgT/src/layout.jl:71 overwritten in module InteractBase at /Volumes/s0/Users/fessler/.julia/packages/InteractBase/NkuRm/src/defaults.jl:19. WARNING: could not import Widgets.@map into Interact ┌ Warning: Error requiring IJulia from WebIO: │ LoadError: UndefVarError: Comm not defined │ Stacktrace: │ [1] main() at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/providers/ijulia.jl:52 │ [2] setup_provider at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/providers/ijulia.jl:61 [inlined] │ [3] setup_provider(::Symbol) at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/WebIO.jl:29 │ [4] setup(::Symbol) at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/WebIO.jl:47 │ [5] top-level scope at none:0 │ [6] include at ./boot.jl:317 [inlined] │ [7] include_relative(::Module, ::String) at ./loading.jl:1038 │ [8] include at ./sysimg.jl:29 [inlined] │ [9] include(::String) at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/WebIO.jl:3 │ [10] top-level scope at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/WebIO.jl:65 │ [11] eval at ./boot.jl:319 [inlined] │ [12] eval at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/WebIO.jl:3 [inlined] │ [13] (::getfield(WebIO, Symbol("##60#72")))() at /Volumes/s0/Users/fessler/.julia/packages/Requires/9Jse8/src/require.jl:67 │ [14] err(::getfield(WebIO, Symbol("##60#72")), ::Module, ::String) at /Volumes/s0/Users/fessler/.julia/packages/Requires/9Jse8/src/require.jl:38 │ [15] #59 at /Volumes/s0/Users/fessler/.julia/packages/Requires/9Jse8/src/require.jl:66 [inlined] │ [16] withpath(::getfield(WebIO, Symbol("##59#71")), ::String) at /Volumes/s0/Users/fessler/.julia/packages/Requires/9Jse8/src/require.jl:28 │ [17] #58 at /Volumes/s0/Users/fessler/.julia/packages/Requires/9Jse8/src/require.jl:65 [inlined] │ [18] listenpkg(::getfield(WebIO, Symbol("##58#70")), ::Base.PkgId) at /Volumes/s0/Users/fessler/.julia/packages/Requires/9Jse8/src/require.jl:13 │ [19] macro expansion at /Volumes/s0/Users/fessler/.julia/packages/Requires/9Jse8/src/require.jl:64 [inlined] │ [20] macro expansion at /Volumes/s0/Users/fessler/.julia/packages/Requires/9Jse8/src/require.jl:63 [inlined] │ [21] __init__() at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/WebIO.jl:55 │ [22] _include_from_serialized(::String, ::Array{Any,1}) at ./loading.jl:627 │ [23] macro expansion at ./logging.jl:312 [inlined] │ [24] _require_search_from_serialized(::Base.PkgId, ::String) at ./loading.jl:698 │ [25] _tryrequire_from_serialized(::Base.PkgId, ::UInt64, ::String) at ./loading.jl:642 │ [26] _require_search_from_serialized(::Base.PkgId, ::String) at ./loading.jl:696 │ [27] _tryrequire_from_serialized(::Base.PkgId, ::UInt64, ::Nothing) at ./loading.jl:642 │ [28] _require_from_serialized(::String) at ./loading.jl:673 │ [29] macro expansion at ./logging.jl:317 [inlined] │ [30] _require(::Base.PkgId) at ./loading.jl:941 │ [31] require(::Base.PkgId) at ./loading.jl:852 │ [32] macro expansion at ./logging.jl:311 [inlined] │ [33] require(::Module, ::Symbol) at ./loading.jl:834 │ [34] include_string(::Module, ::String, ::String) at ./loading.jl:1002 │ [35] execute_request(::ZMQ.Socket, ::IJulia.Msg) at /Volumes/s0/Users/fessler/.julia/packages/IJulia/iMVN2/src/execute_request.jl:176 │ [36] #invokelatest#1 at ./essentials.jl:691 [inlined] │ [37] invokelatest at ./essentials.jl:690 [inlined] │ [38] eventloop(::ZMQ.Socket) at /Volumes/s0/Users/fessler/.julia/packages/IJulia/iMVN2/src/eventloop.jl:8 │ [39] (::getfield(IJulia, Symbol("##15#18")))() at ./task.jl:262 │ in expression starting at /Volumes/s0/Users/fessler/.julia/packages/WebIO/ukomf/src/providers/ijulia.jl:62 └ @ Requires /Volumes/s0/Users/fessler/.julia/packages/Requires/9Jse8/src/require.jl:40

So glad to hear you are working on it!

@MaWo2
Copy link
Author

MaWo2 commented Aug 21, 2018

@piever Sorry, I cannot checkout the packages. The command no longer seems to exist in Julia v1.0. :-(

julia> using Pkg

julia> Pkg.checkout("Interact")
ERROR: UndefVarError: checkout not defined
Stacktrace:
 [1] getproperty(::Module, ::Symbol) at .\sysimg.jl:13
 [2] top-level scope at none:0
 [3] #33 at .\boot.jl:319 [inlined]
 [4] with_logstate(::getfield(Main, Symbol("##33#35")), ::Base.CoreLogging.LogState) at .\logging.jl:397
 [5] with_logger(::Function, ::Atom.Progress.JunoProgressLogger) at .\logging.jl:493
 [6] top-level scope at C:\Julia\Julia-packages\v1.0\packages\Atom\jJn7Y\src\repl.jl:124

@MaWo2 MaWo2 closed this as completed Aug 21, 2018
@MaWo2
Copy link
Author

MaWo2 commented Aug 21, 2018

Sorry, I pressed the wrong button and accidently closed the issue...

@MaWo2 MaWo2 reopened this Aug 21, 2018
@piever
Copy link
Collaborator

piever commented Aug 21, 2018

Fair enough, I forgot about the new package manager. Now its:

] add Interact#master

I think.

Anyway, most things got released already (JuliaRobotics people saved the day!), so I think there could probably be a release of Interact in a couple of days.

@piever
Copy link
Collaborator

piever commented Aug 23, 2018

A release go just merged, can you confirm that it works now (after package update) ?

@MaWo2
Copy link
Author

MaWo2 commented Aug 23, 2018

Yes, it seems to work now.
Neither precompiling nor using throws an error.

Thanks a lot.

@piever piever closed this as completed Aug 23, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants