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.
feat(v3): make DMG icon layout configurable #5864
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Uh oh!
There was an error while loading. Please reload this page.
feat(v3): make DMG icon layout configurable #5864
Changes from all commits
7927c5bb642b11File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Reject duplicate names in manual icon positions.
parseDMGIconPositionssilently overwrites an earlier entry when the same name appears twice in the;-separated list.addDMGFiles, in the same file, explicitly rejects a duplicate name with"DMG file %q conflicts with an existing entry". Apply the same fail-loud pattern here so a typo does not silently discard a position.🛠️ Proposed fix to reject duplicate position names
name, coordinates, ok := strings.Cut(item, "=") if !ok || strings.TrimSpace(name) == "" { return nil, fmt.Errorf("invalid DMG icon position %q: expected name=x,y", item) } + name = strings.TrimSpace(name) + if _, exists := positions[name]; exists { + return nil, fmt.Errorf("duplicate DMG icon position for %q", name) + } xy := strings.Split(coordinates, ",") if len(xy) != 2 { return nil, fmt.Errorf("invalid DMG icon position %q: expected name=x,y", item) } x, err := strconv.Atoi(strings.TrimSpace(xy[0])) if err != nil { return nil, fmt.Errorf("invalid DMG icon X coordinate in %q: %w", item, err) } y, err := strconv.Atoi(strings.TrimSpace(xy[1])) if err != nil { return nil, fmt.Errorf("invalid DMG icon Y coordinate in %q: %w", item, err) } - positions[strings.TrimSpace(name)] = dmg.IconPosition{X: x, Y: y} + positions[name] = dmg.IconPosition{X: x, Y: y}📝 Committable suggestion
🤖 Prompt for AI Agents
Uh oh!
There was an error while loading. Please reload this page.