diff --git a/Cargo.lock b/Cargo.lock index 04957c8e..b1250ee5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -41,9 +41,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.101" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e0fee31ef5ed1ba1316088939cea399010ed7731dba877ed44aeb407a75ea" +checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" [[package]] name = "arc-swap" @@ -145,9 +145,9 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.43" +version = "0.4.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fac4744fb15ae8337dc853fee7fb3f4e48c0fbaa23d0afe49c447b4fab126118" +checksum = "c673075a2e0e5f4a1dde27ce9dee1ea4558c7ffe648f576438a20ca1d2acc4b0" dependencies = [ "iana-time-zone", "num-traits", @@ -464,9 +464,9 @@ checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" [[package]] name = "futures-executor" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d" dependencies = [ "futures-core", "futures-task", @@ -890,7 +890,7 @@ dependencies = [ "itoa", "libc", "memmap2", - "rustix 1.1.3", + "rustix 1.1.4", "smallvec", "thiserror", ] @@ -1518,7 +1518,7 @@ dependencies = [ "regex-automata", "regex-cursor", "ropey", - "rustix 1.1.3", + "rustix 1.1.4", "tempfile", "unicode-segmentation", "which", @@ -1630,7 +1630,7 @@ dependencies = [ "log", "once_cell", "parking_lot", - "rustix 1.1.3", + "rustix 1.1.4", "serde", "serde_json", "slotmap", @@ -2008,9 +2008,9 @@ checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "linux-raw-sys" -version = "0.11.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] name = "litemap" @@ -2255,9 +2255,9 @@ dependencies = [ [[package]] name = "pulldown-cmark" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e8bbe1a966bd2f362681a44f6edce3c2310ac21e4d5067a6e7ec396297a6ea0" +checksum = "83c41efbf8f90ac44de7f3a868f0867851d261b56291732d0cbf7cceaaeb55a6" dependencies = [ "bitflags", "memchr", @@ -2464,14 +2464,14 @@ dependencies = [ [[package]] name = "rustix" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" +checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ "bitflags", "errno", "libc", - "linux-raw-sys 0.11.0", + "linux-raw-sys 0.12.1", "windows-sys 0.61.2", ] @@ -2481,12 +2481,6 @@ version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" -[[package]] -name = "ryu" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" - [[package]] name = "same-file" version = "1.0.6" @@ -2713,9 +2707,9 @@ dependencies = [ [[package]] name = "sonic-rs" -version = "0.5.6" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4425ea8d66ec950e0a8f2ef52c766cc3d68d661d9a0845c353c40833179fd866" +checksum = "e16b39f36452a4fa6f14a481b02e9ba5c6842c6a44d0545da967eca122f2eed9" dependencies = [ "ahash", "bumpalo", @@ -2724,12 +2718,12 @@ dependencies = [ "faststr", "itoa", "ref-cast", - "ryu", "serde", "simdutf8", "sonic-number", "sonic-simd", "thiserror", + "zmij", ] [[package]] @@ -2783,14 +2777,14 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.25.0" +version = "3.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0136791f7c95b1f6dd99f9cc786b91bb81c3800b639b3478e561ddb7be95e5f1" +checksum = "82a72c767771b47409d2345987fda8628641887d5466101319899796367354a0" dependencies = [ "fastrand", "getrandom 0.4.1", "once_cell", - "rustix 1.1.3", + "rustix 1.1.4", "windows-sys 0.61.2", ] @@ -2803,7 +2797,7 @@ dependencies = [ "bitflags", "futures-core", "parking_lot", - "rustix 1.1.3", + "rustix 1.1.4", "signal-hook 0.3.18", "windows-sys 0.61.2", ] @@ -2923,9 +2917,9 @@ dependencies = [ [[package]] name = "toml" -version = "1.0.2+spec-1.1.0" +version = "1.0.3+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1dfefef6a142e93f346b64c160934eb13b5594b84ab378133ac6815cb2bd57f" +checksum = "c7614eaf19ad818347db24addfa201729cf2a9b6fdfd9eb0ab870fcacc606c0c" dependencies = [ "indexmap", "serde_core", @@ -3254,7 +3248,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3fabb953106c3c8eea8306e4393700d7657561cb43122571b172bbfb7c7ba1d" dependencies = [ "env_home", - "rustix 1.1.3", + "rustix 1.1.4", "winsafe", ] diff --git a/Cargo.toml b/Cargo.toml index 399cc7f0..de0d7fe4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -42,7 +42,7 @@ tree-house = { version = "0.3.0", default-features = false } nucleo = "0.5.0" slotmap = "1.1.1" thiserror = "2.0" -tempfile = "3.25.0" +tempfile = "3.26.0" bitflags = "2.11" unicode-segmentation = "1.2" ropey = { version = "1.6.1", default-features = false, features = ["simd"] } diff --git a/helix-event/Cargo.toml b/helix-event/Cargo.toml index ddf30b7d..3ad2701d 100644 --- a/helix-event/Cargo.toml +++ b/helix-event/Cargo.toml @@ -23,7 +23,7 @@ once_cell = "1.21" anyhow = "1" log = "0.4" -futures-executor = "0.3.31" +futures-executor = "0.3.32" [features] integration_test = [] -- knotmirror 0.0.1 From b22c117a2757552488fa0ff5ad63835f2a7fe449 Mon Sep 17 00:00:00 2001 From: Romeo Ahmed Date: Tue, 3 Mar 2026 23:06:33 +0800 Subject: [PATCH 2/8] fix(nix): fix ill-defined escape warning in grammars.nix (#15370) --- grammars.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/grammars.nix b/grammars.nix index 4a2de633..818dcdf8 100644 --- a/grammars.nix +++ b/grammars.nix @@ -14,7 +14,7 @@ && builtins.hasAttr "rev" grammar.source; isGitHubGrammar = grammar: lib.hasPrefix "https://github.com" grammar.source.git; toGitHubFetcher = url: let - match = builtins.match "https://github\.com/([^/]*)/([^/]*)/?" url; + match = builtins.match "https://github\\.com/([^/]*)/([^/]*)/?" url; in { owner = builtins.elemAt match 0; repo = builtins.elemAt match 1; -- knotmirror 0.0.1 From 7d1b47039db9392bfd325c4ef7d918841597ad2b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Mar 2026 14:50:31 -0500 Subject: [PATCH 3/8] build(deps): bump tokio in the rust-dependencies group (#15390) Bumps the rust-dependencies group with 1 update: [tokio](https://github.com/tokio-rs/tokio). Updates `tokio` from 1.49.0 to 1.50.0 - [Release notes](https://github.com/tokio-rs/tokio/releases) - [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.49.0...tokio-1.50.0) --- updated-dependencies: - dependency-name: tokio dependency-version: 1.50.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: rust-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- Cargo.lock | 4 ++-- helix-lsp/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b1250ee5..0a152ea4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2878,9 +2878,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.49.0" +version = "1.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86" +checksum = "27ad5e34374e03cfffefc301becb44e9dc3c17584f414349ebe29ed26661822d" dependencies = [ "bytes", "libc", diff --git a/helix-lsp/Cargo.toml b/helix-lsp/Cargo.toml index 0ad4c48d..d13ddca3 100644 --- a/helix-lsp/Cargo.toml +++ b/helix-lsp/Cargo.toml @@ -25,7 +25,7 @@ globset.workspace = true log = "0.4" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" -tokio = { version = "1.49", features = ["rt", "rt-multi-thread", "io-util", "io-std", "time", "process", "macros", "fs", "parking_lot", "sync"] } +tokio = { version = "1.50", features = ["rt", "rt-multi-thread", "io-util", "io-std", "time", "process", "macros", "fs", "parking_lot", "sync"] } tokio-stream.workspace = true parking_lot.workspace = true arc-swap = "1" -- knotmirror 0.0.1 From 3a85c7d61209bf2703190e58b2a9f0fb28592336 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Mar 2026 14:51:03 -0500 Subject: [PATCH 4/8] build(deps): bump actions/upload-artifact from 6 to 7 (#15389) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/release.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index fc67e253..3a666563 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -36,7 +36,7 @@ jobs: - name: Bundle grammars run: tar cJf grammars.tar.xz -C runtime/grammars/sources . - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 with: name: grammars path: grammars.tar.xz @@ -224,7 +224,7 @@ jobs: fi cp -r runtime dist - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 with: name: bins-${{ matrix.build }} path: dist @@ -294,7 +294,7 @@ jobs: overwrite: true - name: Upload binaries as artifact - uses: actions/upload-artifact@v6 + uses: actions/upload-artifact@v7 if: env.preview == 'true' with: name: release -- knotmirror 0.0.1 From 51ec572a27a8c1267afbc07e6c1583585c6363dc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Mar 2026 14:51:34 -0500 Subject: [PATCH 5/8] build(deps): bump actions/download-artifact from 7 to 8 (#15388) Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 7 to 8. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](https://github.com/actions/download-artifact/compare/v7...v8) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-version: '8' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3a666563..68da188f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -107,7 +107,7 @@ jobs: uses: actions/checkout@v6 - name: Download grammars - uses: actions/download-artifact@v7 + uses: actions/download-artifact@v8 - name: Move grammars under runtime if: "!startsWith(matrix.os, 'windows')" @@ -237,7 +237,7 @@ jobs: - name: Checkout sources uses: actions/checkout@v6 - - uses: actions/download-artifact@v7 + - uses: actions/download-artifact@v8 - name: Build archive shell: bash -- knotmirror 0.0.1 From dfe4c2ef348448e9e125e5e5ece4d58c8521e5a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABtan=20Lehmann?= Date: Tue, 10 Mar 2026 15:57:19 +0100 Subject: [PATCH 6/8] fix: actions-language-server requires sessionToken in the config (#15416) It crashes without it, but accepts an empty string. sessionToken can of course be set to an actual github/gitea/forgejo token to get extra features, but this is left to the user. --- languages.toml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/languages.toml b/languages.toml index 221a9c10..f9cced98 100644 --- a/languages.toml +++ b/languages.toml @@ -5,7 +5,6 @@ use-grammars = { except = [ "wren", "gemini" ] } [language-server] -actions-language-server = {command = "actions-languageserver", args = ["--stdio"]} ada-gpr-language-server = {command = "ada_language_server", args = ["--language-gpr"]} ada-language-server = { command = "ada_language_server" } als = { command = "als" } @@ -176,6 +175,13 @@ wasm-language-tools = { command = "wat_server" } sourcepawn-studio = { command = "sourcepawn-studio" } luau = { command = "luau-lsp", args = ["lsp"] } +[language-server.actions-language-server] +command = "actions-languageserver" +args = ["--stdio"] + +[language-server.actions-language-server.config.actions-language-server] +sessionToken = "" + [language-server.ansible-language-server] command = "ansible-language-server" args = ["--stdio"] -- knotmirror 0.0.1 From 6551e1b2b8df6c5eebeac7be93c92e80eea40340 Mon Sep 17 00:00:00 2001 From: Sri Senthil Balaji J <50240805+SymphonySimper@users.noreply.github.com> Date: Tue, 10 Mar 2026 20:28:50 +0530 Subject: [PATCH 7/8] feat!: rm bovex-tree-sitter and queries (#15407) --- book/src/generated/lang-support.md | 2 +- languages.toml | 4 -- runtime/queries/bovex/highlights.scm | 88 ---------------------------- runtime/queries/bovex/rainbows.scm | 11 ---- 4 files changed, 1 insertion(+), 104 deletions(-) delete mode 100644 runtime/queries/bovex/highlights.scm delete mode 100644 runtime/queries/bovex/rainbows.scm diff --git a/book/src/generated/lang-support.md b/book/src/generated/lang-support.md index bfeaf3aa..27508660 100644 --- a/book/src/generated/lang-support.md +++ b/book/src/generated/lang-support.md @@ -16,7 +16,7 @@ | bitbake | ✓ | | | | | `bitbake-language-server` | | blade | ✓ | ✓ | | | ✓ | | | blueprint | ✓ | | | | | `blueprint-compiler` | -| bovex | ✓ | | | | ✓ | | +| bovex | | | | | | | | c | ✓ | ✓ | ✓ | ✓ | ✓ | `clangd` | | c-sharp | ✓ | ✓ | | ✓ | | `roslyn-language-server`, `OmniSharp`, `csharp-ls` | | c3 | ✓ | | | | | `c3-lsp` | diff --git a/languages.toml b/languages.toml index f9cced98..a3e64833 100644 --- a/languages.toml +++ b/languages.toml @@ -5181,10 +5181,6 @@ indent = {tab-width = 2, unit = " "} '“' = '”' '‘' = '’' -[[grammar]] -name = "bovex" -source = { git = "https://github.com/mi2ebi/tree-sitter-bovex", rev = "de7657a9cc3525b9b77c6d268da09dad5b1346b0" } - [[language]] name = "haxe" scope = "source.haxe" diff --git a/runtime/queries/bovex/highlights.scm b/runtime/queries/bovex/highlights.scm deleted file mode 100644 index cc4ffe0a..00000000 --- a/runtime/queries/bovex/highlights.scm +++ /dev/null @@ -1,88 +0,0 @@ -[(code_comment) (layout_comment)] @comment.block - -(do_decl "do" @keyword.control) -(val_decl "val" @keyword.storage.type) -(fun_decl ["fun" "and"] @keyword.storage.type) -(datatype_decl ["datatype" "and"] @keyword.storage.type) -(datatype_arm "of" @keyword.storage.type) -(object_decl ["object" "of"] @keyword.storage.type) -(type_decl "type" @keyword.storage.type) -(local_decl ["local" "in" "end"] @keyword.storage.modifier) -(open_decl "open" @keyword.control) -(import_decl "import" @keyword.control.import) -(with_expr ["with" "without"] @keyword.operator) -(orelse_expr ["orelse" "otherwise"] @keyword.operator) -(andalso_expr ["andalso" "andthen"] @keyword.operator) -(fn_expr ["fn" "as"] @keyword.function) -(if_expr ["if" "then" "else"] @keyword.control.conditional) -(case_expr ["case" "of"] @keyword.control) -(fail_expr "fail" @keyword.control) -(let_expr ["let" "in" "end"] @keyword.storage.modifier) -(pat "as" @keyword.operator) - -(boolean_lit) @constant.builtin.boolean -(numeric_lit) @constant.numeric.integer -(float_lit) @constant.numeric.float -(string_lit) @string.quoted.double -(backslash_escape) @constant.character.escape - -["=" ":" ","] @punctuation.delimiter -["->" "=>"] @operator -["(" ")" "[" "]" "{" "}"] @punctuation.bracket - -[(ident) (label)] @variable.other -(type_ident) @type -(atomic_pat (ident) @variable.other) -(pat (app_pat (atomic_pat (ident) @variable.parameter))) - -(type_var) @type.parameter -(atomic_type (type_ident) @type.builtin) -[(record_type) (product_type) (app_type) (arrow_type)] @type - -(atomic_expr (ident) @variable.other) -(project_expr) @variable.member -(field_binding (label) @variable.member.private) -(field_binding (expr) @variable.other) -(record_pat (ident) @variable.member.private) - -(app_expr - (app_expr (atomic_expr (ident) @function.call)) - (atomic_expr)) -(app_expr - _ - [":=" "@" "::" "o" "==" "!=" "==." "!=." - "<" "<=" ">" ">=" "<." "<=." ">." ">=." - "+" "-" "+." "-." "*" "*." "/" "/." "div" "mod" - "shl" "shr" "andb" "xorb" "orb"] @operator - _) - -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "b"))) - (atomic_expr (layout_lit (layout_content (layout_text) @markup.bold)))) -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "it"))) - (atomic_expr (layout_lit (layout_content (layout_text) @markup.italic)))) -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "rm"))) - (atomic_expr (layout_lit))) -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#match? @function.builtin "^(tt|courier|fixedersys)$"))) - (atomic_expr (layout_lit (layout_content (layout_text) @markup.raw.inline)))) -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "title"))) - (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.1)))) -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "section"))) - (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.2)))) -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "subsection"))) - (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.3)))) -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "subsubsection"))) - (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.4)))) -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "paragraph"))) - (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.5)))) -(app_expr - (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "blockquote"))) - (atomic_expr (layout_lit (layout_content (layout_text) @markup.quote)))) diff --git a/runtime/queries/bovex/rainbows.scm b/runtime/queries/bovex/rainbows.scm deleted file mode 100644 index f00c454f..00000000 --- a/runtime/queries/bovex/rainbows.scm +++ /dev/null @@ -1,11 +0,0 @@ -["(" ")" "[" "]" "{" "}"] @rainbow.bracket -[ - (tuple_expr) - (record_expr) - (layout_lit) - (layout_antiquote) - (tuple_pat) - (record_pat) - (atomic_type) - (record_type) -] @rainbow.scope -- knotmirror 0.0.1 From 78b999f11eb67de3ed4cd9946ad71fc00b8737c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ricardo=20Fern=C3=A1ndez=20Serrata?= <76864299+Rudxain@users.noreply.github.com> Date: Tue, 10 Mar 2026 16:11:42 -0400 Subject: [PATCH 8/8] docs(loader): fix "enouch" typo (#15414) --- helix-loader/build.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/helix-loader/build.rs b/helix-loader/build.rs index 22f2fa8f..b954dfc6 100644 --- a/helix-loader/build.rs +++ b/helix-loader/build.rs @@ -45,7 +45,7 @@ fn main() { // we need to revparse because the git dir could be anywhere if you are // using detached worktrees but there is no good way to obtain an OsString // from command output so for now we can't accept non-utf8 paths here - // probably rare enouch where it doesn't matter tough we could use gitoxide + // probably rare enough where it doesn't matter tough we could use gitoxide // here but that would be make it a hard dependency and slow compile times let Some(git_dir): Option = Command::new("git") .args(["rev-parse", "--git-dir"])