dev engine
Show or update the CLI runtime engine version
- Command version
0.0.0- Command configuration
cli:cli.engine@0.0.0
Arguments
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
--update | string | No | Requested engine version (for example: python3.12) | |
--force, --no-force | boolean | No | false | Force reinstall even when version already matches |
It also takes the global arguments.
Output
It answers with a engine.Output.
Types
engine.Output
One of the types engine.report, engine.updated, engine.updateFailed, engine.invalidRequest.
engine.report
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
statusKind | enum one of report | Yes | Which answer this is: report, the configured engine beside the Python detected, with nothing changed | |
configuredVersion | string | Yes | The engine the runtime configuration states, as python and a version; python3 where it states none | |
activeDetectedVersion | string | No | The Python found on PATH, as python<major>.<minor>.<patch>; absent where none was found. Always the same value as detectedVersion | |
detectedVersion | string | No | The Python found on PATH, as python<major>.<minor>.<patch>; absent where none was found | |
executable | string | No | Path of the Python executable that was detected; absent where none was found | |
updateApplied | boolean | Yes | Always false in a report: no update was attempted | |
autoUpdated | boolean | Yes | Always false in a report: nothing was installed |
engine.updated
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
statusKind | enum one of updated | Yes | Which answer this is: updated, the requested engine is the Python detected and is written to the runtime configuration | |
requestedVersion | string | Yes | The engine the update moved to, as python and a version in lower case: the one --update named, or the configured engine where the update was automatic | |
persistedVersion | string | No | The engine written to the runtime configuration as engine, which is the requested one | |
activeDetectedBeforeVersion | string | No | The Python found on PATH before the update, as python<major>.<minor>.<patch>; absent where none was found and from an automatic update | |
activeDetectedVersion | string | No | The Python found on PATH after the update, as python<major>.<minor>.<patch>. Always the same value as detectedVersion | |
detectedVersion | string | No | The Python found on PATH after the update, as python<major>.<minor>.<patch> | |
executable | string | No | Path of the Python executable detected after the update | |
installed | boolean | Yes | Whether this run installed and pinned Python and synced dependencies; false where the requested version was already the one detected and --force was not given | |
updateApplied | boolean | Yes | Always true in this answer, whether or not anything had to be installed | |
autoUpdated | boolean | Yes | Whether the update was automatic: no --update was given, and the Python detected was older than the configured engine | |
force | boolean | Yes | Whether --force was given; always false for an automatic update | |
updateLog | list[any] | No | [] | One entry per step the update ran, in order -- uv python install, uv python pin, uv sync --group dev -- each with its context, command, exitCode, stdout and stderr; a single update skipped entry where nothing had to be installed |
configPath | string | No | Path of the runtime configuration file the engine was written to |
engine.updateFailed
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
statusKind | enum one of update-failed | Yes | Which answer this is: update-failed, a step of the update failed (ENGINE_UPDATE_FAILED) or it finished and the requested version is still not the Python detected (PYTHON_VERSION_MISMATCH). The runtime configuration is left as it was | |
requestedVersion | string | No | The engine the update was moving to, as python and a version in lower case: the one --update named, or the configured engine where the update was automatic | |
activeDetectedBeforeVersion | string | No | The Python found on PATH before the update, as python<major>.<minor>.<patch>; absent where none was found and from an automatic update | |
activeDetectedVersion | string | No | The Python found on PATH when the update ended, as python<major>.<minor>.<patch>: the one found before it where a step failed. Absent where none was found. Always the same value as detectedVersion | |
detectedVersion | string | No | The Python found on PATH when the update ended, as python<major>.<minor>.<patch>: the one found before it where a step failed. Absent where none was found | |
executable | string | No | Path of the Python executable that was detected; absent where none was found | |
installed | boolean | No | Whether the install, pin and sync all ran to their end: false where one of them failed, true where they finished and the requested version was still not the one detected | |
updateApplied | boolean | No | true where an update was attempted; absent where an update asked for with --update ran to its end and the requested version was still not the one detected | |
autoUpdated | boolean | No | true where the update was automatic: no --update was given, and the Python detected was older than the configured engine. Absent where --update asked for it | |
force | boolean | No | Whether --force was given; false for an automatic update | |
updateLog | list[any] | No | [] | One entry per step the update ran, in order, each with its context, command, exitCode, stdout and stderr; a step that failed is the last. Empty where an update asked for with --update ran to its end and the requested version was still not the one detected |