Fallible Settings (#42938)

Also tidies up error notifications so that in the case of syntax errors
we don't see noise about the migration failing as well.

Release Notes:

- Invalid values in settings files will no longer prevent the rest of
the file from being parsed.
This commit is contained in:
Conrad Irwin
2025-11-21 08:28:17 -07:00
committed by GitHub
parent a8d7f06b47
commit 2ac13b9489
19 changed files with 509 additions and 494 deletions
+3 -8
View File
@@ -50,8 +50,8 @@ use workspace::{
use zed::{
OpenListener, OpenRequest, RawOpenRequest, app_menus, build_window_options,
derive_paths_with_position, edit_prediction_registry, handle_cli_connection,
handle_keymap_file_changes, handle_settings_changed, handle_settings_file_changes,
initialize_workspace, open_paths_with_positions,
handle_keymap_file_changes, handle_settings_file_changes, initialize_workspace,
open_paths_with_positions,
};
use crate::zed::{OpenRequestKind, eager_load_active_theme_and_icon_theme};
@@ -411,12 +411,7 @@ pub fn main() {
}
settings::init(cx);
zlog_settings::init(cx);
handle_settings_file_changes(
user_settings_file_rx,
global_settings_file_rx,
cx,
handle_settings_changed,
);
handle_settings_file_changes(user_settings_file_rx, global_settings_file_rx, cx);
handle_keymap_file_changes(user_keymap_file_rx, cx);
let user_agent = format!(