Skip to content

fix(zsh): show all matches when subcommand names contain :#666

Merged
jdx merged 7 commits into
jdx:mainfrom
zeitlinger:fix-zsh-completion-colon-grouping
Jun 11, 2026
Merged

fix(zsh): show all matches when subcommand names contain :#666
jdx merged 7 commits into
jdx:mainfrom
zeitlinger:fix-zsh-completion-colon-grouping

Conversation

@zeitlinger

@zeitlinger zeitlinger commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

Summary

_describe groups matches that share a \:-escaped prefix and surfaces only one entry per group. With several subcommands sharing a colon prefix (e.g. release:create, release:docs-sync, release:pr, release:update) the menu only lists release:create and silently drops the rest. The same collapse happens when a plain lint exists alongside lint:fix.

Repro

bin "testcli"
cmd "release:create" help="Create release"
cmd "release:docs-sync" help="Refresh docs"
cmd "release:pr" help="Open release PR"
cmd "release:update" help="Update release state"
cmd "lint" help="Run lints"
cmd "lint:fix" help="Auto-fix lints"

Generate zsh completion, tab testcli <TAB> — before this PR, only release:create and lint appear. After: all six show.

Discovered via jdx/mise where users have tasks named release:create, release:docs-sync, release:pr, release:update — most of them disappeared from completion.

Fix

Build the display column ourselves from the (insert, description) pair and call compadd directly so every match is offered, with descriptions padded to the longest value for column alignment.

Test plan

  • Existing cargo test suite passes locally (cargo test --release)
  • Snapshots updated (lib/src/complete/snapshots/...)
  • New regression test test_zsh_completion_includes_all_colon_subcommands feeds a colon-heavy spec through real zsh + zpty and asserts every subcommand appears in the menu

This PR was authored with assistance from an AI coding agent.

Summary by CodeRabbit

  • Bug Fixes
    • Zsh completions now emit a stable three-column format (value, description, insert), ensuring correct display alignment, proper handling of colons and special characters, and accurate insertion behavior (including multi-word inserts and menu selection).
  • Tests
    • Updated and added zsh completion and integration tests to verify the three-column output, display padding/alignment, menu/insert semantics, and handling of colon-containing subcommands.

@coderabbitai

coderabbitai Bot commented Jun 4, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

complete-word now emits three tab-separated columns (value, description, shell-quoted insert) for zsh; the zsh completion template parses those columns, builds aligned display labels, and calls compadd; unit and integration tests are updated to the new format.

Changes

Zsh Completion Format Refactoring

Layer / File(s) Summary
Complete-word zsh output format
cli/src/cli/complete_word.rs, cli/tests/complete_word.rs
The zsh completion branch now emits three tab-separated columns (raw value, description, shell-quoted insert for compadd -Q) instead of computing a _describe-formatted value:description string. The private zsh_escape helper is removed; tests updated to assert populated and empty description columns.
Zsh script generation for 3-column format
lib/src/complete/zsh.rs, cli/assets/completions/_usage
The zsh completion script/template is refactored to split the three-column complete-word output into values, descs, and inserts, align descriptions by longest value width, optionally set compstate[insert]=menu when inserts begin with a quote, and invoke compadd directly with -d _usage_display and -a inserts instead of using _describe.
Integration test coverage and regression validation
cli/tests/shell_completions_integration.rs
Integration tests updated to expect the three-column layout, adjust zpty reads, verify the generated zsh script parses tabs and feeds pre-quoted inserts into compadd, and add regressions asserting colon-containing subcommands appear in completion outputs.

Sequence Diagram(s):

sequenceDiagram
  participant CLI
  participant ZshTpl
  participant Compadd

  CLI->>ZshTpl: emit tab-separated lines (value\tdescription\t'insert')
  ZshTpl->>ZshTpl: parse into values, descs, inserts
  ZshTpl->>ZshTpl: build _usage_display
  ZshTpl->>Compadd: call compadd -d _usage_display -a inserts
  Compadd-->>ZshTpl: present completion candidates
