fix: apply --silent flag to global settings to suppress output#8720
fix: apply --silent flag to global settings to suppress output#8720
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request addresses an inconsistency in the behavior of the global Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request correctly implements the logic to make the global --silent flag also imply --quiet, suppressing mise's own output in addition to task output. The change in src/config/settings.rs is clear and correct.
However, the new end-to-end test in e2e/tasks/test_task_quiet_silent_flags is not functional as written because the assertion helpers are used incorrectly. I've provided a review comment with a suggestion to fix the test and also strengthen it to more robustly verify the intended behavior.
Greptile SummaryThis PR fixes a bug where the global Key changes:
Context on correctness: For Confidence Score: 5/5
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A["mise --silent run foo"] --> B["apply_cli_settings(cli)"]
B --> C{"cli.quiet || cli.silent?"}
C -- "yes (new: silent now matches)" --> D["s.quiet = Some(true)"]
D --> E["Settings: log_level = 'error'\n(suppress mise info/warn messages)"]
B --> F{"cli.silent?"}
F -- "yes (new)" --> G["s.silent = Some(true)"]
G --> H["Settings::get().silent = true"]
H --> I["silent_bool() = true"]
I --> J["TaskOutput::Silent\n(suppress task stdout/stderr)"]
E --> K["✅ No mise messages"]
J --> L["✅ No task output"]
style D fill:#c8f7c5
style G fill:#c8f7c5
style K fill:#c8f7c5
style L fill:#c8f7c5
Reviews (3): Last reviewed commit: "[autofix.ci] apply automated fixes" | Re-trigger Greptile |
The global --silent CLI flag was never written to Settings, meaning `mise --silent run foo` would suppress task stdout/stderr but still show mise's own info/warn messages. This made --silent strictly weaker than --quiet for non-task output, opposite to what the help text promises. Now --silent also sets quiet=true in Settings (raising log level to "error"), making it a proper superset of --quiet: it suppresses both mise messages AND task output. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
fc492d1 to
db22492
Compare
### 🐛 Bug Fixes - **(env)** improve hook-env watch_files tracking and early-exits by @rpendleton in [#8716](#8716) - **(install)** create runtime symlinks in system/shared install directories by @jdx in [#8722](#8722) - apply --silent flag to global settings to suppress output by @nkakouros in [#8720](#8720) ### 📦️ Dependency Updates - ignore RUSTSEC-2026-0066 astral-tokio-tar advisory by @jdx in [#8723](#8723) ### 📦 Registry - add acli by @ggoggam in [#8721](#8721) ### New Contributors - @rpendleton made their first contribution in [#8716](#8716) - @ggoggam made their first contribution in [#8721](#8721) ## 📦 Aqua Registry Updates #### Updated Packages (1) - [`astral-sh/ty`](https://github.com/astral-sh/ty)
The global --silent CLI flag was never written to
Settings, meaningmise --silent run foowould suppress task stdout/stderr but still show mise's own info/warn messages. This made--silentstrictly weaker than--quietfor non-task output, opposite to what the help text promises.Now
--silentalso setsquiet=trueinSettings(raising log level to "error"), making it a proper superset of--quiet: it suppresses both mise messages AND task output.