[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[dependabot]: Bump camerax_version from 1.5.1 to 1.5.2 in /packages/camera/camera_android_camerax/android (#10582)
Bumps camerax_version from 1.5.1 to 1.5.2.
Updates androidx.camera:camera-core from 1.5.1 to 1.5.2
Updates androidx.camera:camera-camera2 from 1.5.1 to 1.5.2
Updates androidx.camera:camera-lifecycle from 1.5.1 to 1.5.2
Updates androidx.camera:camera-video from 1.5.1 to 1.5.2
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- @dependabot rebase will rebase this PR
- @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
- @dependabot merge will merge this PR after your CI passes on it
- @dependabot squash and merge will squash and merge this PR after your CI passes on it
- @dependabot cancel merge will cancel a previously requested merge and block automerging
- @dependabot reopen will reopen this PR if it is closed
- @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
- @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[various] Update READMEs to reflect current OS support (#10470)
* Updates all READMEs to list the OS versions currently supported by the latest platform implementations.
* This is not necessarily the same as the OS version that the current version of the app-facing platform supports; for plugins where the app-facing package still supports Flutter 3.32, clients using Flutter 3.32 will get older versions of the platform implementations that are still compatible with iOS 12/Android API 21-23. However, the Flutter team no longer actively supports those versions, which is what we are choosing to reflect in READMEs. (In the future, we may want to move this information to platform implementation package READMEs, although that will make it harder to skim.)
* Updates all Android plugins that still listed a minSdkVersion of 21 to 24.
* This is a no-op for clients; all of these implementation packages already require Flutter 3.35, which can only build for 24+.
* This part is the Android version of https://github.com/flutter/packages/pull/10231, but no SDK changes were needed here. All the changes where we could make code changes were already done in https://github.com/flutter/packages/pull/9851.
Fixes https://github.com/flutter/flutter/issues/178757
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[file_selector] Migrate to UIScene (#10429)
Switches from the global window's view controller to the view controller provided by the new FlutterPluginRegistrar viewController method.
Updates minimum Flutter version to 3.38 for the new API used.
Fixes https://github.com/flutter/flutter/issues/174419
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[various] Update READMEs to reflect current OS support (#10470)
* Updates all READMEs to list the OS versions currently supported by the latest platform implementations.
* This is not necessarily the same as the OS version that the current version of the app-facing platform supports; for plugins where the app-facing package still supports Flutter 3.32, clients using Flutter 3.32 will get older versions of the platform implementations that are still compatible with iOS 12/Android API 21-23. However, the Flutter team no longer actively supports those versions, which is what we are choosing to reflect in READMEs. (In the future, we may want to move this information to platform implementation package READMEs, although that will make it harder to skim.)
* Updates all Android plugins that still listed a minSdkVersion of 21 to 24.
* This is a no-op for clients; all of these implementation packages already require Flutter 3.35, which can only build for 24+.
* This part is the Android version of https://github.com/flutter/packages/pull/10231, but no SDK changes were needed here. All the changes where we could make code changes were already done in https://github.com/flutter/packages/pull/9851.
Fixes https://github.com/flutter/flutter/issues/178757
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[go_router_builder] Require analyzer 8.2 (#10546)
go_router_builder uses a number of analyzer APIs that were experimental prior to 8.2, so having a minimum of 8.1 causes issues when doing a downgrade analysis on Flutter master.
Rather than re-add annotations that were already removed once by accident because we won't catch this in our own CI (we only downgrade on stable), this ups the minimum version of analyzer from 8.1 to 8.2. Also updates the min Flutter SDK to match the analyzer 8.2 requirement of Dart 3.9.
Fixes https://github.com/flutter/flutter/issues/179296
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[google_fonts] Replace deprecated FontWeight.index (#10544)
Replaces usage of the deprecated FontWeight.index with value where a specific value is needed, and with direct comparison against a FontWeight constant when checking for normal font weight.
Fixes https://github.com/flutter/flutter/issues/179272
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[various] Update READMEs to reflect current OS support (#10470)
* Updates all READMEs to list the OS versions currently supported by the latest platform implementations.
* This is not necessarily the same as the OS version that the current version of the app-facing platform supports; for plugins where the app-facing package still supports Flutter 3.32, clients using Flutter 3.32 will get older versions of the platform implementations that are still compatible with iOS 12/Android API 21-23. However, the Flutter team no longer actively supports those versions, which is what we are choosing to reflect in READMEs. (In the future, we may want to move this information to platform implementation package READMEs, although that will make it harder to skim.)
* Updates all Android plugins that still listed a minSdkVersion of 21 to 24.
* This is a no-op for clients; all of these implementation packages already require Flutter 3.35, which can only build for 24+.
* This part is the Android version of https://github.com/flutter/packages/pull/10231, but no SDK changes were needed here. All the changes where we could make code changes were already done in https://github.com/flutter/packages/pull/9851.
Fixes https://github.com/flutter/flutter/issues/178757
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
fix[image_picker_ios]: Prevent transcoding on video selection (#10559)
Fixes a severe performance regression where picking videos on iOS could take 10-30+ seconds. The delay was caused by PHPickerViewController defaulting to the Automatic asset representation mode, which triggered slow transcoding for formats like HEVC.
This change sets preferredAssetRepresentationMode to Current to provide the original file without conversion, significantly improving performance.
Fixes flutter/flutter#176355
## Pre-Review Checklist
**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[various] Update READMEs to reflect current OS support (#10470)
* Updates all READMEs to list the OS versions currently supported by the latest platform implementations.
* This is not necessarily the same as the OS version that the current version of the app-facing platform supports; for plugins where the app-facing package still supports Flutter 3.32, clients using Flutter 3.32 will get older versions of the platform implementations that are still compatible with iOS 12/Android API 21-23. However, the Flutter team no longer actively supports those versions, which is what we are choosing to reflect in READMEs. (In the future, we may want to move this information to platform implementation package READMEs, although that will make it harder to skim.)
* Updates all Android plugins that still listed a minSdkVersion of 21 to 24.
* This is a no-op for clients; all of these implementation packages already require Flutter 3.35, which can only build for 24+.
* This part is the Android version of https://github.com/flutter/packages/pull/10231, but no SDK changes were needed here. All the changes where we could make code changes were already done in https://github.com/flutter/packages/pull/9851.
Fixes https://github.com/flutter/flutter/issues/178757
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[interactive_media_ads] Removes internal native library Dart proxy (#10537)
ProxyApis now
* Generate a Dart PigeonOverrides class that can override constructors and static methods.
* Use a test PigeonInstanceManager that doesn't make any message calls.
This removes the manually written proxy and replaces its use in tests with PigeonOverrides.
## Pre-Review Checklist
**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[dependabot]: Bump androidx.core:core from 1.13.1 to 1.17.0 in /packages/local_auth/local_auth_android/android (#10505)
Bumps androidx.core:core from 1.13.1 to 1.17.0.
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- @dependabot rebase will rebase this PR
- @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
- @dependabot merge will merge this PR after your CI passes on it
- @dependabot squash and merge will squash and merge this PR after your CI passes on it
- @dependabot cancel merge will cancel a previously requested merge and block automerging
- @dependabot reopen will reopen this PR if it is closed
- @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
- @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[various] Update READMEs to reflect current OS support (#10470)
* Updates all READMEs to list the OS versions currently supported by the latest platform implementations.
* This is not necessarily the same as the OS version that the current version of the app-facing platform supports; for plugins where the app-facing package still supports Flutter 3.32, clients using Flutter 3.32 will get older versions of the platform implementations that are still compatible with iOS 12/Android API 21-23. However, the Flutter team no longer actively supports those versions, which is what we are choosing to reflect in READMEs. (In the future, we may want to move this information to platform implementation package READMEs, although that will make it harder to skim.)
* Updates all Android plugins that still listed a minSdkVersion of 21 to 24.
* This is a no-op for clients; all of these implementation packages already require Flutter 3.35, which can only build for 24+.
* This part is the Android version of https://github.com/flutter/packages/pull/10231, but no SDK changes were needed here. All the changes where we could make code changes were already done in https://github.com/flutter/packages/pull/9851.
Fixes https://github.com/flutter/flutter/issues/178757
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[various] Update READMEs to reflect current OS support (#10470)
* Updates all READMEs to list the OS versions currently supported by the latest platform implementations.
* This is not necessarily the same as the OS version that the current version of the app-facing platform supports; for plugins where the app-facing package still supports Flutter 3.32, clients using Flutter 3.32 will get older versions of the platform implementations that are still compatible with iOS 12/Android API 21-23. However, the Flutter team no longer actively supports those versions, which is what we are choosing to reflect in READMEs. (In the future, we may want to move this information to platform implementation package READMEs, although that will make it harder to skim.)
* Updates all Android plugins that still listed a minSdkVersion of 21 to 24.
* This is a no-op for clients; all of these implementation packages already require Flutter 3.35, which can only build for 24+.
* This part is the Android version of https://github.com/flutter/packages/pull/10231, but no SDK changes were needed here. All the changes where we could make code changes were already done in https://github.com/flutter/packages/pull/9851.
Fixes https://github.com/flutter/flutter/issues/178757
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[various] Update READMEs to reflect current OS support (#10470)
* Updates all READMEs to list the OS versions currently supported by the latest platform implementations.
* This is not necessarily the same as the OS version that the current version of the app-facing platform supports; for plugins where the app-facing package still supports Flutter 3.32, clients using Flutter 3.32 will get older versions of the platform implementations that are still compatible with iOS 12/Android API 21-23. However, the Flutter team no longer actively supports those versions, which is what we are choosing to reflect in READMEs. (In the future, we may want to move this information to platform implementation package READMEs, although that will make it harder to skim.)
* Updates all Android plugins that still listed a minSdkVersion of 21 to 24.
* This is a no-op for clients; all of these implementation packages already require Flutter 3.35, which can only build for 24+.
* This part is the Android version of https://github.com/flutter/packages/pull/10231, but no SDK changes were needed here. All the changes where we could make code changes were already done in https://github.com/flutter/packages/pull/9851.
Fixes https://github.com/flutter/flutter/issues/178757
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
!924 merge br_shared_preferences-v2.5.4_ohos into br_shared_preferences-v2.5.4_ohos
Fix: pinned dependency to br_shared_preferences-v2.5.4_ohos branch
Created-by: weixin_46147069
Commit-by: weixin_46147069
Merged-by: openharmony_ci
Description: <!-- Please remove all comments before submitting to avoid them being included in merge commit message -->
## Why are these changes being made?
The HarmonyOS branch of the shared_preference dependency is not pinned, risking pulling the wrong version.
## Changelog
fix: update to correct version number
## Test Plan
Pull the version-pinned dependency from the respective branch for testing.
## Checklist
- [x] No illegal compatibility changes are involved; if any are, they have passed the corresponding review.
- [x] No performance issues are present or have been tested and there is no performance degradation.
- [x] Compliant with the corresponding coding standards.
- [x] No document updates are required, or the documents have been updated.
- [x] In terms of testability requirements, necessary self-test cases, reasonable log recording or Trace information have been added.
- [x] No illegal file introductions exist, including images and code, etc.
- [x] The branches for the corresponding framework version that need to be merged have been confirmed.
- [x] 3.35
- [x] 3.32
- [x] 3.27
- [x] 3.22
- [x] 3.7
See merge request: openharmony-tpc/flutter_packages!924
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[url_launcher] Update for UIScene compatibility (#10549)
Replaces the code that attempted to find the topmost presented view controller as the context for presenting a Safari view controller with a call to the new registrar API to get the Flutter view's controller.
Since it's now possible for there not to be a view controller, adds an exception for that case. This should only be possible in an add-to-app scenario where someone tries to show an in-app URL from a Flutter view that is not being displayed, which is an unlikely enough scenario that I'm not going to consider this a breaking change.
Fixes https://github.com/flutter/flutter/issues/174415
## Pre-Review Checklist
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827
[webview_flutter_wkwebview] Removes internal native library Dart proxy (#10528)
Removes internal native library Dart proxy and updates test with generated PigeonOverrides. Also removes unnecessary test InstanceManagers.
## Pre-Review Checklist
**Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.
[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
[all] Omit obvious local types (#10511)
Makes the analysis options changes described in
https://github.com/flutter/flutter/issues/178827:
- Adding
[omit_obvious_local_variable_types](https://dart.dev/tools/linter-rules/omit_obvious_local_variable_types)
- Adding
[specify_nonobvious_local_variable_types](https://dart.dev/tools/linter-rules/specify_nonobvious_local_variable_types)
- Adding
[specify_nonobvious_property_types](https://dart.dev/tools/linter-rules/specify_nonobvious_property_types)
- Adding
[type_annotate_public_apis](https://dart.dev/tools/linter-rules/type_annotate_public_apis)
- Removing
[always_specify_types](https://dart.dev/tools/linter-rules/always_specify_types)
After those changes, makes the following repo-wide changes:
- dart fix --apply in all packages and in script/tool/
- dart format in all packages and in script/tool/
- update-excerpts repo tooling command to update excerpts based on the
changes to their sources
Also updates the min Flutter/Dart SDK version to 3.35/3.9 for the
following packages, to avoid analyze failures in the N-2 legacy
analysis run due to what appears to be a 3.9 change in what the Dart
analyzer continues to be an obvious local type in loop iterations:
- go_router
- google_fonts
- google_identity_services_web
- google_maps_flutter_web
- local_auth_platform_interface
- metrics_center
- multicast_dns
- pigeon
- rfw
- shared_preferences
- two_dimensional_scrollables
- vector_graphics_compiler
- mustache_template
- path_parsing
Because this is causing a significant amount of format churn already, I
took this opportunity to update the repository tooling to a min Dart SDK
of 3.8 (the N-2 stable version, so the earliest version we need the
tooling to support) to pick up the new format style, so the amount of
automated formatter change is higher in script/tool/ than in the
packages.
This does contain two manual changes (other than the repo tooling min
version):
-
https://github.com/flutter/packages/commit/d700b45c7df3a79f66dc119ad36dd2bc1e042acf
changes dynamic to Object? in a few places where dynamic caused
analyzer warnings under the new rule set.
- Updates the repo tooling to ignore .dart_tool/ when looking for
unexpected local analysis_options.yaml files, to fix issues running
the repo tool's analyze command locally based on recent changes in
dart behavior.
This does not include any CHANGELOG or version updates; even though we
normally version any changes to production code, mass automated changes
like this aren't worth the churn of releasing. This includes changes to
lib/example/main.dart and to README.md excerpts; while the style changes
will be user-visible on pub.dev, it's fine for those changes to wait for
the next release of each package.
Part of https://github.com/flutter/flutter/issues/178827