Juliaup breaks after failed auto upgrade

I’m getting this error when trying to start Julia from juliaup. A few days ago it worked. Note that I get back to the shell, then julia starts, but soon later I get those “IOError” stream errors.

Any idea?

~% julia
The latest version of Julia in the `release` channel is 1.7.3+0~x64. You currently have `1.7.2+0~x64` installed. Run:

  juliaup update

to install Julia 1.7.3+0~x64 and update the `release` channel to that version.
Error: Failed to run selfupdate.

Caused by:
    0: Failed to start juliaup for self update.
    1: Permission denied (os error 13)
leandro@pitico:~%                _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.7.2 (2022-02-06)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> 
leandro@pitico:~% Unhandled Task ERROR: IOError: stream is closed or unusable
Stacktrace:
 [1] check_open(x::Base.TTY)
   @ Base ./stream.jl:386
 [2] raw!(t::REPL.Terminals.TTYTerminal, raw::Bool)
   @ REPL.Terminals ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/Terminals.jl:138
 [3] prompt!(term::REPL.Terminals.TextTerminal, prompt::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
   @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:2609
 [4] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
   @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:2488
 [5] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef)
   @ REPL ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/REPL.jl:1232
 [6] (::REPL.var"#49#54"{REPL.LineEditREPL, REPL.REPLBackendRef})()
   @ REPL ./task.jl:423

caused by: IOError: read: i/o error (EIO)
Stacktrace:
 [1] wait_readnb(x::Base.TTY, nb::Int64)
   @ Base ./stream.jl:408
 [2] eof(s::Base.TTY)
   @ Base ./stream.jl:106
 [3] eof(io::REPL.Terminals.TTYTerminal)
   @ Base ./io.jl:416
 [4] match_input(k::Dict{Char}, s::Union{Nothing, REPL.LineEdit.MIState}, term::Union{REPL.Terminals.AbstractTerminal, IOBuffer}, cs::Vector{Char}, keymap::Dict{Char}) (repeats 4 times)
   @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:1482
 [5] prompt!(term::REPL.Terminals.TextTerminal, prompt::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
   @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:2578
 [6] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
   @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:2488
 [7] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef)
   @ REPL ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/REPL.jl:1232
 [8] (::REPL.var"#49#54"{REPL.LineEditREPL, REPL.REPLBackendRef})()
   @ REPL ./task.jl:423
ERROR: TaskFailedException
Stacktrace:
  [1] try_yieldto(undo::typeof(Base.ensure_rescheduled))
    @ Base ./task.jl:777
  [2] wait()
    @ Base ./task.jl:837
  [3] wait(c::Base.GenericCondition{ReentrantLock})
    @ Base ./condition.jl:123
  [4] take_buffered(c::Channel{Any})
    @ Base ./channels.jl:389
  [5] take!
    @ ./channels.jl:383 [inlined]
  [6] repl_backend_loop(backend::REPL.REPLBackend)
    @ REPL ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/REPL.jl:241
  [7] start_repl_backend(backend::REPL.REPLBackend, consumer::Any)
    @ REPL ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/REPL.jl:231
  [8] run_repl(repl::REPL.AbstractREPL, consumer::Any; backend_on_current_task::Bool)
    @ REPL ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/REPL.jl:364
  [9] run_repl(repl::REPL.AbstractREPL, consumer::Any)
    @ REPL ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/REPL.jl:351
 [10] (::Base.var"#930#932"{Bool, Bool, Bool})(REPL::Module)
    @ Base ./client.jl:394
 [11] #invokelatest#2
    @ ./essentials.jl:716 [inlined]
 [12] invokelatest
    @ ./essentials.jl:714 [inlined]
 [13] run_main_repl(interactive::Bool, quiet::Bool, banner::Bool, history_file::Bool, color_set::Bool)
    @ Base ./client.jl:379
 [14] exec_options(opts::Base.JLOptions)
    @ Base ./client.jl:309
 [15] _start()
    @ Base ./client.jl:495

    nested task error: IOError: stream is closed or unusable
    Stacktrace:
     [1] check_open(x::Base.TTY)
       @ Base ./stream.jl:386
     [2] raw!(t::REPL.Terminals.TTYTerminal, raw::Bool)
       @ REPL.Terminals ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/Terminals.jl:138
     [3] prompt!(term::REPL.Terminals.TextTerminal, prompt::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
       @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:2609
     [4] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
       @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:2488
     [5] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef)
       @ REPL ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/REPL.jl:1232
     [6] (::REPL.var"#49#54"{REPL.LineEditREPL, REPL.REPLBackendRef})()
       @ REPL ./task.jl:423
    
    caused by: IOError: read: i/o error (EIO)
    Stacktrace:
     [1] wait_readnb(x::Base.TTY, nb::Int64)
       @ Base ./stream.jl:408
     [2] eof(s::Base.TTY)
       @ Base ./stream.jl:106
     [3] eof(io::REPL.Terminals.TTYTerminal)
       @ Base ./io.jl:416
     [4] match_input(k::Dict{Char}, s::Union{Nothing, REPL.LineEdit.MIState}, term::Union{REPL.Terminals.AbstractTerminal, IOBuffer}, cs::Vector{Char}, keymap::Dict{Char}) (repeats 4 times)
       @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:1482
     [5] prompt!(term::REPL.Terminals.TextTerminal, prompt::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
       @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:2578
     [6] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
       @ REPL.LineEdit ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/LineEdit.jl:2488
     [7] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef)
       @ REPL ~/.julia/juliaup/julia-1.7.2+0~x64/share/julia/stdlib/v1.7/REPL/src/REPL.jl:1232
     [8] (::REPL.var"#49#54"{REPL.LineEditREPL, REPL.REPLBackendRef})()
       @ REPL ./task.jl:423

1 Like

By the way, this is what I get if I try to update juliaup:

% juliaup update
bash: /home/leandro/.juliaup/bin/juliaup: Permission denied

That is within my home directory.

Some more info:

leandro@pitico:~/.juliaup/bin% ls -tlah
total 4,5M
-rw-rw-r-- 1 leandro leandro 750K jun  5 05:18 juliaup
drwxr-xr-x 2 leandro leandro 4,0K jun  5 05:18 ./
-rwxr-xr-x 1 leandro leandro 3,8M jun  1 00:22 julialauncher*
lrwxrwxrwx 1 leandro leandro   40 jan 26 08:39 julia -> /home/leandro/.juliaup/bin/julialauncher*
drwxrwxr-x 3 leandro leandro 4,0K jan 26 08:38 ../
leandro@pitico:~/.juliaup/bin% ./juliaup
bash: ./juliaup: Permission denied
leandro@pitico:~/.juliaup/bin% chmod +x juliaup
leandro@pitico:~/.juliaup/bin% ./juliaup
Segmentation fault
leandro@pitico:~/.juliaup/bin%