zed icon indicating copy to clipboard operation
zed copied to clipboard

Panic when `cargo run` on Linux due to missing configurations

Open AbhinavMir opened this issue 1 year ago • 7 comments

Check for existing issues

  • [X] Completed

Describe the bug / provide steps to reproduce it

I couldn't find a similar issue for linux, but TL;DR: Received errors about missing configuration files (settings.json, keymap.json, extensions/installed, tasks.json), JSON parsing errors due to EOF, an API rate limit exceeded error for GitHub API, and a panic related to not implemented functionality in the Linux platform code for gpui.

To reproduce:

  1. Git clone and install everything
  2. cargo run
  3. Click on select keymaps

This might be my platform, but I'm guessing this could be better handled with a notification popup similar to how lazyvim does.

   Running `target/debug/Zed`
[2024-02-21T13:47:47-05:00 ERROR fs] watch path does not exist: /home/august/.config/zed/settings.json
[2024-02-21T13:47:47-05:00 ERROR fs] watch path does not exist: /home/august/.config/zed/keymap.json
[2024-02-21T13:47:49-05:00 ERROR util] crates/settings/src/settings_file.rs:76: EOF while parsing a value at line 1 column 0
[2024-02-21T13:47:49-05:00 ERROR fs] watch path does not exist: /home/august/.config/zed/extensions/installed
[2024-02-21T13:47:49-05:00 ERROR util] crates/extension/src/extension_store.rs:183: No such file or directory (os error 2)
[2024-02-21T13:47:49-05:00 ERROR util] crates/zed/src/zed.rs:555: EOF while parsing a value at line 1 column 0
[2024-02-21T13:47:50-05:00 ERROR util] crates/copilot/src/copilot.rs:1014: status error 403, response: "{\"message\":\"API rate limit exceeded for 24.218.217.88. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)\",\"documentation_url\":\"https://docs.github.com/rest/overview/resources-in-the-rest-api#rate-limiting\"}\n"
[2024-02-21T13:47:50-05:00 ERROR fs] watch path does not exist: /home/august/.config/zed/tasks.json
Thread "main" panicked with "not implemented" at crates/gpui/src/platform/linux/platform.rs:368:9
   0: Zed::init_panic_hook::{closure#0}
             at crates/zed/src/main.rs:594:29
   1: <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
      std::panicking::rust_panic_with_hook
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:783:13
   2: std::panicking::begin_panic_handler::{{closure}}
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:649:13
   3: std::sys_common::backtrace::__rust_end_short_backtrace
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:171:18
   4: rust_begin_unwind
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:645:5
   5: core::panicking::panic_fmt
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:72:14
   6: core::panicking::panic
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/panicking.rs:144:5
   7: <gpui::platform::linux::platform::LinuxPlatform as gpui::platform::Platform>::path_for_auxiliary_executable
             at crates/gpui/src/platform/linux/platform.rs:368:9
   8: <gpui::app::AppContext>::path_for_auxiliary_executable
             at crates/gpui/src/app.rs:577:9
   9: install_cli::install_cli::{closure#0}::{closure#0}
             at crates/install_cli/src/install_cli.rs:9:35
  10: <gpui::app::async_context::AsyncAppContext>::update::<core::result::Result<std::path::PathBuf, anyhow::Error>, install_cli::install_cli::{closure#0}::{closure#0}>
             at crates/gpui/src/app/async_context.rs:116:12
  11: install_cli::install_cli::{closure#0}
             at crates/install_cli/src/install_cli.rs:9:20
  12: <welcome::WelcomePage as gpui::element::Render>::render::{closure#2}::{closure#0}::{closure#0}
             at crates/welcome/src/welcome.rs:133:79
  13: <core::pin::Pin<alloc::boxed::Box<dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>> as core::future::future::Future>::poll
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/future/future.rs:124:9
  14: <<async_task::runnable::Builder<_>>::spawn_local::Checked<core::pin::Pin<alloc::boxed::Box<dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>> as core::future::future::Future>::poll
             at /home/august/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-task-4.7.0/src/runnable.rs:455:26
  15: <async_task::raw::RawTask<<async_task::runnable::Builder<_>>::spawn_local::Checked<core::pin::Pin<alloc::boxed::Box<dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>, core::result::Result<(), anyhow::Error>, <gpui::executor::ForegroundExecutor>::spawn::inner<core::result::Result<(), anyhow::Error>>::{closure#0}, ()>>::run
             at /home/august/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-task-4.7.0/src/raw.rs:557:17
  16: <async_task::runnable::Runnable>::run
             at /home/august/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-task-4.7.0/src/runnable.rs:781:18
  17: <gpui::platform::linux::x11::client::X11Client as gpui::platform::linux::client::Client>::run
             at crates/gpui/src/platform/linux/x11/client.rs:214:17
  18: <gpui::platform::linux::platform::LinuxPlatform as gpui::platform::Platform>::run
             at crates/gpui/src/platform/linux/platform.rs:174:9
  19: <gpui::app::App>::run::<Zed::main::{closure#3}>
             at crates/gpui/src/app.rs:143:9
  20: Zed::main
             at crates/zed/src/main.rs:123:5
  21: <fn() as core::ops::function::FnOnce<()>>::call_once
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:250:5
  22: std::sys_common::backtrace::__rust_begin_short_backtrace::<fn(), ()>
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:155:18
  23: std::rt::lang_start::<()>::{closure#0}
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/rt.rs:166:18
  24: core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/core/src/ops/function.rs:284:13
      std::panicking::try::do_call
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
      std::panicking::try
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
      std::panic::catch_unwind
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
      std::rt::lang_start_internal::{{closure}}
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/rt.rs:148:48
      std::panicking::try::do_call
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:552:40
      std::panicking::try
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:516:19
      std::panic::catch_unwind
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panic.rs:142:14
      std::rt::lang_start_internal
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/rt.rs:148:20
  25: std::rt::lang_start::<()>
             at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/rt.rs:165:17
  26: main
  27: __libc_start_call_main
             at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
  28: __libc_start_main_impl
             at ./csu/../csu/libc-start.c:392:3
  29: _start

Environment

Linux august 5.15.0-92-generic #102-Ubuntu SMP Wed Jan 10 09:33:48 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

If applicable, add mockups / screenshots to help explain present your vision of the feature

No response

If applicable, attach your ~/Library/Logs/Zed/Zed.log file to this issue.

If you only need the most recent lines, you can run the zed: open log command palette action to see the last 1000.

No response

AbhinavMir avatar Feb 21 '24 18:02 AbhinavMir

I got the same. Oddly enough, when the build reaches that point my X11 session dies and I'm sent to login page. I tried twice as I missed the error on the first time when that happened.

ristomatti avatar Feb 21 '24 23:02 ristomatti

same issue

sibi-venti avatar Feb 22 '24 02:02 sibi-venti

Strange, why am I not getting this? The line number corresponds to path_for_auxiliary_executable.

kvark avatar Feb 22 '24 08:02 kvark

Same issue here. I'm stepping through the debugger trying to find out what's causing these problems.

wildwestrom avatar Feb 22 '24 16:02 wildwestrom

same here.

Jojoooo1 avatar Feb 26 '24 12:02 Jojoooo1

I have the same issue. But the program crashes only after doing things like trying to sign in or even typing.

DownloadableFox avatar Feb 28 '24 20:02 DownloadableFox

I got it to build now after pulling new commits. Panic crashes a lot though.

ristomatti avatar Mar 05 '24 21:03 ristomatti

This should no longer crash.

mikayla-maki avatar May 29 '24 00:05 mikayla-maki