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

Freezing on include(Pkg.dir("Escher", "src", "cli", "serve.jl")) and escher --serve to API macro's use of => is broken on Julia v0.4 #53

Closed
sbromberger opened this issue Jul 24, 2015 · 10 comments

Comments

@sbromberger
Copy link
Contributor

I've been following the installation / usage instructions for Escher here: https://shashi.github.io/Escher.jl/ and am running into a problem on Version 0.4.0-dev+6112 (2015-07-20 17:52 UTC) Commit 189a043 (3 days old master):

julia> using Escher

julia> include(Pkg.dir("Escher", "src", "cli", "serve.jl"))

WARNING: deprecated syntax "tags (" at /Users/seth/.julia/v0.4/Hiccup/src/Hiccup.jl:87.
Use "tags(" instead.

WARNING: deprecated syntax "exporttags (" at /Users/seth/.julia/v0.4/Hiccup/src/Hiccup.jl:95.
Use "exporttags(" instead.

WARNING: deprecated syntax "expand (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:30.
Use "expand(" instead.

WARNING: deprecated syntax "switch (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:62.
Use "switch(" instead.

WARNING: deprecated syntax "> (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:111.
Use ">(" instead.

WARNING: deprecated syntax ">> (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:132.
Use ">>(" instead.

WARNING: deprecated syntax "as (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:159.
Use "as(" instead.

WARNING: deprecated syntax "_ (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:177.
Use "_(" instead.

WARNING: deprecated syntax "or (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:181.
Use "or(" instead.

WARNING: deprecated syntax "dotimes (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:193.
Use "dotimes(" instead.

WARNING: deprecated syntax "oncethen (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:205.
Use "oncethen(" instead.

WARNING: deprecated syntax "defonce (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:222.
Use "defonce(" instead.

WARNING: deprecated syntax "with (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:236.
Use "with(" instead.

WARNING: deprecated syntax "cond (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:252.
Use "cond(" instead.

WARNING: deprecated syntax "errs (" at /Users/seth/.julia/v0.4/Lazy/src/macros.jl:275.
Use "errs(" instead.

WARNING: deprecated syntax "dynamic (" at /Users/seth/.julia/v0.4/Lazy/src/dynamic.jl:73.
Use "dynamic(" instead.

WARNING: deprecated syntax "rec (" at /Users/seth/.julia/v0.4/Lazy/src/tail.jl:53.
Use "rec(" instead.

WARNING: deprecated syntax "bounce (" at /Users/seth/.julia/v0.4/Lazy/src/tail.jl:89.
Use "bounce(" instead.

WARNING: deprecated syntax "bounce (" at /Users/seth/.julia/v0.4/Lazy/src/tail.jl:102.
Use "bounce(" instead.

WARNING: deprecated syntax "app (" at /Users/seth/.julia/v0.4/Mux/src/server.jl:14.
Use "app(" instead.

... and here it appears to hang. No other output, no listening port, no return to REPL until I hit ^C.

@shashi
Copy link
Member

shashi commented Jul 24, 2015

Are you on OSX? This should be fixed now on master.

@sbromberger
Copy link
Contributor Author

I'm on OSX but it's not fixed. I did a Pkg.rm("Escher") and then a Pkg.clone("Escher") to get the master, and it's still freezing.

@rohitvarkey
Copy link
Collaborator

I just pulled the latest Julia master Julia Version 0.4.0-dev+6233 Commit 563e17d (2015-07-25 20:59 UTC) and tried to run escher --serve and it froze. I think that was due to a problem in Mux.jl and I've sent a PR to solve that. But even with using Mux not going into an infinite loop, escher --serve is still freezing.

On the other hand, I tried using Escher in the REPL and it is throwing errors.

ERROR: LoadError: LoadError: syntax: malformed expression
 in include at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include_from_node1 at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include_from_node1 at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in require at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
