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

    No labels
    No labels

    Type

    No type

    Projects

    Status

    In progress

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions