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

Precompilation broken on julia 1.5 beta1 #105

Closed
SebastianM-C opened this issue Jun 3, 2020 · 2 comments
Closed

Precompilation broken on julia 1.5 beta1 #105

SebastianM-C opened this issue Jun 3, 2020 · 2 comments

Comments

@SebastianM-C
Copy link
Contributor

julia> using DiffEqBenchmarks
[ Info: Precompiling DiffEqBenchmarks [31c91b34-3c75-11e9-0341-95557aab0344]
ERROR: LoadError: InitError: Evaluation into the closed module `Markdown` breaks incremental compilation because the side effects will not be permanent. This is likely due to some other module mutating `Markdown` with `eval` during precompilation - don't do this.
Stacktrace:
 [1] eval at .\boot.jl:331 [inlined]
 [2] eval at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Markdown\src\Markdown.jl:6 [inlined]
 [3] __init__() at C:\Users\sebastian\.julia\packages\Weave\zT0iu\src\WeaveMarkdown\markdown.jl:10
 [4] _include_from_serialized(::String, ::Array{Any,1}) at .\loading.jl:697
 [5] _require_from_serialized(::String) at .\loading.jl:749
 [6] _require(::Base.PkgId) at .\loading.jl:1040
 [7] require(::Base.PkgId) at .\loading.jl:928
 [8] require(::Module, ::Symbol) at .\loading.jl:923
 [9] include(::Function, ::Module, ::String) at .\Base.jl:380
 [10] include(::Module, ::String) at .\Base.jl:368
 [11] top-level scope at none:2
 [12] eval at .\boot.jl:331 [inlined]
 [13] eval(::Expr) at .\client.jl:467
 [14] top-level scope at .\none:3
during initialization of module WeaveMarkdown
in expression starting at C:\Users\sebastian\.julia\dev\DiffEqBenchmarks\src\DiffEqBenchmarks.jl:3
ERROR: Failed to precompile DiffEqBenchmarks [31c91b34-3c75-11e9-0341-95557aab0344] to C:\Users\sebastian\.julia\compiled\v1.5\DiffEqBenchmarks\3YclJ_OeiSs.ji.
Stacktrace:
 [1] error(::String) at .\error.jl:33
 [2] compilecache(::Base.PkgId, ::String) at .\loading.jl:1290
 [3] _require(::Base.PkgId) at .\loading.jl:1030
 [4] require(::Base.PkgId) at .\loading.jl:928
 [5] require(::Module, ::Symbol) at .\loading.jl:923

This is due to Weave evaling in Markdown during __init__. This is tracked here.

@SebastianM-C
Copy link
Contributor Author

On julia 1.4.2 this is just a warning

julia> using DiffEqBenchmarks
[ Info: Precompiling DiffEqBenchmarks [31c91b34-3c75-11e9-0341-95557aab0344]
WARNING: eval into closed module Markdown:
Expr(:block, #= Symbol("C:\Users\sebastian\.julia\packages\Weave\zT0iu\src\WeaveMarkdown\markdown.jl"):11 =#, Expr(:function, Expr(:call, :latex, Expr(:::, :io, :IO), Expr(:::, :tex, Expr(:., :Markdown, :(:LaTeX)))), Expr(:block, #= Symbol("C:\Users\sebastian\.julia\packages\Weave\zT0iu\src\WeaveMarkdown\markdown.jl"):12 =#, :math_envs = Expr(:vect, "align", "equation", "eqnarray"), #= Symbol("C:\Users\sebastian\.julia\packages\Weave\zT0iu\src\WeaveMarkdown\markdown.jl"):13 =#, :use_dollars = Expr(:call, Symbol("!"), Expr(:call, :any, Expr(:comprehension, Expr(:generator, Expr(:call, :occursin, Expr(:string, "\begin{", :me), Expr(:., :tex, :(:formula))), :me = :math_envs)))), #= Symbol("C:\Users\sebastian\.julia\packages\Weave\zT0iu\src\WeaveMarkdown\markdown.jl"):14 =#, Expr(:&&, :use_dollars, Expr(:call, :write, :io, "\[")), #= Symbol("C:\Users\sebastian\.julia\packages\Weave\zT0iu\src\WeaveMarkdown\markdown.jl"):15 =#, Expr(:call, :write, :io, Expr(:call, :string, "
", Expr(:., :tex, :(:formula)), "
")), #= Symbol("C:\Users\sebastian\.julia\packages\Weave\zT0iu\src\WeaveMarkdown\markdown.jl"):16 =#, Expr(:&&, :use_dollars, Expr(:call, :write, :io, "\]
")))))
  ** incremental compilation may be fatally broken for this module **

WARNING: Method definition latex(IO, Markdown.LaTeX) in module Markdown at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.4\Markdown\src\IPython\IPython.jl:28 overwritten at C:\Users\sebastian\.julia\packages\Weave\zT0iu\src\WeaveMarkdown\markdown.jl:12.
  ** incremental compilation may be fatally broken for this module **

@ChrisRackauckas
Copy link
Member

This is an upstream issue with Weave. It should be harmless here though. JunoLab/Weave.jl#356

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

2 participants