Loading

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs:

  • jdx/usage#670: Touches zsh completion generation and handling of insert values for colon-containing candidates; closely related to the 3-column/tab-separated insert pipeline changes.

"I hopped through tabs and lines,
three fields in every row—
value, note, and insert.
No more escape-bound thorns,
the compadd feast begins. 🐇"

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main fix: addressing a zsh completion bug where subcommand names containing colons were not showing all matches.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@greptile-apps

greptile-apps Bot commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR fixes a zsh completion bug where subcommands containing : (e.g. release:create, release:docs-sync) were collapsed to a single entry by _describe's prefix-grouping behaviour. The fix replaces _describe with a direct compadd call, and changes complete-word --shell zsh to emit three tab-separated columns (raw value, description, shell-quoted insert) instead of the former _describe-formatted two-column output.

  • The zsh template now builds the display list manually — values padded to the longest entry's width, descriptions aligned with -- — and passes it to compadd -l -d _usage_display -U -Q -S '' -a inserts.
  • The Rust side drops zsh_escape entirely and emits {c}\t{description}\t{insert}, keeping raw values and descriptions unescaped while still shell-quoting the insert column.
  • Snapshots are regenerated, tests updated to the three-column format, and two new regression tests exercise the colon-subcommand scenario end-to-end via a stubbed compadd.

Confidence Score: 5/5

Safe to merge — the change is a clean, well-scoped replacement of _describe with direct compadd, with consistent updates across the Rust emitter, the static asset, all snapshots, and both integration and unit tests.

The three-column protocol is internally consistent: complete-word emits raw value / description / shell-quoted insert, and the generated zsh template consumes all three columns correctly. The _usage_display and inserts arrays are always built in lock-step so their lengths match compadd's requirement. Colon escaping in inserts was specific to _describe's internal format and is correctly removed for compadd -a. Both regression tests exercise real zsh via stubbed compadd and confirm all colon-named subcommands are surfaced. No functional issues found.

No files require special attention.

Important Files Changed

Filename Overview
lib/src/complete/zsh.rs Core template change: replaces _describe with manual display-building + compadd. Padding arithmetic and ${(l:N:: :)} syntax are valid zsh; display/insert arrays are built in lock-step so lengths match.
cli/src/cli/complete_word.rs Drops zsh_escape and emits three-column output {c}\t{description}\t{insert} for zsh. zsh_shell_quote safely handles the insert column; colons are in the safe-char set so colon-named subcommands are passed raw and unescaped.
cli/assets/completions/_usage Static asset updated to match the new template. Consistent with generated snapshots.
cli/tests/shell_completions_integration.rs Tests updated to three-column assertions; two new regression tests stub compadd and verify all colon-named subcommands appear.
cli/tests/complete_word.rs Unit tests renamed and expected output updated to three-column format with empty description column for no-description cases.

Reviews (7): Last reviewed commit: "fix(zsh): update generated completion as..." | Re-trigger Greptile

@zeitlinger

Copy link
Copy Markdown
Contributor Author

