Stream: helpdesk (published)

Topic: clean package registry gc()


view this post on Zulip Dale Black (Jun 06 2022 at 19:19):

Does anyone know what this means and what I should do?

(@v1.7) pkg> gc
ERROR: TOML Parser error:
/Users/daleblack/.julia/logs/artifact_usage.toml:61780:0 error: invalid bare key character: '\n'
  3.037Z
        ^
Stacktrace:
  [1] parse
    @ ./toml_parser.jl:441 [inlined]
  [2] Base.CachedTOMLDict(p::Base.TOML.Parser, path::String)
    @ Base ./loading.jl:189
  [3] (::Base.var"#846#847"{String, Base.TOMLCache})()
    @ Base ./loading.jl:245
  [4] lock(f::Base.var"#846#847"{String, Base.TOMLCache}, l::ReentrantLock)
    @ Base ./lock.jl:190
  [5] parsed_toml
    @ ./loading.jl:242 [inlined]
  [6] parse_toml
    @ /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/Pkg/src/Types.jl:59 [inlined]
  [7] (::Pkg.API.var"#reduce_usage!#175")(f::Function, usage_filepath::String)
    @ Pkg.API /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/Pkg/src/API.jl:485
  [8] gc(ctx::Pkg.Types.Context; collect_delay::Dates.Day, verbose::Bool, force::Bool, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ Pkg.API /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/Pkg/src/API.jl:502
  [9] gc (repeats 2 times)
    @ /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/Pkg/src/API.jl:455 [inlined]
 [10] do_cmd!(command::Pkg.REPLMode.Command, repl::REPL.LineEditREPL)
    @ Pkg.REPLMode /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/Pkg/src/REPLMode/REPLMode.jl:404
 [11] do_cmd(repl::REPL.LineEditREPL, input::String; do_rethrow::Bool)
    @ Pkg.REPLMode /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/Pkg/src/REPLMode/REPLMode.jl:385
 [12] do_cmd
    @ /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/Pkg/src/REPLMode/REPLMode.jl:376 [inlined]
 [13] (::Pkg.REPLMode.var"#24#27"{REPL.LineEditREPL, REPL.LineEdit.Prompt})(s::REPL.LineEdit.MIState, buf::IOBuffer, ok::Bool)
    @ Pkg.REPLMode /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/Pkg/src/REPLMode/REPLMode.jl:549
 [14] #invokelatest#2
    @ ./essentials.jl:716 [inlined]
 [15] invokelatest
    @ ./essentials.jl:714 [inlined]
 [16] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
    @ REPL.LineEdit /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:2493
 [17] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef)
    @ REPL /Applications/Julia-1.7.app/Contents/Resources/julia/share/julia/stdlib/v1.7/REPL/src/REPL.jl:1230
 [18] (::REPL.var"#49#54"{REPL.LineEditREPL, REPL.REPLBackendRef})()
    @ REPL ./task.jl:423

view this post on Zulip Sukera (Jun 06 2022 at 19:20):

it's due to a race condition in writing that file

view this post on Zulip Sukera (Jun 06 2022 at 19:20):

should be fixed in 1.8+

view this post on Zulip Sukera (Jun 06 2022 at 19:20):

not 100% sure what the proper fix was, but possibly just deleting that file should work

view this post on Zulip Sukera (Jun 06 2022 at 20:10):

"fixed" as in "shouldn't happen in 1.8+ again"

view this post on Zulip Dale Black (Jun 06 2022 at 20:11):

Gotcha! I will just wait until the official 1.8 release

view this post on Zulip Fredrik Ekre (Jun 06 2022 at 21:17):

The file is still corrupt, and 1.8 won't fix that. You can either delete the file, or try to locate the broken parts and remove those.

view this post on Zulip Sukera (Jun 06 2022 at 21:21):

what I meant with "shouldn't happen in 1.8+ again" was that the root cause (the race condition) iirc got fixed, so such a corrupt file should not be produced again in the future. The existing file is of course still broken, yes.


Last updated: Oct 02 2023 at 04:34 UTC