while loading /Users/rohitvarkey/.julia/v0.4/Escher/src/basics/util.jl, in expression starting on line 68
while loading /Users/rohitvarkey/.julia/v0.4/Escher/src/Escher.jl, in expression starting on line 28
```.

@rohitvarkey
Copy link
Collaborator

Okay. I just figured out why that error isn't getting printed when escher --serve is called. Due to JuliaLang/julia#9079 when you do using Escher inside the escher executable in bin, it loads itself again rather than the module.

This means the escher executable has to be renamed for it to work on OSX.

@shashi
Copy link
Member

shashi commented Jul 26, 2015

Oops looks like @api macro breaks on Julia master. I'm looking into this. Are you sure bin/escher gets loaded instead of the package? that would be a Julia bug.

@rohitvarkey
Copy link
Collaborator

More or less yes.
I added a println("Loading Escher") just before the using Escher line in bin/escher and got the following output:

./escher
WARNING: `require` is deprecated, use `using` or `import` instead
 in depwarn at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in require at deprecated.jl:666
 in include at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include_from_node1 at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in require at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include_from_node1 at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in process_options at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in _start at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
while loading /Users/rohitvarkey/.julia/v0.4/ArgParse/src/ArgParse.jl, in expression starting on line 1
Loading Escher
Loading Escher

After which it freezes until I hit ^C.

But after renaming bin/escher -> bin/escher_server, I get the following output.

./escher_server
WARNING: `require` is deprecated, use `using` or `import` instead
 in depwarn at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in require at deprecated.jl:666
 in include at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include_from_node1 at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in require at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include_from_node1 at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in process_options at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in _start at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
while loading /Users/rohitvarkey/.julia/v0.4/ArgParse/src/ArgParse.jl, in expression starting on line 1
Loading Escher
ERROR: LoadError: LoadError: LoadError: syntax: malformed expression
 in include at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include_from_node1 at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include_from_node1 at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in require at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in include_from_node1 at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in process_options at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
 in _start at /Applications/Julia-0.4.0-dev-563e17d6df.app/Contents/Resources/julia/lib/julia/sys.dylib
while loading /Users/rohitvarkey/.julia/v0.4/Escher/src/basics/util.jl, in expression starting on line 68
while loading /Users/rohitvarkey/.julia/v0.4/Escher/src/Escher.jl, in expression starting on line 28
while loading /Users/rohitvarkey/.julia/v0.4/Escher/bin/escher_server, in expression starting on line 6

@shashi
Copy link
Member

shashi commented Jul 27, 2015

I think this is related to JuliaLang/julia#12285

@shashi shashi changed the title Freezing on include(Pkg.dir("Escher", "src", "cli", "serve.jl")) and escher --serve API macro's use of => is broken on Julia v0.4 Jul 27, 2015
@shashi shashi changed the title API macro's use of => is broken on Julia v0.4 @api macro's use of => is broken on Julia v0.4 Jul 27, 2015
@shashi shashi closed this as completed in dd8bd55 Jul 27, 2015
@rohitvarkey
Copy link
Collaborator

@shashi using Escher works successfully now! However, I don't think you should close this just yet. The original issue (before the title change!) is still present. Running bin/escher --serve freezes on OSX. Renaming it solves it.

@sbromberger My PR in Mux.jl got merged! 😄 So if you do Pkg.checkout("Mux") and also Pkg.checkout("Escher"), you should be able to run the Escher server from the Julia REPL. If you want to use bin/escher, you will have to rename it for it to not freeze.

rohitvarkey added a commit to rohitvarkey/Escher.jl that referenced this issue Jul 27, 2015
@shashi shashi changed the title @api macro's use of => is broken on Julia v0.4 Freezing on include(Pkg.dir("Escher", "src", "cli", "serve.jl")) and escher --serve to API macro's use of => is broken on Julia v0.4 Jul 27, 2015
@shashi
Copy link
Member

shashi commented Jul 27, 2015

Oh, I forgot about that. my bad.

@shashi shashi reopened this Jul 27, 2015
@shashi
Copy link
Member

shashi commented Jul 30, 2015

Fixed by JuliaLang/julia#12356

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