aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKirill Chibisov <contact@kchibisov.com>2024-11-28 16:07:41 +0300
committerKirill Chibisov <contact@kchibisov.com>2024-11-28 18:41:23 +0300
commit713e89a6c50ce461fc91245463974635f4940772 (patch)
tree3d90cd11fc300a2def5a89fae7a001caaeb06b3a
parent1be20fbe4a556598f1b7335f56f5350853652ce5 (diff)
downloadalacritty-713e89a6c50ce461fc91245463974635f4940772.tar.gz
alacritty-713e89a6c50ce461fc91245463974635f4940772.zip
Don't error on nonexistent TOML imports in migrate
YAML import migration was already properly ignoring nonexistent imports, it was only missed for TOML ones. Fixes #8330.
-rw-r--r--CHANGELOG.md1
-rw-r--r--alacritty/src/migrate/mod.rs8
2 files changed, 9 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 15bdaa2b..ed471ce7 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -24,6 +24,7 @@ Notable changes to the `alacritty_terminal` crate are documented in its
- Hint launcher opening arbitrary text, when terminal content changed while opening
- `SemanticRight`/`SemanticLeft` vi motions breaking with wide semantic escape characters
- `alacritty migrate` crashing with recursive toml imports
+- Migrating nonexistent toml import breaking the entire migration
## 0.14.0
diff --git a/alacritty/src/migrate/mod.rs b/alacritty/src/migrate/mod.rs
index ffba25f0..bfa72294 100644
--- a/alacritty/src/migrate/mod.rs
+++ b/alacritty/src/migrate/mod.rs
@@ -151,6 +151,14 @@ fn migrate_imports(
// Migrate each import.
for import in imports.into_iter().filter_map(|item| item.as_str()) {
let normalized_path = config::normalize_import(path, import);
+
+ if !normalized_path.exists() {
+ if options.dry_run {
+ println!("Skipping migration for nonexistent path: {}", normalized_path.display());
+ }
+ continue;
+ }
+
let migration = migrate_config(options, &normalized_path, recursion_limit - 1)?;
if options.dry_run {
println!("{}", migration.success_message(true));