Skip to content

REPL pkg mode error on tab completion #4372

@felixcremer

Description

@felixcremer

I got the following error on the first tab completion after opening julia.
This only happened on the first tab completion after updating the julia nightly version.

(@v1.13) pkg> add JS┌ Error: Error in the keymap
│   exception =
│    AssertionError: !(isdefined(vinfo, :uncompressed_compat))
│    Stacktrace:
│      [1] initialize_uncompressed!(pkg::Pkg.Registry.PkgInfo, versions::Base.KeySet{VersionNumber, Dict{VersionNumber, Pkg.Registry.VersionInfo}})
│        @ Pkg.Registry ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/src/Registry/registry_instance.jl:126
│      [2] initialize_uncompressed!
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/src/Registry/registry_instance.jl:108 [inlined]
│      [3] compat_info
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/src/Registry/registry_instance.jl:158 [inlined]
│      [4] complete_remote_package!(comps::Vector{String}, partial::String; hint::Bool)
│        @ REPLExt ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:67
│      [5] complete_remote_package!
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:57 [inlined]
│      [6] complete_add_dev(options::Dict{Symbol, Any}, partial::String, i1::Int64, i2::Int64; hint::Bool)
│        @ REPLExt ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:157
│      [7] complete_add_dev
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:152 [inlined]
│      [8] #42
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:232 [inlined]
│      [9] kwcall(::@NamedTuple{hint::Bool}, ::REPLExt.var"#40#41"{REPLExt.var"#42#43"{typeof(REPLExt.complete_add_dev)}}, opts::Dict{Symbol, Any}, partial::String, offset::Int64, index::Int64)
│        @ REPLExt ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:231
│     [10] complete_argument(spec::Pkg.REPLMode.CommandSpec, options::Vector{String}, partial::String, offset::Int64, index::Int64; hint::Bool)
│        @ REPLExt ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:246
│     [11] kwcall(::@NamedTuple{hint::Bool}, ::typeof(REPLExt.complete_argument), spec::Pkg.REPLMode.CommandSpec, options::Vector{String}, partial::String, offset::Int64, index::Int64)
│        @ REPLExt ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:217
│     [12] _completions(input::String, final::Bool, offset::Int64, index::Int64; hint::Bool)
│        @ REPLExt ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:274
│     [13] _completions
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:249 [inlined]
│     [14] completions(full::String, index::Int64; hint::Bool)
│        @ REPLExt ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:303
│     [15] completions
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/completions.jl:291 [inlined]
│     [16] complete_line(c::REPLExt.PkgCompletionProvider, s::REPL.LineEdit.PromptState; hint::Bool)
│        @ REPLExt ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/Pkg/ext/REPLExt/REPLExt.jl:36
│     [17] complete_line(c::REPL.LineEdit.CompletionProvider, s::Any, ::Module; hint::Bool)
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:202
│     [18] kwcall(::NamedTuple, ::typeof(REPL.LineEdit.complete_line), c::REPL.LineEdit.CompletionProvider, s::Any, ::Module)
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:202
│     [19] complete_line_named(c::Any, s::Any, args::Any; kwargs...)
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:401
│     [20] complete_line_named
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:400 [inlined]
│     [21] complete_line(s::REPL.LineEdit.PromptState, repeats::Int64, mod::Module; hint::Bool)
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:497
│     [22] complete_line(s::REPL.LineEdit.PromptState, repeats::Int64, mod::Module)
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:496
│     [23] complete_line(s::REPL.LineEdit.MIState)
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:386
│     [24] edit_tab(s::REPL.LineEdit.MIState, jump_spaces::Bool, delete_trailing::Bool)
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:2518
│     [25] edit_tab
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:2518 [inlined]
│     [26] (::REPL.LineEdit.var"#141#142")(::REPL.LineEdit.MIState, ::Any, ::Vararg{Any})
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:2564
│     [27] (::REPL.LineEdit.var"#match_input##0#match_input##1"{REPL.LineEdit.var"#141#142", String})(s::Any, p::Any)
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:1810
│     [28] macro expansion
│        @ ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:2960 [inlined]
│     [29] macro expansion
│        @ ./lock.jl:376 [inlined]
│     [30] (::REPL.LineEdit.var"#prompt!##2#prompt!##3"{REPL.Terminals.TTYTerminal, REPL.LineEdit.ModalInterface, REPL.LineEdit.MIState, REPL.LineEdit.Prompt})()
│        @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:2949
└ @ REPL.LineEdit ~/.julia/juliaup/julia-nightly/share/julia/stdlib/v1.13/REPL/src/LineEdit.jl:2962

This is on julia version:

julia> versioninfo()
Julia Version 1.13.0-DEV.1023
Commit d92b2ad3570 (2025-08-21 13:24 UTC)
Build Info:
  Official https://julialang.org release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 16 × AMD Ryzen 7 PRO 5850U with Radeon Graphics
  WORD_SIZE: 64
  LLVM: libLLVM-20.1.8 (ORCJIT, znver3)
  GC: Built with stock GC
Threads: 1 default, 1 interactive, 1 GC (on 16 virtual cores)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    In progress

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions