timholy / Revise.jl

Automatically update function definitions in a running Julia session
https://timholy.github.io/Revise.jl/stable
Other
1.19k stars 109 forks source link

Problem with loading `REPLExt` on Julia 1.11-rc2 and Revise 3.5.17 #832

Closed JamesWrigley closed 1 month ago

JamesWrigley commented 1 month ago

I just updated to Julia 1.11-rc2, and with Revise 3.5.17 I get this error when I enter pkg> mode and type a character:

$ julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.11.0-rc2 (2024-07-29)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

(@v1.11) pkg> ┌ Error: Error during package callback
│   exception =
│    1-element ExceptionStack:
│    KeyError: key Base.PkgId(Base.UUID("e5eb5ef1-03cf-53a7-ae1d-5a66b08e832b"), "REPLExt") not found
│    Stacktrace:
│      [1] getindex
│        @ ./dict.jl:477 [inlined]
│      [2] macro expansion
│        @ ./lock.jl:273 [inlined]
│      [3] root_module(key::Base.PkgId)
│        @ Base ./loading.jl:2319
│      [4] parse_pkg_files(id::Base.PkgId)
│        @ Revise ~/.julia/packages/Revise/doDG7/src/loading.jl:49
│      [5] watch_package(id::Base.PkgId)
│        @ Revise ~/.julia/packages/Revise/doDG7/src/pkgs.jl:349
│      [6] #invokelatest#2
│        @ ./essentials.jl:1043 [inlined]
│      [7] invokelatest
│        @ ./essentials.jl:1040 [inlined]
│      [8] watch_package_callback(id::Base.PkgId)
│        @ Revise ~/.julia/packages/Revise/doDG7/src/packagedef.jl:1370
│      [9] #invokelatest#2
│        @ ./essentials.jl:1043 [inlined]
│     [10] invokelatest
│        @ ./essentials.jl:1040 [inlined]
│     [11] run_package_callbacks(modkey::Base.PkgId)
│        @ Base ./loading.jl:1298
│     [12] macro expansion
│        @ ./loading.jl:2527 [inlined]
│     [13] macro expansion
│        @ ./lock.jl:273 [inlined]
│     [14] require_stdlib(package_uuidkey::Base.PkgId, ext::String)
│        @ Base ./loading.jl:2485
│     [15] macro expansion
│        @ ~/.julia/juliaup/julia-1.11.0-rc2+0.x64.linux.gnu/share/julia/stdlib/v1.11/REPL/src/Pkg_beforeload.jl:8 [inlined]
│     [16] macro expansion
│        @ ./lock.jl:273 [inlined]
│     [17] load_pkg()
│        @ REPL ~/.julia/juliaup/julia-1.11.0-rc2+0.x64.linux.gnu/share/julia/stdlib/v1.11/REPL/src/Pkg_beforeload.jl:7
│     [18] (::REPL.var"#119#137"{REPL.LineEdit.MIState, REPL.LineEditREPL, REPL.LineEdit.Prompt})()
│        @ REPL ~/.julia/juliaup/julia-1.11.0-rc2+0.x64.linux.gnu/share/julia/stdlib/v1.11/REPL/src/REPL.jl:1231
└ @ Base loading.jl:1303

v3.5.16 works fine though, and I didn't try 3.5.17 on rc1 so it might have nothing to do with the Julia version.

JamesWrigley commented 1 month ago

Ah and I just saw #812, but my startup.jl only has using Revise in it.

MasonProtter commented 1 month ago

I'm also getting this issue and only have a bare using Revise.

kbarros commented 1 month ago

This seems fixed for me in Keno's branch at https://github.com/timholy/Revise.jl/pull/833.