About mise-en-place
Your dev env, already prepped. One tool to manage languages, env vars, and tasks per project, reproducibly.
Your dev env, already prepped.
Your dev env, already prepped. One tool to manage languages, env vars, and tasks per project, reproducibly.
PyPI and pipx tools can now choose their own Python runtime, the workspace graph can read Gradle multi-module builds, and env._.file can search parent directories. When mise-versions is having an outage, GitHub lookups now retry on api.github.com, and _.source scripts no longer pick up ~/.bashrc when mise is launched from an editor.
Added
- Per-tool Python for pypi: tools. Set python to a minor series or an exact version, and mise installs that runtime and passes it to uv or pipx for that tool only. The runtime stays private to the tool and does not become your shell's default Python. mise lock records the selected Python with the tool, and mise prune keeps any runtime that a retained tool environment still uses. You can't combine python with --python/-p in uvx_args or pipx_args. Tools that don't set python behave as before. #14479 (@jdx)
[tools]
"pypi:black" = { version = "latest", python = "3.12" }
"pypi:ruff" = { version = "latest", python = "3.12.12" }
If you change a tool's python, mise installs a new environment instead of reusing the old one. If that install fails, the previous working environment is left untouched. #14504 (@jdx)
- Gradle workspace discovery. mise tasks graph and mise run --affected now find projects listed by include in settings.gradle or settings.gradle.kts, using Groovy or Kotlin syntax. Project IDs follow Gradle paths: :app becomes gradle::app, and the root project is gradle::. Literal project(":lib") references in a project's top-level dependencies {} block become graph edges. mise reads the scripts as text and never runs Gradle. If an include is computed or conditional, a projectDir isn't a plain file("...") literal, or both settings files exist, mise reports an error that points to [monorepo.projects."gradle:..."] overrides. Editing the settings script marks every Gradle project as affected. Based on a prototype by @Jarvvski. #14512 (@jdx)
- find_up for env._.file. With find_up = true, mise looks for a relative path in the current directory and in every parent, so a global config can load each project's .env files. Files load from the root down, so values in closer files win. The default is false, and the option has no effect on absolute paths. #14497 (@jdx)
# ~/.config/mise/config.toml
[env]
_.file = [
{ path = ".env", find_up = true },
{ path = ".env.local", find_up = true },
]
- Detect git-rewritten files in watch_files hooks. …
| Publisher | jdx |
|---|---|
| Version | 2026.10.12 |
| Release date | 2026-10-16 |
| License | MIT |
| Installer type | zip |
| Architecture | x64, arm64 |
| Package ID | jdx.mise |
Install mise-en-place from the command line with Windows Package Manager (winget):
winget install --id=jdx.mise -e