Compact install step JSON (25/26) - #23365
Open
MikeMcQuaid wants to merge 1 commit into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR reduces the size of the internal JSON representation for structured install steps by omitting fields that are implied by runtime defaults, while keeping explicit values where they change behaviour. It also updates and adds specs to ensure the compact representation is produced.
Changes:
- Omit default-valued fields in the install-step DSL output (e.g.,
overwrite,match,attempts,group) while preserving non-default/behaviour-changing values. - Update the install-step runner to handle omitted
matchforterminate_process. - Extend tests to assert omission of default keys and update existing JSON expectations.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| Library/Homebrew/install_steps.rb | Adjusts step serialization to omit runtime-default fields and updates runtime handling for omitted match. |
| Library/Homebrew/test/install_steps_spec.rb | Adds coverage asserting that default runtime keys are omitted from generated steps. |
| Library/Homebrew/test/formula_spec.rb | Updates expected JSON output to reflect omission of default overwrite: false for symlink steps. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
MikeMcQuaid
force-pushed
the
install-step-25-compact-json
branch
from
July 31, 2026 08:22
5d684c8 to
3211d11
Compare
MikeMcQuaid
force-pushed
the
install-step-25-compact-json
branch
from
July 31, 2026 16:17
3211d11 to
7250315
Compare
MikeMcQuaid
force-pushed
the
install-step-25-compact-json
branch
from
July 31, 2026 16:53
7250315 to
ea81edd
Compare
p-linnane
approved these changes
Aug 2, 2026
- omit values already supplied by runner defaults - retain explicit values when they change step behaviour
MikeMcQuaid
force-pushed
the
install-step-25-compact-json
branch
from
August 3, 2026 12:21
ea81edd to
272f861
Compare
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.
Needs #23199
Reduce the internal JSON representation of structured install steps.
AI disclosure: using OpenAI Codex 5.6 Sol max with local review and testing.