Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Source build of 1.12.0 on macOS ARM: failure of Pkg repl prompt after 3fc35778cc #54793

Closed
George9000 opened this issue Jun 13, 2024 · 2 comments · Fixed by #54795
Closed

Source build of 1.12.0 on macOS ARM: failure of Pkg repl prompt after 3fc35778cc #54793

George9000 opened this issue Jun 13, 2024 · 2 comments · Fixed by #54795
Assignees
Labels
bug Indicates an unexpected problem or unintended behavior REPL Julia's REPL (Read Eval Print Loop)

Comments

@George9000
Copy link
Contributor

After a source build of 3fc3577 and no v1.12 environment in ~/.julia, launching julia and then attempting to enter the Pkg repl prompt generates the following error about a keymap.

Under the same conditions, no error was present in the immediate prior commit, 68fe512

error details

Julia Version 1.12.0-DEV.711
Commit 3fc35778cc (2024-06-11 21:46 UTC)
Platform Info:
  OS: macOS (arm64-apple-darwin23.5.0)
  CPU: 16 × Apple M3 Max
  WORD_SIZE: 64
  LLVM: libLLVM-17.0.6 (ORCJIT, apple-m3)
Threads: 1 default, 0 interactive, 1 GC (on 12 virtual cores)

              _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.12.0-DEV.711 (2024-06-11)
 _/ |\__'_|_|_|\__'_|  |  Commit 3fc35778cc (1 day old master)
|__/                   |

julia> ┌ Error: Error in the keymap
│   exception =
│    SystemError: opening file "/Users/foo/.julia/environments/v1.12/Project.toml": No such file or directory
│    Stacktrace:
│      [1] systemerror(p::String, errno::Int32; extrainfo::Nothing)
│        @ Base ./error.jl:185
│      [2] open(fname::String; lock::Bool, read::Nothing, write::Nothing, create::Nothing, truncate::Nothing, append::Nothing)
│        @ Base ./iostream.jl:298
│      [3] open
│        @ ./iostream.jl:277 [inlined]
│      [4] open(f::Base.var"#472#473"{String}, args::String; kwargs::@Kwargs{})
│        @ Base ./io.jl:408
│      [5] open
│        @ ./io.jl:407 [inlined]
│      [6] read
│        @ ./io.jl:507 [inlined]
│      [7] projname(project_file::String)
│        @ REPL ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/Pkg_beforeload.jl:73
│      [8] Pkg_promptf()
│        @ REPL ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/Pkg_beforeload.jl:100
│      [9] #invokelatest#2
│        @ ./essentials.jl:1033 [inlined]
│     [10] invokelatest
│        @ ./essentials.jl:1030 [inlined]
│     [11] prompt_string
│        @ ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:478 [inlined]
│     [12] write_prompt(terminal::IO, s::Union{AbstractString, Function}, color::Bool)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:1617
│     [13] write_prompt(terminal::REPL.Terminals.AbstractTerminal, p::REPL.LineEdit.Prompt, color::Bool)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:1567
│     [14] write_prompt(terminal::REPL.Terminals.AbstractTerminal, s::REPL.LineEdit.PromptState, color::Bool)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:1561
│     [15] refresh_multi_line(termbuf::REPL.Terminals.TerminalBuffer, terminal::REPL.Terminals.UnixTerminal, buf::IOBuffer, state::REPL.LineEdit.InputAreaState, prompt::Any; indent::Int64, region_active::Bool)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:526
│     [16] refresh_multi_line
│        @ ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:511 [inlined]
│     [17] #refresh_multi_line#46
│        @ ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2078 [inlined]
│     [18] refresh_multi_line(termbuf::REPL.Terminals.TerminalBuffer, terminal::REPL.Terminals.UnixTerminal, s::Union{REPL.LineEdit.PrefixSearchState, REPL.LineEdit.PromptState})
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2075
│     [19] refresh_multi_line(termbuf::REPL.Terminals.TerminalBuffer, s::REPL.LineEdit.ModeState; kw...)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:508
│     [20] refresh_line(s::Union{REPL.LineEdit.MIState, REPL.LineEdit.ModeState, IOBuffer}, termbuf::REPL.Terminals.AbstractTerminal)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:1556
│     [21] activate(p::REPL.LineEdit.TextInterface, s::REPL.LineEdit.ModeState, termbuf::REPL.Terminals.AbstractTerminal, term::REPL.Terminals.TextTerminal)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2649
│     [22] transition(f::Function, s::REPL.LineEdit.MIState, newmode::Union{Symbol, REPL.LineEdit.TextInterface})
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2681
│     [23] (::REPL.var"#117#135"{REPL.LineEditREPL, REPL.LineEdit.Prompt})(::REPL.LineEdit.MIState, ::Any, ::Vararg{Any})
│        @ REPL ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:1264
│     [24] #invokelatest#2
│        @ ./essentials.jl:1033 [inlined]
│     [25] invokelatest
│        @ ./essentials.jl:1030 [inlined]
│     [26] (::REPL.LineEdit.var"#30#31"{REPL.var"#117#135"{REPL.LineEditREPL, REPL.LineEdit.Prompt}, String})(s::Any, p::Any)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:1704
│     [27] macro expansion
│        @ ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2849 [inlined]
│     [28] macro expansion
│        @ ./lock.jl:273 [inlined]
│     [29] prompt!(term::REPL.Terminals.TextTerminal, prompt::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2841
│     [30] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
│        @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2743
│     [31] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef)
│        @ REPL ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:1493
│     [32] (::REPL.var"#75#81"{REPL.LineEditREPL, REPL.REPLBackendRef})()
│        @ REPL ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/REPL.jl:498
└ @ REPL.LineEdit ~/applications/juliamaster/usr/share/julia/stdlib/v1.12/REPL/src/LineEdit.jl:2851

@DilumAluthge
Copy link
Member

@IanButterworth What do you think the right move is here? Should we create the missing Project.toml file if it doesn't exist? Or can we ignore the error without needing to create the file?

@DilumAluthge DilumAluthge added bug Indicates an unexpected problem or unintended behavior REPL Julia's REPL (Read Eval Print Loop) labels Jun 13, 2024
@IanButterworth IanButterworth self-assigned this Jun 13, 2024
@IanButterworth
Copy link
Member

We should do whatever Pkg does, which is what it should be doing. I'll take a look

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Indicates an unexpected problem or unintended behavior REPL Julia's REPL (Read Eval Print Loop)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants