Skip to content
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

[pigeon] Fully-qualify types in Equatable extension test #6946

Merged
merged 3 commits into from
Jun 18, 2024

Conversation

jmagman
Copy link
Member

@jmagman jmagman commented Jun 18, 2024

Updating to Xcode 16 exposed a new compilation error: "extension declares a conformance of imported type 'DataWithEnum' to imported protocol 'Equatable'". The Swift Warning for Retroactive Conformances of External Types proposal says:

It does mean projects building with an older Swift will not have access to [the @retroactive] syntax, so as a source compatible fallback, a client can silence this warning by fully-qualifying all types in the extension. As an example, the above conformance can also be written as

extension Foundation.Date: Swift.Identifiable {
    // ...
}

This will allow projects that need to build with multiple versions of Swift, and which have valid reason to declare such conformances, to declare them without tying their project to a newer compiler build.

So change the test to fully-qualify the types. This prevented the warning when I tried it in #6942.

Fixes flutter/flutter#150391

Pre-launch Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@@ -5,7 +5,7 @@
import Flutter
import UIKit

@UIApplicationMain
@main
Copy link
Member Author

Choose a reason for hiding this comment

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

Unrelated to the extension error. The Flutter tool updated this when I built the example.

@jmagman jmagman marked this pull request as ready for review June 18, 2024 17:21
Copy link
Contributor

@LouiseHsu LouiseHsu left a comment

Choose a reason for hiding this comment

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

lgtm but should probably wait for tarrin 🙏

@@ -1,3 +1,6 @@
## NEXT
* Fully-qualifies types in Equatable extension test.
Copy link
Contributor

Choose a reason for hiding this comment

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

should maybe add [swift] to the beginning of this!

Copy link
Contributor

Choose a reason for hiding this comment

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

and a new line after the ## NEXT line.

Copy link
Member Author

@jmagman jmagman Jun 18, 2024

Choose a reason for hiding this comment

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

Changed to "[swift] Fully-qualifies types in Equatable extension test."

Copy link
Contributor

@tarrinneal tarrinneal left a comment

Choose a reason for hiding this comment

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

lgtm with those changelog updates :)

@jmagman jmagman added the autosubmit Merge PR when tree becomes green via auto submit App label Jun 18, 2024
@auto-submit auto-submit bot merged commit cd73061 into flutter:main Jun 18, 2024
74 checks passed
@jmagman jmagman deleted the equatable-extension branch June 18, 2024 23:39
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 19, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 19, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 20, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 20, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 20, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 21, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 21, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 21, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 24, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 24, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 24, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 25, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Jun 25, 2024
flutter/packages@711b4ac...03f5f6d

2024-06-24 [email protected] [interactive_media_ads] Fix README badge image URL (flutter/packages#6979)
2024-06-24 [email protected] [multicast_dns] Optimized Socket Binding: Always bind to 0.0.0.0 for simplicity and efficiency - #79772 (flutter/packages#6700)
2024-06-24 [email protected] [flutter_adaptive_scaffold] Allows for the animation duration to be adjusted using SlotLayout.from() (flutter/packages#6510)
2024-06-22 [email protected] [in_app_purchase_storekit] Remove OCMock (flutter/packages#6862)
2024-06-22 [email protected] [google_maps_flutter] Add iOS SDK 9.x support (flutter/packages#6902)
2024-06-21 [email protected] [google_maps_flutter] Partial Android host API Pigeon conversion (flutter/packages#6967)
2024-06-21 [email protected] Revert "Migrate `camera/android` from `SurfaceTexture`->`SurfaceProducer`." (flutter/packages#6964)
2024-06-21 [email protected] [quick_actions] Update to Pigeon 20 (flutter/packages#6961)
2024-06-20 [email protected] [google_maps_flutter] Move Android inspector to Pigeon (flutter/packages#6958)
2024-06-20 [email protected] Manual roll Flutter from ccf3abe to 6c06abb (21 revisions) (flutter/packages#6954)
2024-06-20 [email protected] [many] More v1 embedding deletion that was missed in flutter/packages#6494 (flutter/packages#6923)
2024-06-20 [email protected] [google_maps_flutter] deprecate old BitmapDescriptor methods (flutter/packages#6905)
2024-06-18 [email protected] [pigeon] Fully-qualify types in Equatable extension test (flutter/packages#6946)
2024-06-18 [email protected] [flutter_markdown] fixes null check operator used on null value if onSelectionChanged isâ�¦ (flutter/packages#6883)
2024-06-17 [email protected] Roll Flutter from 5187cab to ccf3abe (6 revisions) (flutter/packages#6940)
2024-06-17 [email protected] [google_sign_in_web] README.md typo (flutter/packages#6642)
2024-06-17 49699333+dependabot[bot]@users.noreply.github.com [camera]: Bump com.google.guava:guava from 32.0.1-android to 33.2.1-android and CameraX version to 1.3.4 in /packages/camera/camera_android_camerax/android (flutter/packages#6847)
2024-06-17 49699333+dependabot[bot]@users.noreply.github.com [sign_in]: Bump com.google.guava:guava from 32.0.1-android to 33.2.1-android in /packages/google_sign_in/google_sign_in_android/android (flutter/packages#6846)
2024-06-17 49699333+dependabot[bot]@users.noreply.github.com [quick_actions]: Bump com.android.tools.build:gradle from 7.2.1 to 8.4.1 in /packages/quick_actions/quick_actions_android/android (flutter/packages#6799)
2024-06-17 49699333+dependabot[bot]@users.noreply.github.com [path_provider]: Bump androidx.annotation:annotation from 1.7.1 to 1.8.0 in /packages/path_provider/path_provider_android/android (flutter/packages#6773)
2024-06-17 49699333+dependabot[bot]@users.noreply.github.com [camera]: Bump androidx.annotation:annotation from 1.7.1 to 1.8.0 in /packages/camera/camera_android/android (flutter/packages#6766)

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 [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https:/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 p: pigeon platform-ios
Projects
None yet
3 participants