Skip to content

[various] Enable permissive- for Windows plugin examples #8636

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

Merged

Conversation

stuartmorgan-g
Copy link
Contributor

As the Visual Studio C++ compiler moves toward increasingly standards-compliant behavior, things it allows may become errors in the future (as seen in flutter/flutter#163296 and the issues it references). To avoid a whole class of future problems, this enables /permissive- for the example apps of all of our Windows plugins that have native code, and fixes the resulting violations.

Fixes flutter/flutter#163296

Pre-launch Checklist

EncodableValue(dialog.last_result()));
return FlutterError(
"System error", "Could not create dialog",
EncodableValue(std::in_place_type<int32_t>, dialog.last_result()));
Copy link
Contributor Author

Choose a reason for hiding this comment

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

See the fixed issue link for the explanation for this.

@@ -90,18 +90,18 @@ ErrorOr<AllTypes> TestPlugin::EchoAllTypes(const AllTypes& everything) {
ErrorOr<std::optional<AllNullableTypes>> TestPlugin::EchoAllNullableTypes(
const AllNullableTypes* everything) {
if (!everything) {
return std::nullopt;
return std::optional<AllNullableTypes>(std::nullopt);
Copy link
Contributor Author

Choose a reason for hiding this comment

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

The changes in this file made me sad. I'm assuming the standard doesn't allow the two-level chaining of implicit conversions that this was relying on (foo -> optional -> ErrorOr<optional>), so this does one of them explicitly and then relies on the implicit construction of ErrorOr.

Copy link
Contributor

Choose a reason for hiding this comment

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

oof

@stuartmorgan-g stuartmorgan-g added the autosubmit Merge PR when tree becomes green via auto submit App label Feb 14, 2025
@auto-submit auto-submit bot merged commit 8542af3 into flutter:main Feb 15, 2025
82 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Feb 17, 2025
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Feb 17, 2025
flutter/packages@625023a...8542af3

2025-02-15 stuartmorgan@google.com [various] Enable `permissive-` for
Windows plugin examples (flutter/packages#8636)
2025-02-15 stuartmorgan@google.com [pigeon] Update task queue handling
(flutter/packages#8627)
2025-02-14 goderbauer@google.com Update CODEOWNERS
(flutter/packages#8628)
2025-02-14 32538273+ValentinVignal@users.noreply.github.com
[flutter_adaptive_scaffold] Fix some memory leaks
(flutter/packages#8546)
2025-02-14 mchudy@users.noreply.github.com [camera] Fix crash when
setting activeFormat on FLTCaptureDevice (flutter/packages#8630)
2025-02-13 mchudy@users.noreply.github.com [camera] Remove remaining
OCMock usage in tests (flutter/packages#8624)
2025-02-13 10687576+bparrishMines@users.noreply.github.com
[webview_flutter_wkwebview] Change callback methods with a non-null
return type to non-null (flutter/packages#8564)
2025-02-12 737941+loic-sharma@users.noreply.github.com
[google_sign_in_ios] Adds Swift Package Manager support
(flutter/packages#7356)
2025-02-12 pawel.jakubowski@leancode.pl [camera_avfoundation] Migrate
tests to Swift - part 1 (flutter/packages#8603)
2025-02-12 43054281+camsim99@users.noreply.github.com [video_player]
Re-enables `asset videos live stream duration != 0` test for Android
(flutter/packages#8610)
2025-02-12 32538273+ValentinVignal@users.noreply.github.com
[go_router_builder] Add support for `TypedStatefulShellBranch`'s
`preload` (flutter/packages#8587)
2025-02-12 magder@google.com [local_auth_darwin] Fix test name for
clarity (flutter/packages#8499)
2025-02-11 ditman@gmail.com [ci] Manually roll master, set -Xmx4G
(flutter/packages#8586)
2025-02-11 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump the gradle-plugin group across 4 directories with 1
update (flutter/packages#8551)
2025-02-10 10687576+bparrishMines@users.noreply.github.com [pigeon] Add
errors for ProxyAPI callback methods and null instances when reading in
a ProxyApiBaseCodec (flutter/packages#8567)
2025-02-10 98884136+berhili098@users.noreply.github.com
[shared_preferences]Fix : SetState returning future
(flutter/packages#8398)
2025-02-10 stuartmorgan@google.com [various] Add deprecation notices to
READMEs (flutter/packages#8598)
2025-02-10 mchudy@users.noreply.github.com [camera] Remove OCMock from
CameraSettingsTests, CameraMethodChannelTests and
CameraSessionPresetsTests (flutter/packages#8592)
2025-02-10 mchudy@users.noreply.github.com [camera] Remove OCMock from
FLTCamPhotoCaptureTests, FLTSavePhotoDelegateTests and StreamingTests
(flutter/packages#8590)
2025-02-07 32538273+ValentinVignal@users.noreply.github.com [go_router]
Add `preload` parameter to `StatefulShellBranchData.$branch`
(flutter/packages#8545)
2025-02-07 pawel.jakubowski@leancode.pl [video_player_avfoundation] iOS
platform view support (flutter/packages#8237)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com 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
@stuartmorgan-g stuartmorgan-g deleted the windows-examples-strict-standards branch February 18, 2025 18:29
androidseb pushed a commit to androidseb/packages that referenced this pull request Jun 8, 2025
)

As the Visual Studio C++ compiler moves toward increasingly standards-compliant behavior, things it allows may become errors in the future (as seen in flutter/flutter#163296 and the issues it references). To avoid a whole class of future problems, this enables `/permissive-` for the example apps of all of our Windows plugins that have native code, and fixes the resulting violations.

Fixes flutter/flutter#163296
FMorschel pushed a commit to FMorschel/packages that referenced this pull request Jun 9, 2025
)

As the Visual Studio C++ compiler moves toward increasingly standards-compliant behavior, things it allows may become errors in the future (as seen in flutter/flutter#163296 and the issues it references). To avoid a whole class of future problems, this enables `/permissive-` for the example apps of all of our Windows plugins that have native code, and fixes the resulting violations.

Fixes flutter/flutter#163296
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[plugin:file_selector] MSVC Compilation Error with /permissive- Flag
2 participants