Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Greptile SummaryThis PR regenerates the Podman integration from Podman 6.1.1, adding three command surfaces, numerous new options, updated help text, and
Confidence Score: 4/5The PR is not safe to merge until published enum numeric assignments are preserved, because existing compiled consumers can silently emit different Podman option values. The command additions and regenerated option routes are consistent, but the implicit enum reordering changes values embedded into consumer binaries; a previously compiled Files Needing Attention: src/ModularPipelines.Podman/Enums/PodmanComposeProgress.Generated.cs and the other reordered generated Podman enum files
|
| Filename | Overview |
|---|---|
| src/ModularPipelines.Podman/Enums/PodmanComposeProgress.Generated.cs | Reorders published enum members, changing integer assignments and silently reinterpreting constants embedded in existing consumer binaries. |
| src/ModularPipelines.Podman/PublicAPI.Unshipped.txt | Records the enum-value replacements and the broader generated API additions and removals. |
| src/ModularPipelines.Podman/Options/PodmanMachineOsUpgradeOptions.Generated.cs | Adds the typed route and options for podman machine os upgrade. |
| src/ModularPipelines.Podman/Options/PodmanVolumeRenameOptions.Generated.cs | Adds the two required operands for podman volume rename. |
| src/ModularPipelines.Podman/Services/PodmanMachine.Generated.cs | Exposes the new machine restart command and updates generated awaits to use ConfigureAwait(false). |
| src/ModularPipelines.Podman/Generated/Podman.CommandCoverage.json | Updates the baseline to Podman 6.1.1 and consistently records the three added commands. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
Consumer[Pipeline consumer] --> Options[Generated Podman options]
Options --> Service[Generated Podman service]
Service --> Renderer[Command-line renderer]
Renderer --> Podman[Podman 6.1.1]
Enum[Published enum value] --> Options
Coverage[Command coverage manifest] --> Options
Reviews (1): Last reviewed commit: "chore: Update podman CLI options" | Re-trigger Greptile
| [EnumValue("json")] | ||
| Json, |
There was a problem hiding this comment.
Existing binaries compiled against these enums embed their former integer constants. This reorder assigns those integers to different members: for example, a consumer compiled with PodmanComposeProgress.Tty embeds 1, but this version interprets 1 as Json, causing the command renderer to emit --progress=json instead of --progress=tty. The same problem affects the reordered systemd and push-format enums. Preserve the published numeric assignments while retaining the current EnumValue mappings.
Knowledge Base Used: Restore generated CLI API compatibility safeguards
There was a problem hiding this comment.
The requested compatibility preservation conflicts with the repository contract: current tool output is authoritative, including breaking generated APIs; handwritten numeric assignments or compatibility shims must not preserve earlier output. These enums reflect the shared deterministic generator ordering. The breaking numeric/API changes remain visible in the generated baseline diff. This output is incorporated in #4872 as b4ae654, where all three Podman tests and the integration Release build pass. Fresh regeneration and review remain required on #4872 before merge.
There was a problem hiding this comment.
Understood. Given the repository contract that generated CLI output and deterministic generator ordering are authoritative, the enum ordinal changes are intentional breaking API changes rather than a compatibility defect. The validation in #4872 supports the generated result, so this comment is non-actionable; fresh regeneration and review there remain the appropriate final checks.
Review: Automated podman CLI options update (#4874)This is an automated regeneration of the podman tool options against podman 6.1.1 (previously 5.8.4), produced by Scope check (per repo policy that generated options must never be hand-edited):
No prior substantive review comments exist on this PR to reconcile against (only automated CodeRabbit/Codex bot placeholders, no actionable findings from either). No actionable issues found — this looks like a clean, correctly-scoped generator output update. |
7f2288d to
4dbd41a
Compare
Summary
This PR contains automatically generated updates to podman CLI options classes.
The generator scraped the latest CLI help output from the installed tool.
Changes
Assembly-wide public API impact
Affected API families:
Assembly/common,Podman.Breaking changes are present. Consumers may need to update method arguments, option property types or nullability, enum members, and references to removed APIs.
Representative removed or changed members:
ModularPipelines.Podman.Enums.PodmanComposeProgress.Json = 3 -> ModularPipelines.Podman.Enums.PodmanComposeProgressModularPipelines.Podman.Enums.PodmanComposeProgress.Quiet = 4 -> ModularPipelines.Podman.Enums.PodmanComposeProgressModularPipelines.Podman.Enums.PodmanComposeProgress.Tty = 1 -> ModularPipelines.Podman.Enums.PodmanComposeProgressModularPipelines.Podman.Enums.PodmanContainerCreateSystemd.Always = 2 -> ModularPipelines.Podman.Enums.PodmanContainerCreateSystemdModularPipelines.Podman.Enums.PodmanContainerCreateSystemd.True = 0 -> ModularPipelines.Podman.Enums.PodmanContainerCreateSystemdRepresentative added members:
ModularPipelines.Podman.Enums.PodmanComposeProgress.Json = 1 -> ModularPipelines.Podman.Enums.PodmanComposeProgressModularPipelines.Podman.Enums.PodmanComposeProgress.Quiet = 3 -> ModularPipelines.Podman.Enums.PodmanComposeProgressModularPipelines.Podman.Enums.PodmanComposeProgress.Tty = 4 -> ModularPipelines.Podman.Enums.PodmanComposeProgressModularPipelines.Podman.Enums.PodmanContainerCreateSystemd.Always = 0 -> ModularPipelines.Podman.Enums.PodmanContainerCreateSystemdModularPipelines.Podman.Enums.PodmanContainerCreateSystemd.True = 2 -> ModularPipelines.Podman.Enums.PodmanContainerCreateSystemdCommand coverage
Command coverage report:
Verification
🤖 Generated with ModularPipelines.OptionsGenerator