Both flagged issues are valid. Switched the contract between complete-word --shell zsh and the generated template to three tab-separated columns (raw value, raw description, shell-quoted insert) instead of the value:description format. The template now builds the display directly from columns 1 + 2 and feeds column 3 to compadd — no \:/\(/\[ escaping needed, no prefix-strip ambiguity. Fixed in d34bb1f.

This comment was generated by an AI coding assistant.

@zeitlinger zeitlinger marked this pull request as ready for review June 5, 2026 11:55

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
lib/src/complete/zsh.rs (1)

19-26: ⚡ Quick win

Update the function rustdoc to match the new 3-column contract.

The header comment above render_completion_loop still describes the old 2-column _describe flow, which now conflicts with this implementation.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@lib/src/complete/zsh.rs` around lines 19 - 26, Update the rustdoc for
render_completion_loop to describe the current 3-column contract (raw value,
description, shell-quoted insert) instead of the old 2-column `_describe` flow:
explain that `complete-word --shell zsh` emits three tab-separated columns, that
the function builds the formatted display (using `template` and aligned `descs`)
and calls `compadd` directly so every match is offered (not collapsed), and note
the handling of escaped prefixes like `\:`; reference `render_completion_loop`,
`template`, and `compadd` in the comment so readers can locate the related
logic.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@lib/src/complete/zsh.rs`:
- Around line 19-26: Update the rustdoc for render_completion_loop to describe
the current 3-column contract (raw value, description, shell-quoted insert)
instead of the old 2-column `_describe` flow: explain that `complete-word
--shell zsh` emits three tab-separated columns, that the function builds the
formatted display (using `template` and aligned `descs`) and calls `compadd`
directly so every match is offered (not collapsed), and note the handling of
escaped prefixes like `\:`; reference `render_completion_loop`, `template`, and
`compadd` in the comment so readers can locate the related logic.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 0acab893-7a8d-4dfe-8291-864c4643a5b0

📥 Commits

Reviewing files that changed from the base of the PR and between 163804e and d34bb1f.

⛔ Files ignored due to path filters (4)
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh-2.snap is excluded by !**/*.snap
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh-3.snap is excluded by !**/*.snap
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh.snap is excluded by !**/*.snap
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh_init.snap is excluded by !**/*.snap
📒 Files selected for processing (4)
  • cli/src/cli/complete_word.rs
  • cli/tests/complete_word.rs
  • cli/tests/shell_completions_integration.rs
  • lib/src/complete/zsh.rs

@github-actions

github-actions Bot commented Jun 7, 2026

Copy link
Copy Markdown

This PR currently has failing checks. If this continues for 7 days, it will be closed automatically.

This is warning day 1 of 7.

Please update the PR when you have a chance. Feel free to reopen or create a new PR if it is closed and you'd like to continue working on it.

This comment was generated by an automated workflow.

@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown

This PR currently has failing checks. If this continues for 7 days, it will be closed automatically.

This is warning day 2 of 7.

Please update the PR when you have a chance. Feel free to reopen or create a new PR if it is closed and you'd like to continue working on it.

This comment was generated by an automated workflow.

Comment thread lib/src/complete/zsh.rs Outdated
Comment thread lib/src/complete/zsh.rs Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
lib/src/complete/zsh.rs (1)

7-13: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update the stale completion contract comment.

Line 7-Line 13 still documents the old 2-column value:description format, but this function now reads 3 tab-separated fields (value, desc, insert). Please align the comment to avoid future regressions.

Suggested diff
-/// `complete-word --shell zsh` emits two tab-separated columns per match:
-/// the display string (`value:description` for `_describe`) and the
-/// shell-quoted insert string. `usage complete-word` already filters by the
-/// typed prefix, so `-U` tells `compadd` not to re-filter (which would
-/// discard our pre-quoted matches whose literal text starts with `'`).
+/// `complete-word --shell zsh` emits three tab-separated columns per match:
+/// raw value, description, and shell-quoted insert. We build the display
+/// string from value+description and pass insert to `compadd`. `usage
+/// complete-word` already filters by the typed prefix, so `-U` tells
+/// `compadd` not to re-filter (which would discard pre-quoted matches whose
+/// literal text starts with `'`).
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@lib/src/complete/zsh.rs` around lines 7 - 13, Update the stale comment
describing the zsh completion contract to reflect that `complete-word --shell
zsh` now emits three tab-separated fields (`value`, `desc`, `insert`) instead of
the old two-column `value:description` format; keep the existing notes about why
`-U` is required (to avoid re-filtering pre-quoted inserts) and that
`compstate[insert]=menu` is used to skip longest-common-prefix insertion when
values share a leading quote, and mention that the function parses these three
fields accordingly so future maintainers know the expected order.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In `@lib/src/complete/zsh.rs`:
- Around line 7-13: Update the stale comment describing the zsh completion
contract to reflect that `complete-word --shell zsh` now emits three
tab-separated fields (`value`, `desc`, `insert`) instead of the old two-column
`value:description` format; keep the existing notes about why `-U` is required
(to avoid re-filtering pre-quoted inserts) and that `compstate[insert]=menu` is
used to skip longest-common-prefix insertion when values share a leading quote,
and mention that the function parses these three fields accordingly so future
maintainers know the expected order.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: f4e6fdfd-76b7-4c74-90b6-f1229e3f259d

📥 Commits

Reviewing files that changed from the base of the PR and between d34bb1f and 877465b.

📒 Files selected for processing (1)
  • lib/src/complete/zsh.rs

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
cli/tests/shell_completions_integration.rs (1)

728-747: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Assert the zsh subprocess exits successfully.

Line 728 and Line 1192 only check stdout. If either script prints the expected inserts and then exits non-zero, these regressions still pass and hide a broken completion path.

Proposed fix
     let stdout = String::from_utf8_lossy(&result.stdout);
     let stderr = String::from_utf8_lossy(&result.stderr);
+    assert!(
+        result.status.success(),
+        "zsh completion script exited non-zero. stdout:\n{stdout}\nstderr:\n{stderr}"
+    );

     let expected = [
         "release:create",
         "release:docs-sync",
     let stdout = String::from_utf8_lossy(&result.stdout);
     let stderr = String::from_utf8_lossy(&result.stderr);
+    assert!(
+        result.status.success(),
+        "zsh init completion script exited non-zero. stdout:\n{stdout}\nstderr:\n{stderr}"
+    );

     let expected = [
         "release:create",
         "release:docs-sync",

Also applies to: 1192-1211

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@cli/tests/shell_completions_integration.rs` around lines 728 - 747, The test
runs a zsh subprocess with Command::new(...).output() but only asserts on stdout
contents; update the test to also assert the child exited successfully by
checking result.status.success() (or !result.status.success() in the failure
message) before/with the existing subcommand asserts, and include result.status,
stdout, and stderr in the failure message to aid debugging; apply the same
change to the duplicate block around the other test (the one that mirrors lines
1192-1211) so both places verify the zsh process exit status in addition to
checking stdout for expected inserts.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In `@cli/tests/shell_completions_integration.rs`:
- Around line 728-747: The test runs a zsh subprocess with
Command::new(...).output() but only asserts on stdout contents; update the test
to also assert the child exited successfully by checking result.status.success()
(or !result.status.success() in the failure message) before/with the existing
subcommand asserts, and include result.status, stdout, and stderr in the failure
message to aid debugging; apply the same change to the duplicate block around
the other test (the one that mirrors lines 1192-1211) so both places verify the
zsh process exit status in addition to checking stdout for expected inserts.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: c29a180d-d5bf-4f12-bff6-7eb4a1526397

📥 Commits

Reviewing files that changed from the base of the PR and between 877465b and 12b0e7e.

⛔ Files ignored due to path filters (4)
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh-2.snap is excluded by !**/*.snap
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh-3.snap is excluded by !**/*.snap
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh.snap is excluded by !**/*.snap
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh_init.snap is excluded by !**/*.snap
📒 Files selected for processing (2)
  • cli/tests/shell_completions_integration.rs
  • lib/src/complete/zsh.rs
🚧 Files skipped from review as they are similar to previous changes (1)
  • lib/src/complete/zsh.rs

@greptile-apps

greptile-apps Bot commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Want your agent to iterate on Greptile's feedback? Try greploops.

@zeitlinger

Copy link
Copy Markdown
Contributor Author

@coderabbitai applied in 94d5488. Both colon-grouping tests now assert result.status.success() before checking stdout.

This comment was generated by Claude Code.

@coderabbitai

coderabbitai Bot commented Jun 8, 2026

Copy link
Copy Markdown

Tip

For best results, initiate chat on the files or code changes.

@zeitlinger: Thanks for confirming! Asserting result.status.success() before inspecting stdout is the right call — it ensures test failures surface a meaningful exit-code error rather than a confusing output-mismatch. ✅

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown

This PR currently has failing checks. If this continues for 7 days, it will be closed automatically.

This is warning day 1 of 7.

Please update the PR when you have a chance. Feel free to reopen or create a new PR if it is closed and you'd like to continue working on it.

This comment was generated by an automated workflow.

`_describe` groups matches that share a `\:`-escaped prefix and surfaces
only one entry per group. For specs that have several subcommands sharing
a colon prefix (e.g. `release:create`, `release:docs-sync`, `release:pr`,
`release:update`), the menu only lists `release:create` and silently drops
the rest. The same collapse happens when a plain `lint` exists alongside
`lint:fix`.

Build the display column ourselves from the (insert, description) pair
and call `compadd` directly so every match is offered, with descriptions
aligned to the longest value.

Regression test: feeds a colon-heavy spec through real zsh + zpty and
asserts every subcommand appears in the menu output.
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
…desc`

Greptile flagged that the previous fix used `inserts[i]` (which can be
shell-quoted, e.g. `'Alice Bob'`) as the prefix to strip from the
`zsh_escape`-d display string. For any value containing a space the
strip silently failed and the menu showed `'Alice Bob'  -- Alice Bob`.

Switch the contract between `complete-word --shell zsh` and the
generated template to emit three tab-separated columns — raw value,
raw description, shell-quoted insert. The zsh template reads the three
fields, builds the formatted display directly from value + description
(no `\:`/`\(`/`\[` escaping needed), and feeds the inserts to compadd.

Drops the now-unused `zsh_escape` helper.
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
… output

zsh's `read -r v d i` with `IFS=$'\t'` collapses consecutive empty
delimiters, so a row like `val-1\t\tval-1` (entry without a description)
parsed as two fields — the value duplicated into descs and the insert
was lost. Switch to `${(@ps:\t:)line}` which preserves empty fields
between tabs.

Also drop the `_describe` else-branch in the completion loop: it
re-introduced the colon-grouping bug this PR fixes and would mis-parse
the pre-formatted display strings. The previous reason for keeping it
was the init-path integration test; that test (and the colon-grouping
regression tests) is rewritten to drive the generated function with a
stubbed `compadd` instead of the zpty harness, which crashes zsh 5.9 on
both this host and CI with "free(): invalid pointer".
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
@zeitlinger zeitlinger force-pushed the fix-zsh-completion-colon-grouping branch from 94d5488 to 4c8c960 Compare June 9, 2026 09:01

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@cli/assets/completions/_usage`:
- Around line 30-33: The TSV parsing loop using "while IFS=$'\\t' read -r value
desc insert; do" can drop empty middle fields; replace it with zsh's split that
preserves empty columns (use the ${(`@ps`:\\t:)line} form) to produce an array
(e.g., parts) and then append parts[1], parts[2], parts[3] to values, descs, and
inserts respectively so empty descriptions are kept deterministically; update
the loop that populates values, descs, and inserts to use that split instead of
the read invocation.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 8e6c1211-325e-4a49-af55-f671beab239f

📥 Commits

Reviewing files that changed from the base of the PR and between 94d5488 and 4c8c960.

⛔ Files ignored due to path filters (4)
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh-2.snap is excluded by !**/*.snap
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh-3.snap is excluded by !**/*.snap
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh.snap is excluded by !**/*.snap
  • lib/src/complete/snapshots/usage__complete__zsh__tests__complete_zsh_init.snap is excluded by !**/*.snap
📒 Files selected for processing (5)
  • cli/assets/completions/_usage
  • cli/src/cli/complete_word.rs
  • cli/tests/complete_word.rs
  • cli/tests/shell_completions_integration.rs
  • lib/src/complete/zsh.rs
🚧 Files skipped from review as they are similar to previous changes (4)
  • cli/tests/complete_word.rs
  • lib/src/complete/zsh.rs
  • cli/src/cli/complete_word.rs
  • cli/tests/shell_completions_integration.rs

Comment thread cli/assets/completions/_usage Outdated
@github-actions

Copy link
Copy Markdown

This PR currently has failing checks. If this continues for 7 days, it will be closed automatically.

This is warning day 1 of 7.

Please update the PR when you have a chance. Feel free to reopen or create a new PR if it is closed and you'd like to continue working on it.

This comment was generated by an automated workflow.

Signed-off-by: Gregor Zeitlinger <gregor.zeitlinger@grafana.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants