Skip to content

Test suite fails with Base_Docs_4352b6d8 error (again) #695

@t-bltg

Description

@t-bltg

LoadError: UndefVarError: Base_Docs_4352b6d8 not defined appears again.

Not only locally when developing, but also in CI (e.g. https://github.com/timholy/Revise.jl/runs/7479727981?check_suite_focus=true).

Base signatures: Error During Test at /home/runner/work/Revise.jl/Revise.jl/test/runtests.jl:4061
  Got exception outside of a @test
  LoadError: UndefVarError: Base_Docs_4352b6d8 not defined
  Stacktrace:
    [1] collect_args(recurse::Any, frame::Frame, call_expr::Expr; isfc::Bool)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:60
    [2] collect_args
    @ ~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:136 [inlined]
    [3] evaluate_call_recurse!(recurse::Any, frame::Frame, call_expr::Expr; enter_generated::Bool)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:233
    [4] evaluate_call_recurse!
    @ ~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:227 [inlined]
    [5] eval_rhs(recurse::Any, frame::Frame, node::Expr)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:399
    [6] step_expr!(recurse::Any, frame::Frame, node::Any, istoplevel::Bool)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:552
    [7] step_expr!
    @ ~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:602 [inlined]
    [8] finish!(recurse::Any, frame::Frame, istoplevel::Bool)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/commands.jl:14
    [9] finish_and_return!
    @ ~/.julia/packages/JuliaInterpreter/Q7nmG/src/commands.jl:30 [inlined]
   [10] evaluate_call_recurse!(recurse::Any, frame::Frame, call_expr::Expr; enter_generated::Bool)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:266
   [11] evaluate_call_recurse!
    @ ~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:227 [inlined]
   [12] eval_rhs(recurse::Any, frame::Frame, node::Expr)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:399
   [13] step_expr!(recurse::Any, frame::Frame, node::Any, istoplevel::Bool)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:552
   [14] step_expr!
    @ ~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:602 [inlined]
   [15] finish!(recurse::Any, frame::Frame, istoplevel::Bool)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/commands.jl:14
   [16] finish_and_return!
    @ ~/.julia/packages/JuliaInterpreter/Q7nmG/src/commands.jl:30 [inlined]
   [17] evaluate_call_recurse!(recurse::Any, frame::Frame, call_expr::Expr; enter_generated::Bool)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:266
   [18] evaluate_call_recurse!
    @ ~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:227 [inlined]
   [19] eval_rhs(recurse::Any, frame::Frame, node::Expr)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:399
   [20] step_expr!(recurse::Any, frame::Frame, node::Any, istoplevel::Bool)
    @ JuliaInterpreter~/.julia/packages/JuliaInterpreter/Q7nmG/src/interpret.jl:547
   [21] signature(recurse::Any, frame::Frame, stmt::Any, pc::Int64)
    @ LoweredCodeUtils~/.julia/packages/LoweredCodeUtils/0oUEK/src/signatures.jl:51
   [22] methoddef!(recurse::Any, signatures::Vector{Any}, frame::Frame, stmt::Any, pc::Int64; define::Bool)
    @ LoweredCodeUtils~/.julia/packages/LoweredCodeUtils/0oUEK/src/signatures.jl:493
   [23] methods_by_execution!(recurse::Any, methodinfo::Revise.CodeTrackingMethodInfo, docexprs::Dict{Module, Vector{Expr}}, frame::Frame, isrequired::Vector{Bool}; mode::Symbol, skip_include::Bool)
    @ Revise~/work/Revise.jl/Revise.jl/src/lowered.jl:272
   [24] methods_by_execution!(recurse::Any, methodinfo::Revise.CodeTrackingMethodInfo, docexprs::Dict{Module, Vector{Expr}}, mod::Module, ex::Expr; mode::Symbol, disablebp::Bool, always_rethrow::Bool, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ Revise~/work/Revise.jl/Revise.jl/src/lowered.jl:217
   [25] #eval_with_signatures#90
    @ ~/work/Revise.jl/Revise.jl/src/packagedef.jl:464 [inlined]
   [26] instantiate_sigs!(modexsigs::OrderedCollections.OrderedDict{Module, OrderedCollections.OrderedDict{Revise.RelocatableExpr, Union{Nothing, Vector{Any}}}}; mode::Symbol, kwargs::Base.Pairs{Symbol, Bool, Tuple{Symbol}, NamedTuple{(:always_rethrow,), Tuple{Bool}}})
    @ Revise~/work/Revise.jl/Revise.jl/src/packagedef.jl:472
   [27] macro expansion
    @ ~/work/Revise.jl/Revise.jl/test/sigtest.jl:102 [inlined]
   [28] top-level scope
    @ ./timing.jl:220
   [29] include(fname::String)
    @ Base.MainInclude/opt/hostedtoolcache/julia/1.7.3/x64/share/julia/base/client.jl:451
   [30] macro expansion
    @ ~/work/Revise.jl/Revise.jl/test/runtests.jl:4064 [inlined]
   [31] macro expansion
    @ /opt/hostedtoolcache/julia/1.7.3/x64/share/julia/stdlib/v1.7/Test/src/Test.jl:1283 [inlined]
   [32] top-level scope
    @ ~/work/Revise.jl/Revise.jl/test/runtests.jl:4062
   [33] include(fname::String)
    @ Base.MainInclude/opt/hostedtoolcache/julia/1.7.3/x64/share/julia/base/client.jl:451
   [34] top-level scope
    @ none:6
   [35] eval
    @ ./boot.jl:373 [inlined]
   [36] exec_options(opts::Base.JLOptions)
    @ Base/opt/hostedtoolcache/julia/1.7.3/x64/share/julia/base/client.jl:268
   [37] _start()
    @ Base/opt/hostedtoolcache/julia/1.7.3/x64/share/julia/base/client.jl:495
  in expression starting at /home/runner/work/Revise.jl/Revise.jl/test/sigtest.jl:97

This is very frustrating, because it affects local development, PRs workflow, and IMO should be treated as top priority.
I'm trying to fix this now.

Reproduce locally (on 1.7.3) with:

$  cd /tmp; git clone https://github.com/timholy/Revise.jl
$ julia
] dev /tmp/Revise.jl
] test Revise

Xref:
JuliaDebug/JuliaInterpreter.jl#423
#505
#520
#561
JuliaDebug/JuliaInterpreter.jl#441
JuliaDebug/JuliaInterpreter.jl#440
JuliaDebug/JuliaInterpreter.jl#444
JuliaDebug/JuliaInterpreter.jl#442
JuliaDebug/JuliaInterpreter.jl#535

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions