feat(global): add --dry-run
& --json
to global update
#4262
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.
tries to fix #3873
This PR introduces 3 new functions:
solve_for_dry_run()
report_dry_run_environment_update()
output_json_results()
Couldn't use
install_environment()
for the--dry-run
, as it was solving correctly, but then also updated the packages (not expected in dry-run mode). So, had to extract the solving logic insolve_for_dry_run()
to simulate the updates (stops after solving, never callsinstall_pixi_environment()
). The reporting functionreport_dry_run_environment_update()
is custom for dry-run, so it says "Would update ...".output_json_results()
extracts real changes fromStateChanges/EnvironmentUpdate
, basically converts state changes to JSON output!Example screenshot:
