JSON based migrations (#39398)

Closes #ISSUE

Adds the ability to create settings and keymap migrations by mutating
`serde_json::Value`s instead of using tree-sitter queries. This
(hopefully) will make complicated migrations far simpler to implement.

Release Notes:

- N/A *or* Added/Fixed/Improved ...

---------

Co-authored-by: Smit <heysmitbarmase@gmail.com>
Co-authored-by: Smit <smit@zed.dev>
This commit is contained in:
Ben Kunkle
2025-10-02 16:07:26 -04:00
committed by GitHub
co-authored by Smit Smit
parent af630be7ca
commit 7c3a21f732
5 changed files with 112 additions and 54 deletions
Generated
+3 -1
View File
@@ -9688,6 +9688,9 @@ dependencies = [
"convert_case 0.8.0",
"log",
"pretty_assertions",
"serde_json",
"serde_json_lenient",
"settings",
"streaming-iterator",
"tree-sitter",
"tree-sitter-json",
@@ -19686,7 +19689,6 @@ dependencies = [
"core-foundation 0.9.4",
"core-foundation-sys",
"cranelift-codegen",
"crc32fast",
"crossbeam-channel",
"crossbeam-epoch",
"crossbeam-utils",