Skip to content

[pigeon] add support for multiple swift outputs - #12720

Merged
auto-submit[bot] merged 3 commits into
flutter:mainfrom
tarrinneal:multi-output-swift
Sep 9, 2026
Merged

auto-submit[bot] merged 3 commits into
flutter:mainfrom
tarrinneal:multi-output-swift

Conversation

@tarrinneal

Copy link
Copy Markdown
Contributor

@flutter-dashboard flutter-dashboard Bot added the CICD Run CI/CD label Sep 2, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds support for multiple output locations in the Swift generator via swiftOut and --swift_out. It updates option parsing, internal option models, and generation adapters to handle multiple paths, and adds corresponding unit tests. The review feedback suggests improving Windows compatibility by using platform-agnostic path.join instead of path.posix.join for file operations, and replacing backslashes with forward slashes before extracting file names from paths.

@stuartmorgan-g stuartmorgan-g left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but please add a mention of this option in a readme. Probably here, as a comment above the swiftOut line in the block saying it can be an array to output to separate iOS and macOS locations if required.

Comment thread packages/pigeon/lib/src/pigeon_lib.dart Resolved
);
final content = buffer.toString();
sink.write(content);
for (final String outputPath in outputs.skip(1)) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This could use an implementation comment; I don't think it's obvious in this context that the sink was created from the first entry in outputs.

@tarrinneal tarrinneal added the autosubmit Merge PR when tree becomes green via auto submit App label Sep 9, 2026
@auto-submit
auto-submit Bot merged commit b929854 into flutter:main Sep 9, 2026
13 checks passed
victorsanni pushed a commit to victorsanni/packages that referenced this pull request Sep 9, 2026
victorsanni pushed a commit to victorsanni/packages that referenced this pull request Sep 9, 2026
mboetger pushed a commit to mboetger/flutter that referenced this pull request Sep 10, 2026
flutter/packages@36e088a...8a35b16

2026-09-10 [email protected] [material_ui]
Migrate M3 buttons template to use new gen_defaults
(flutter/packages#12744)
2026-09-09 [email protected] [cupertino_ui]Add awaitNotRequired to
Future-returning callsites without await (flutter/packages#12817)
2026-09-09 [email protected] [material_ui] Add awaitNotRequired
annotation to material_ui (flutter/packages#12622)
2026-09-09 [email protected] [image_picker] Add native tests
for photo-library access and UIImagePicker completion
(flutter/packages#12540)
2026-09-09 [email protected] [material_ui][cupertino_ui] allow page
routes to opt out of route semantics - flutter#182556 (flutter/packages#12674)
2026-09-09 [email protected] [image_picker] Add native tests
for pick results, camera access, and presentation
(flutter/packages#12539)
2026-09-09 [email protected] [cupertino_ui] Fix platform view sheet
transitions (flutter/packages#12565)
2026-09-09 [email protected]
[camera_android_camerax] Bump cameraxVersion to 1.6.2, remove
concurrent-futures workaround (flutter/packages#12698)
2026-09-09 [email protected] `[material_ui]`
replace identical checks with equality when dealing with enums
(flutter/packages#12633)
2026-09-09 [email protected] Roll Flutter from
b444e78 to 63b9518 (21 revisions) (flutter/packages#12814)
2026-09-09 [email protected]
`[cupertino_ui]` replace identical checks with equality when dealing
with enums (flutter/packages#12632)
2026-09-09 [email protected] [pigeon] add support for multiple swift
outputs (flutter/packages#12720)

If this roll has caused a breakage, revert this CL and set the roller
to dry run mode using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC [email protected] on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autosubmit Merge PR when tree becomes green via auto submit App CICD Run CI/CD p: pigeon

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[pigeon] Allow multiple output locations for generated Swift

2 participants