fix(task): prevent MISE_TASK_OUTPUT from propagating to nested tasks#6860
Merged
Conversation
Removes the export of MISE_TASK_OUTPUT environment variable from task executor. This ensures that child tasks respect their own output settings (quiet, silent, etc.) instead of inheriting the parent's output mode. Fixes #6812 where quiet=true was ignored when a task was called from another task with multiple dependencies. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull Request Overview
Fixes a bug where the MISE_TASK_OUTPUT environment variable was incorrectly propagating from parent tasks to child tasks, overriding child task output settings like quiet directives.
- Removed automatic export of
MISE_TASK_OUTPUTenvironment variable in task executor - Added test case to verify quiet tasks work correctly when called from multi-dependency parent tasks
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| src/task/task_executor.rs | Removed code that exports MISE_TASK_OUTPUT env variable to prevent interference with child task output settings |
| e2e/tasks/test_task_nested_quiet | Added test to verify quiet directive is respected in nested task calls |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Hyperfine Performance
|
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2025.11.1 x -- echo |
19.4 ± 0.3 | 18.6 | 20.3 | 1.00 |
mise x -- echo |
20.0 ± 0.4 | 19.1 | 22.1 | 1.03 ± 0.02 |
mise env
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2025.11.1 env |
19.1 ± 0.6 | 18.2 | 25.2 | 1.00 |
mise env |
19.5 ± 0.6 | 18.7 | 25.0 | 1.02 ± 0.05 |
mise hook-env
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2025.11.1 hook-env |
19.1 ± 0.3 | 18.4 | 20.5 | 1.00 |
mise hook-env |
19.6 ± 0.4 | 18.7 | 21.5 | 1.02 ± 0.02 |
mise ls
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
mise-2025.11.1 ls |
16.6 ± 0.3 | 16.0 | 18.0 | 1.00 |
mise ls |
17.0 ± 0.4 | 16.1 | 18.3 | 1.02 ± 0.03 |
xtasks/test/perf
| Command | mise-2025.11.1 | mise | Variance |
|---|---|---|---|
| install (cached) | 109ms | 109ms | +0% |
| ls (cached) | 66ms | 66ms | +0% |
| bin-paths (cached) | 72ms | 72ms | +0% |
| task-ls (cached) | 449ms | 491ms | -8% |
jdx
pushed a commit
that referenced
this pull request
Nov 3, 2025
### 📦 Registry - rename mise-haskell -> asdf-haskell by @jdx in [#6859](#6859) ### 🚀 Features - **(cli)** switch manpage generation from clap_mangen to usage by @jdx in [#6868](#6868) - **(task)** add selective stream suppression for silent configuration by @jdx in [#6851](#6851) ### 🐛 Bug Fixes - **(backend)** support platform-specific bin and bin_path configuration by @dragoscirjan in [#6853](#6853) - **(generate)** update git pre-commit script to use null separator by @azais-corentin in [#6874](#6874) - **(stubs)** lookup for aqua tools stubs fails because of tool options by @roele in [#6867](#6867) - **(task)** resolve aliases correctly for monorepo tasks by @jdx in [#6857](#6857) - **(task)** prevent MISE_TASK_OUTPUT from propagating to nested tasks by @jdx in [#6860](#6860) - **(tasks)** simplify task command display to show only first line by @jdx in [#6863](#6863) - **(tasks)** implement smart flag routing for task arguments by @jdx in [#6861](#6861) - **(xonsh)** prevent KeyError when activating in nested shells by @jdx in [#6856](#6856) - Don't set empty env var if decryption fails with age.strict=false by @iamkroot in [#6847](#6847) ### 🚜 Refactor - **(task)** split run.rs into modular task execution pipeline by @jdx in [#6852](#6852) ### New Contributors - @dragoscirjan made their first contribution in [#6853](#6853)
spdiswal
added a commit
to rainstormy/github-action-validate-commit-messages
that referenced
this pull request
Jan 5, 2026
The behaviour of the `task_output` setting has changed since mise version 2025.11.2, causing it to print the first line of the tasks' `run` commands to the console. This commit makes it quiet again. See also jdx/mise#6860.
spdiswal
added a commit
to rainstormy/github-action-validate-commit-messages
that referenced
this pull request
Jan 5, 2026
The behaviour of the `task_output` setting has changed since mise version 2025.11.2, causing it to print the first line of the tasks' `run` commands to the console. This commit makes it quiet again. See also jdx/mise#6860.
spdiswal
added a commit
to rainstormy/github-action-validate-commit-messages
that referenced
this pull request
Jan 5, 2026
The behaviour of the `task_output` setting has changed since mise version 2025.11.2, causing it to print the first line of the tasks' `run` commands to the console. This commit makes it quiet again. See also jdx/mise#6860.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #6812 by removing the export of
MISE_TASK_OUTPUTenvironment variable from the task executor. This ensures that child tasks respect their own output settings (quiet,silent, etc.) instead of inheriting the parent's output mode.Problem
Previously, when a task with multiple dependencies called a nested task:
MISE_TASK_OUTPUT=prefixwas set and exportedquiet=truesettingquietSolution
Removed the automatic export of
MISE_TASK_OUTPUTatsrc/task/task_executor.rs:180. This variable was needed for a feature that no longer exists. Each task now properly respects its own output configuration without interference from parent tasks.Changes
env.insert("MISE_TASK_OUTPUT", ...)Test Plan
mise run test:e2e tasks/)🤖 Generated with Claude Code
Note
Removes setting
MISE_TASK_OUTPUTin the task executor so nested tasks honor their own output modes; adds an e2e test to verify quiet child tasks under multi-dep parents.MISE_TASK_OUTPUTfromsrc/task/task_executor.rsto avoid overriding child task output modes.e2e/tasks/test_task_nested_quietverifying a quiet child task remains quiet when run from a parent with multiple dependencies (prefix mode).Written by Cursor Bugbot for commit d73997f. This will update automatically on new commits. Configure here.