From 3c5687cc12c1b3d4e38ed1f30129f70e51fe8a7b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 14 Feb 2024 16:45:12 +0000 Subject: [PATCH 1/9] Bump github/codeql-action from 3.24.0 to 3.24.1 (#6121) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.24.0 to 3.24.1.
Changelog

Sourced from github/codeql-action's changelog.

CodeQL Action Changelog

See the releases page for the relevant changes to the CodeQL CLI and language packs.

Note that the only difference between v2 and v3 of the CodeQL Action is the node version they support, with v3 running on node 20 while we continue to release v2 to support running on node 16. For example 3.22.11 was the first v3 release and is functionally identical to 2.22.11. This approach ensures an easy way to track exactly which features are included in different versions, indicated by the minor and patch version numbers.

[UNRELEASED]

No user facing changes.

3.24.1 - 13 Feb 2024

3.24.0 - 02 Feb 2024

3.23.2 - 26 Jan 2024

3.23.1 - 17 Jan 2024

3.23.0 - 08 Jan 2024

3.22.12 - 22 Dec 2023

3.22.11 - 13 Dec 2023

2.22.10 - 12 Dec 2023

2.22.9 - 07 Dec 2023

No user facing changes.

... (truncated)

Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github/codeql-action&package-manager=github_actions&previous-version=3.24.0&new-version=3.24.1)](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`. ---
Dependabot commands and options
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 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)
--- .github/workflows/scorecards-analysis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scorecards-analysis.yml b/.github/workflows/scorecards-analysis.yml index 28023c7662a..22b29f63e70 100644 --- a/.github/workflows/scorecards-analysis.yml +++ b/.github/workflows/scorecards-analysis.yml @@ -49,6 +49,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard. - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@e8893c57a1f3a2b659b6b55564fdfdbbd2982911 # v1.0.26 + uses: github/codeql-action/upload-sarif@e675ced7a7522a761fc9c8eb26682c8b27c42b2b # v1.0.26 with: sarif_file: results.sarif From de9654f06b79ff86c57af9a7e2585ef3561c7fc8 Mon Sep 17 00:00:00 2001 From: stuartmorgan Date: Wed, 14 Feb 2024 09:33:03 -0800 Subject: [PATCH 2/9] [various] Clean up `deprecated_member_use` ignores (#6123) As of https://github.com/flutter/packages/pull/6111 `deprecated_member_use` is no longer on in the repository, so we no longer need (most; see below) of these annotations. Since we will not be annotating deprecated usage going forward, the associated comments with TODOs have also been removed, for consistency with the new process. This also opportunistically removes `deprecated_member_use_from_same_package` everywhere, since that has been disabled for a long time, so they were cruft. I have ensured that issues are filed for all of these usages, with the new `p: deprecated api` tag, per the new process for tracking deprecated APIs that is now described in the Ecosystem gardener rotation handbook. (In summary: there will be a manual weekly process of checking for new deprecations and filing them, and the [update-stable-in-this-repo process](https://github.com/flutter/flutter/wiki/Updating-Packages-repo-for-a-stable-release) will involve causing anything that is unblocked to be re-triaged.) The only annotations that are left are for cases where we have integration tests testing deprecated APIs in that package, as those are false positives; they are conceptually `deprecated_member_use_from_same_package` and aren't tech debt (or used by clients), but technically are from a different package since integration tests are in the example app. This will prevent them from showing up in the manual weekly check. --- .../test/adaptive_layout_test.dart | 6 ------ .../test/simulated_layout.dart | 3 --- packages/flutter_image/lib/network.dart | 3 --- packages/flutter_image/test/network_test.dart | 6 ------ packages/flutter_markdown/lib/src/_functions_io.dart | 3 +-- .../flutter_markdown/lib/src/_functions_web.dart | 3 +-- packages/flutter_markdown/lib/src/builder.dart | 2 -- .../test/text_scale_factor_test.dart | 7 ++----- packages/flutter_markdown/test/utils.dart | 2 -- packages/flutter_migrate/lib/src/base/common.dart | 1 - packages/flutter_migrate/test/src/common.dart | 12 +++--------- .../test/src/test_flutter_command_runner.dart | 5 +---- packages/go_router_builder/CHANGELOG.md | 4 ++++ packages/go_router_builder/lib/src/route_config.dart | 12 ------------ packages/go_router_builder/lib/src/type_helpers.dart | 3 --- packages/go_router_builder/pubspec.yaml | 2 +- .../test/types/bitmap_test.dart | 1 - .../lib/src/types/picked_file/html.dart | 2 -- .../ios_platform_images/lib/ios_platform_images.dart | 4 ++-- packages/rfw/lib/src/flutter/core_widgets.dart | 2 +- .../url_launcher/test/src/legacy_api_test.dart | 8 ++------ .../url_launcher_platform_interface/lib/link.dart | 3 --- .../test/link_test.dart | 4 +--- packages/web_benchmarks/lib/src/recorder.dart | 3 +-- .../lib/src/android_webview_api_impls.dart | 1 - 25 files changed, 20 insertions(+), 82 deletions(-) diff --git a/packages/flutter_adaptive_scaffold/test/adaptive_layout_test.dart b/packages/flutter_adaptive_scaffold/test/adaptive_layout_test.dart index 5a84f4476e4..add379423f0 100644 --- a/packages/flutter_adaptive_scaffold/test/adaptive_layout_test.dart +++ b/packages/flutter_adaptive_scaffold/test/adaptive_layout_test.dart @@ -14,9 +14,6 @@ void main() { (WidgetTester tester) async { MediaQuery slot(double width) { return MediaQuery( - // TODO(stuartmorgan): Replace with .fromView once this package requires - // Flutter 3.8+. - // ignore: deprecated_member_use data: MediaQueryData.fromWindow(WidgetsBinding.instance.window) .copyWith(size: Size(width, 800)), child: Directionality( @@ -420,9 +417,6 @@ AnimatedWidget leftInOut(Widget child, Animation animation) { MediaQuery slot(double width) { return MediaQuery( - // TODO(stuartmorgan): Replace with .fromView once this package requires - // Flutter 3.8+. - // ignore: deprecated_member_use data: MediaQueryData.fromWindow(WidgetsBinding.instance.window) .copyWith(size: Size(width, 800)), child: Directionality( diff --git a/packages/flutter_adaptive_scaffold/test/simulated_layout.dart b/packages/flutter_adaptive_scaffold/test/simulated_layout.dart index c0de35d904c..17d84e935a4 100644 --- a/packages/flutter_adaptive_scaffold/test/simulated_layout.dart +++ b/packages/flutter_adaptive_scaffold/test/simulated_layout.dart @@ -151,9 +151,6 @@ enum SimulatedLayout { MediaQuery get slot { return MediaQuery( - // TODO(stuartmorgan): Replace with .fromView once this package requires - // Flutter 3.8+. - // ignore: deprecated_member_use data: MediaQueryData.fromWindow(WidgetsBinding.instance.window) .copyWith(size: Size(_width, _height)), child: Theme( diff --git a/packages/flutter_image/lib/network.dart b/packages/flutter_image/lib/network.dart index bce44052293..620435efcdf 100644 --- a/packages/flutter_image/lib/network.dart +++ b/packages/flutter_image/lib/network.dart @@ -101,9 +101,6 @@ class NetworkImageWithRetry extends ImageProvider { @override ImageStreamCompleter loadBuffer( NetworkImageWithRetry key, - // TODO(LongCatIsLooong): migrate to use new `loadImage` API. - // https://github.com/flutter/flutter/issues/132856 - // ignore: deprecated_member_use DecoderBufferCallback decode, ) { return OneFrameImageStreamCompleter(_loadWithRetry(key, decode), diff --git a/packages/flutter_image/test/network_test.dart b/packages/flutter_image/test/network_test.dart index 6270e533940..692e6f5c1e2 100644 --- a/packages/flutter_image/test/network_test.dart +++ b/packages/flutter_image/test/network_test.dart @@ -142,9 +142,6 @@ void assertThatImageLoadingFails( ) { final ImageStreamCompleter completer = subject.loadBuffer( subject, - // TODO(LongCatIsLooong): migrate to use new `instantiateImageCodecWithSize` API. - // https://github.com/flutter/flutter/issues/132856 - // ignore: deprecated_member_use PaintingBinding.instance.instantiateImageCodecFromBuffer, ); completer.addListener(ImageStreamListener( @@ -162,9 +159,6 @@ void assertThatImageLoadingSucceeds( ) { final ImageStreamCompleter completer = subject.loadBuffer( subject, - // TODO(LongCatIsLooong): migrate to use new `instantiateImageCodecWithSize` API. - // https://github.com/flutter/flutter/issues/132856 - // ignore: deprecated_member_use PaintingBinding.instance.instantiateImageCodecFromBuffer, ); completer.addListener(ImageStreamListener( diff --git a/packages/flutter_markdown/lib/src/_functions_io.dart b/packages/flutter_markdown/lib/src/_functions_io.dart index cba2fd900b6..81fd5b8f22b 100644 --- a/packages/flutter_markdown/lib/src/_functions_io.dart +++ b/packages/flutter_markdown/lib/src/_functions_io.dart @@ -64,8 +64,7 @@ final MarkdownStyleSheet Function(BuildContext, MarkdownStyleSheetBaseTheme?) } return result.copyWith( - textScaleFactor: - MediaQuery.textScaleFactorOf(context), // ignore: deprecated_member_use + textScaleFactor: MediaQuery.textScaleFactorOf(context), ); }; diff --git a/packages/flutter_markdown/lib/src/_functions_web.dart b/packages/flutter_markdown/lib/src/_functions_web.dart index e4851ca7f6b..62692236a21 100644 --- a/packages/flutter_markdown/lib/src/_functions_web.dart +++ b/packages/flutter_markdown/lib/src/_functions_web.dart @@ -66,8 +66,7 @@ final MarkdownStyleSheet Function(BuildContext, MarkdownStyleSheetBaseTheme?) } return result.copyWith( - textScaleFactor: - MediaQuery.textScaleFactorOf(context), // ignore: deprecated_member_use + textScaleFactor: MediaQuery.textScaleFactorOf(context), ); }; diff --git a/packages/flutter_markdown/lib/src/builder.dart b/packages/flutter_markdown/lib/src/builder.dart index 0c4a6d875e8..659df8ae6fc 100644 --- a/packages/flutter_markdown/lib/src/builder.dart +++ b/packages/flutter_markdown/lib/src/builder.dart @@ -867,7 +867,6 @@ class MarkdownBuilder implements md.NodeVisitor { if (selectable) { return SelectableText.rich( text!, - // ignore: deprecated_member_use textScaleFactor: styleSheet.textScaleFactor, textAlign: textAlign ?? TextAlign.start, onTap: onTapText, @@ -876,7 +875,6 @@ class MarkdownBuilder implements md.NodeVisitor { } else { return Text.rich( text!, - // ignore: deprecated_member_use textScaleFactor: styleSheet.textScaleFactor, textAlign: textAlign ?? TextAlign.start, key: k, diff --git a/packages/flutter_markdown/test/text_scale_factor_test.dart b/packages/flutter_markdown/test/text_scale_factor_test.dart index 2f3138a94ae..3710b3e0a62 100644 --- a/packages/flutter_markdown/test/text_scale_factor_test.dart +++ b/packages/flutter_markdown/test/text_scale_factor_test.dart @@ -25,7 +25,7 @@ void defineTests() { ); final RichText richText = tester.widget(find.byType(RichText)); - expect(richText.textScaleFactor, 2.0); // ignore: deprecated_member_use + expect(richText.textScaleFactor, 2.0); }, ); @@ -36,7 +36,6 @@ void defineTests() { await tester.pumpWidget( boilerplate( const MediaQuery( - // ignore: deprecated_member_use data: MediaQueryData(textScaleFactor: 2.0), child: MarkdownBody( data: data, @@ -46,7 +45,7 @@ void defineTests() { ); final RichText richText = tester.widget(find.byType(RichText)); - expect(richText.textScaleFactor, 2.0); // ignore: deprecated_member_use + expect(richText.textScaleFactor, 2.0); }, ); @@ -57,7 +56,6 @@ void defineTests() { await tester.pumpWidget( boilerplate( const MediaQuery( - // ignore: deprecated_member_use data: MediaQueryData(textScaleFactor: 2.0), child: MarkdownBody( data: data, @@ -69,7 +67,6 @@ void defineTests() { final SelectableText selectableText = tester.widget(find.byType(SelectableText)); - // ignore: deprecated_member_use expect(selectableText.textScaleFactor, 2.0); }, ); diff --git a/packages/flutter_markdown/test/utils.dart b/packages/flutter_markdown/test/utils.dart index 5f6ec962646..1cd902c3002 100644 --- a/packages/flutter_markdown/test/utils.dart +++ b/packages/flutter_markdown/test/utils.dart @@ -169,8 +169,6 @@ void expectLinkTap(MarkdownLink? actual, MarkdownLink expected) { } String dumpRenderView() { - // TODO(goderbauer): Migrate to rootElement once v3.9.0 is the oldest supported Flutter version. - // ignore: deprecated_member_use return WidgetsBinding.instance.renderViewElement!.toStringDeep().replaceAll( RegExp(r'SliverChildListDelegate#\d+', multiLine: true), 'SliverChildListDelegate', diff --git a/packages/flutter_migrate/lib/src/base/common.dart b/packages/flutter_migrate/lib/src/base/common.dart index 70804f56dd0..a848843fc2e 100644 --- a/packages/flutter_migrate/lib/src/base/common.dart +++ b/packages/flutter_migrate/lib/src/base/common.dart @@ -150,7 +150,6 @@ Future asyncGuard( // ignore: avoid_catches_without_on_clauses, forwards to Future handleError(e, s); } - // ignore: deprecated_member_use }, onError: (Object e, StackTrace s) { handleError(e, s); }); diff --git a/packages/flutter_migrate/test/src/common.dart b/packages/flutter_migrate/test/src/common.dart index 2bc66ff6a61..6115d5ea653 100644 --- a/packages/flutter_migrate/test/src/common.dart +++ b/packages/flutter_migrate/test/src/common.dart @@ -10,18 +10,12 @@ import 'package:flutter_migrate/src/base/file_system.dart'; import 'package:flutter_migrate/src/base/io.dart'; import 'package:meta/meta.dart'; import 'package:path/path.dart' as path; // flutter_ignore: package_path_import -import 'package:test_api/test_api.dart' // ignore: deprecated_member_use - as test_package show test; -import 'package:test_api/test_api.dart' // ignore: deprecated_member_use - hide - test; +import 'package:test_api/test_api.dart' as test_package show test; +import 'package:test_api/test_api.dart' hide test; import 'test_utils.dart'; -export 'package:test_api/test_api.dart' // ignore: deprecated_member_use - hide - isInstanceOf, - test; +export 'package:test_api/test_api.dart' hide isInstanceOf, test; bool tryToDelete(FileSystemEntity fileEntity) { // This should not be necessary, but it turns out that diff --git a/packages/flutter_migrate/test/src/test_flutter_command_runner.dart b/packages/flutter_migrate/test/src/test_flutter_command_runner.dart index f07dccc3319..7a1a2bd817c 100644 --- a/packages/flutter_migrate/test/src/test_flutter_command_runner.dart +++ b/packages/flutter_migrate/test/src/test_flutter_command_runner.dart @@ -5,10 +5,7 @@ import 'package:args/command_runner.dart'; import 'package:flutter_migrate/src/base/command.dart'; -export 'package:test_api/test_api.dart' // ignore: deprecated_member_use - hide - isInstanceOf, - test; +export 'package:test_api/test_api.dart' hide isInstanceOf, test; CommandRunner createTestCommandRunner([MigrateCommand? command]) { final CommandRunner runner = TestCommandRunner(); diff --git a/packages/go_router_builder/CHANGELOG.md b/packages/go_router_builder/CHANGELOG.md index 96dbf5a3215..2bf8adbca22 100644 --- a/packages/go_router_builder/CHANGELOG.md +++ b/packages/go_router_builder/CHANGELOG.md @@ -1,3 +1,7 @@ +## NEXT + +* Updates dependencies to require `analyzer` 5.2.0 or later. + ## 2.4.1 * Fixes new lint warnings. diff --git a/packages/go_router_builder/lib/src/route_config.dart b/packages/go_router_builder/lib/src/route_config.dart index 1668f5e2740..cdfdb03e14d 100644 --- a/packages/go_router_builder/lib/src/route_config.dart +++ b/packages/go_router_builder/lib/src/route_config.dart @@ -447,9 +447,6 @@ abstract class RouteBaseConfig { ) { assert(!reader.isNull, 'reader should not be null'); final InterfaceType type = reader.objectValue.type! as InterfaceType; - // TODO(stuartmorgan): Remove this ignore once 'analyze' can be set to - // 5.2+ (when Flutter 3.4+ is on stable). - // ignore: deprecated_member_use final String typeName = type.element.name; final DartType typeParamType = type.typeArguments.single; if (typeParamType is! InterfaceType) { @@ -461,9 +458,6 @@ abstract class RouteBaseConfig { } // TODO(kevmoo): validate that this MUST be a subtype of `GoRouteData` - // TODO(stuartmorgan): Remove this ignore once 'analyze' can be set to - // 5.2+ (when Flutter 3.4+ is on stable). - // ignore: deprecated_member_use final InterfaceElement classElement = typeParamType.element; final RouteBaseConfig value; @@ -701,16 +695,10 @@ $routeDataClassName.$dataConvertionFunctionName( String _enumMapConst(InterfaceType type) { assert(type.isEnum); - // TODO(stuartmorgan): Remove this ignore once 'analyze' can be set to - // 5.2+ (when Flutter 3.4+ is on stable). - // ignore: deprecated_member_use final String enumName = type.element.name; final StringBuffer buffer = StringBuffer('const ${enumMapName(type)} = {'); - // TODO(stuartmorgan): Remove this ignore once 'analyze' can be set to - // 5.2+ (when Flutter 3.4+ is on stable). - // ignore: deprecated_member_use for (final FieldElement enumField in type.element.fields .where((FieldElement element) => element.isEnumConstant)) { buffer.writeln( diff --git a/packages/go_router_builder/lib/src/type_helpers.dart b/packages/go_router_builder/lib/src/type_helpers.dart index b17e88b2d52..a22edc8310d 100644 --- a/packages/go_router_builder/lib/src/type_helpers.dart +++ b/packages/go_router_builder/lib/src/type_helpers.dart @@ -87,9 +87,6 @@ String encodeField(PropertyAccessorElement element) { } /// Gets the name of the `const` map generated to help encode [Enum] types. -// TODO(stuartmorgan): Remove this ignore once 'analyze' can be set to -// 5.2+ (when Flutter 3.4+ is on stable). -// ignore: deprecated_member_use String enumMapName(InterfaceType type) => '_\$${type.element.name}EnumMap'; String _stateValueAccess(ParameterElement element, Set pathParameters) { diff --git a/packages/go_router_builder/pubspec.yaml b/packages/go_router_builder/pubspec.yaml index 83197ba3c69..244c4d9ebe7 100644 --- a/packages/go_router_builder/pubspec.yaml +++ b/packages/go_router_builder/pubspec.yaml @@ -10,7 +10,7 @@ environment: sdk: ">=3.0.0 <4.0.0" dependencies: - analyzer: ">=4.4.0 <7.0.0" + analyzer: ">=5.2.0 <7.0.0" async: ^2.8.0 build: ^2.0.0 build_config: ^1.0.0 diff --git a/packages/google_maps_flutter/google_maps_flutter_platform_interface/test/types/bitmap_test.dart b/packages/google_maps_flutter/google_maps_flutter_platform_interface/test/types/bitmap_test.dart index 94132f66aa5..0d10abd1852 100644 --- a/packages/google_maps_flutter/google_maps_flutter_platform_interface/test/types/bitmap_test.dart +++ b/packages/google_maps_flutter/google_maps_flutter_platform_interface/test/types/bitmap_test.dart @@ -17,7 +17,6 @@ void main() { final Object json = descriptor.toJson(); // Rehydrate a new bitmap descriptor... - // ignore: deprecated_member_use_from_same_package final BitmapDescriptor descriptorFromJson = BitmapDescriptor.fromJson(json); diff --git a/packages/image_picker/image_picker_platform_interface/lib/src/types/picked_file/html.dart b/packages/image_picker/image_picker_platform_interface/lib/src/types/picked_file/html.dart index 58dcb6ccda4..7d9761a5760 100644 --- a/packages/image_picker/image_picker_platform_interface/lib/src/types/picked_file/html.dart +++ b/packages/image_picker/image_picker_platform_interface/lib/src/types/picked_file/html.dart @@ -27,8 +27,6 @@ class PickedFile extends PickedFileBase { Future get _bytes async { if (_initBytes != null) { - // TODO(stuartmorgan): Remove this directive, https://github.com/flutter/flutter/issues/143113 - // ignore: deprecated_member_use return Future.value(UnmodifiableUint8ListView(_initBytes!)); } return http.readBytes(Uri.parse(path)); diff --git a/packages/ios_platform_images/lib/ios_platform_images.dart b/packages/ios_platform_images/lib/ios_platform_images.dart index 70894f82c8d..1ff0c784296 100644 --- a/packages/ios_platform_images/lib/ios_platform_images.dart +++ b/packages/ios_platform_images/lib/ios_platform_images.dart @@ -71,7 +71,7 @@ class _FutureMemoryImage extends ImageProvider<_FutureMemoryImage> { @override ImageStreamCompleter loadBuffer( _FutureMemoryImage key, - DecoderBufferCallback decode, // ignore: deprecated_member_use + DecoderBufferCallback decode, ) { return _FutureImageStreamCompleter( codec: _loadAsync(key, decode), @@ -81,7 +81,7 @@ class _FutureMemoryImage extends ImageProvider<_FutureMemoryImage> { Future _loadAsync( _FutureMemoryImage key, - DecoderBufferCallback decode, // ignore: deprecated_member_use + DecoderBufferCallback decode, ) { assert(key == this); return _futureBytes.then(ui.ImmutableBuffer.fromUint8List).then(decode); diff --git a/packages/rfw/lib/src/flutter/core_widgets.dart b/packages/rfw/lib/src/flutter/core_widgets.dart index 559d908b6ac..d1419d85fb5 100644 --- a/packages/rfw/lib/src/flutter/core_widgets.dart +++ b/packages/rfw/lib/src/flutter/core_widgets.dart @@ -658,7 +658,7 @@ Map get _coreWidgetsDefinitions => (['softWrap']), overflow: ArgumentDecoders.enumValue(TextOverflow.values, source, ['overflow']), - textScaleFactor: source.v(['textScaleFactor']), // ignore: deprecated_member_use + textScaleFactor: source.v(['textScaleFactor']), maxLines: source.v(['maxLines']), semanticsLabel: source.v(['semanticsLabel']), textWidthBasis: ArgumentDecoders.enumValue(TextWidthBasis.values, source, ['textWidthBasis']), diff --git a/packages/url_launcher/url_launcher/test/src/legacy_api_test.dart b/packages/url_launcher/url_launcher/test/src/legacy_api_test.dart index 14f0b57828e..8a694546397 100644 --- a/packages/url_launcher/url_launcher/test/src/legacy_api_test.dart +++ b/packages/url_launcher/url_launcher/test/src/legacy_api_test.dart @@ -238,9 +238,7 @@ void main() { _anonymize(TestWidgetsFlutterBinding.ensureInitialized())! as TestWidgetsFlutterBinding; debugDefaultTargetPlatformOverride = TargetPlatform.iOS; - // TODO(goderbauer): Migrate to binding.renderViews when that is available in the oldest supported stable. - final RenderView renderView = - binding.renderView; // ignore: deprecated_member_use + final RenderView renderView = binding.renderView; renderView.automaticSystemUiAdjustment = true; final Future launchResult = launch('http://flutter.dev/', statusBarBrightness: Brightness.dark); @@ -270,9 +268,7 @@ void main() { _anonymize(TestWidgetsFlutterBinding.ensureInitialized())! as TestWidgetsFlutterBinding; debugDefaultTargetPlatformOverride = TargetPlatform.android; - // TODO(goderbauer): Migrate to binding.renderViews when that is available in the oldest supported stable. - final RenderView renderView = - binding.renderView; // ignore: deprecated_member_use + final RenderView renderView = binding.renderView; expect(renderView.automaticSystemUiAdjustment, true); final Future launchResult = launch('http://flutter.dev/', statusBarBrightness: Brightness.dark); diff --git a/packages/url_launcher/url_launcher_platform_interface/lib/link.dart b/packages/url_launcher/url_launcher_platform_interface/lib/link.dart index a5310804ad0..10fe2dd630c 100644 --- a/packages/url_launcher/url_launcher_platform_interface/lib/link.dart +++ b/packages/url_launcher/url_launcher_platform_interface/lib/link.dart @@ -86,9 +86,6 @@ abstract class LinkInfo { // TODO(ianh): Remove the first argument. Future pushRouteNameToFramework(Object? _, String routeName) { final Completer completer = Completer(); - // TODO(chunhtai): remove this ignore and migrate the code - // https://github.com/flutter/flutter/issues/124045. - // ignore: deprecated_member_use SystemNavigator.routeInformationUpdated(location: routeName); ui.channelBuffers.push( 'flutter/navigation', diff --git a/packages/url_launcher/url_launcher_platform_interface/test/link_test.dart b/packages/url_launcher/url_launcher_platform_interface/test/link_test.dart index ac5c48f6fc1..6c613c1561d 100644 --- a/packages/url_launcher/url_launcher_platform_interface/test/link_test.dart +++ b/packages/url_launcher/url_launcher_platform_interface/test/link_test.dart @@ -83,9 +83,7 @@ class _RouteDelegate extends RouterDelegate if (_history.isEmpty) { return const Placeholder(key: Key('empty')); } - // TODO(chunhtai): remove this ignore and migrate the code - // https://github.com/flutter/flutter/issues/124045. - // ignore: unnecessary_string_interpolations, deprecated_member_use + // ignore: unnecessary_string_interpolations return Placeholder(key: Key('${_history.last.location}')); } } diff --git a/packages/web_benchmarks/lib/src/recorder.dart b/packages/web_benchmarks/lib/src/recorder.dart index c4b5ca8e3b5..49707b8c4b6 100644 --- a/packages/web_benchmarks/lib/src/recorder.dart +++ b/packages/web_benchmarks/lib/src/recorder.dart @@ -255,8 +255,7 @@ abstract class SceneBuilderRecorder extends Recorder { _profile.record('sceneBuildDuration', () { final Scene scene = sceneBuilder.build(); _profile.record('windowRenderDuration', () { - // TODO(goderbauer): Migrate to PlatformDispatcher.implicitView once v3.9.0 is the oldest supported Flutter version. - window.render(scene); // ignore: deprecated_member_use + window.render(scene); }, reported: false); }, reported: false); }, reported: true); diff --git a/packages/webview_flutter/webview_flutter_android/lib/src/android_webview_api_impls.dart b/packages/webview_flutter/webview_flutter_android/lib/src/android_webview_api_impls.dart index 854ed61bd8f..f157c01a742 100644 --- a/packages/webview_flutter/webview_flutter_android/lib/src/android_webview_api_impls.dart +++ b/packages/webview_flutter/webview_flutter_android/lib/src/android_webview_api_impls.dart @@ -720,7 +720,6 @@ class WebViewClientFlutterApiImpl extends WebViewClientFlutterApi { webViewInstance != null, 'InstanceManager does not contain a WebView with instanceId: $webViewInstanceId', ); - // ignore: deprecated_member_use_from_same_package if (instance!.onReceivedError != null) { instance.onReceivedError!( webViewInstance!, From cbb676a2b2d631a53ff96768d915bc5736b416d5 Mon Sep 17 00:00:00 2001 From: stuartmorgan Date: Wed, 14 Feb 2024 10:11:23 -0800 Subject: [PATCH 3/9] [tools] Ignore analysis options files in .symlinks (#6119) When running `analyze` in a local tree that has done builds, there can be false positives of the "unexpected analysis options" check due to the .symlinks directory making other packages' analysis options show up in the check. This avoids following links to prevent those false positives. --- script/tool/lib/src/analyze_command.dart | 2 +- script/tool/test/analyze_command_test.dart | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/script/tool/lib/src/analyze_command.dart b/script/tool/lib/src/analyze_command.dart index 15a8ef2e125..2f7d28217ab 100644 --- a/script/tool/lib/src/analyze_command.dart +++ b/script/tool/lib/src/analyze_command.dart @@ -66,7 +66,7 @@ class AnalyzeCommand extends PackageLoopingCommand { /// Checks that there are no unexpected analysis_options.yaml files. bool _hasUnexpecetdAnalysisOptions(RepositoryPackage package) { final List files = - package.directory.listSync(recursive: true); + package.directory.listSync(recursive: true, followLinks: false); for (final FileSystemEntity file in files) { if (file.basename != 'analysis_options.yaml' && file.basename != '.analysis_options') { diff --git a/script/tool/test/analyze_command_test.dart b/script/tool/test/analyze_command_test.dart index 15da8db22cf..27e92dd5e00 100644 --- a/script/tool/test/analyze_command_test.dart +++ b/script/tool/test/analyze_command_test.dart @@ -273,6 +273,23 @@ void main() { ])); }); + test('ignores analysis options in the plugin .symlinks directory', + () async { + final RepositoryPackage plugin = createFakePlugin('foo', packagesDir, + extraFiles: ['analysis_options.yaml']); + final RepositoryPackage includingPackage = + createFakePlugin('bar', packagesDir); + // Simulate the local state of having built 'bar' if it includes 'foo'. + includingPackage.directory + .childDirectory('example') + .childDirectory('ios') + .childLink('.symlinks') + .createSync(plugin.directory.path, recursive: true); + + await runCapturingPrint( + runner, ['analyze', '--custom-analysis', 'foo']); + }); + test('takes an allow config file', () async { final RepositoryPackage plugin = createFakePlugin('foo', packagesDir, extraFiles: ['analysis_options.yaml']); From b87b3ba6105eecffc7c13e4ed9a49650a4ecd99e Mon Sep 17 00:00:00 2001 From: stuartmorgan Date: Wed, 14 Feb 2024 10:23:51 -0800 Subject: [PATCH 4/9] [flutter_image] Replace deprecated APIs (#6126) Now that it's available on every supported version, switch to `loadImage` instead of the deprecated `loadBuffer`. Fixes https://github.com/flutter/flutter/issues/132856 --- packages/flutter_image/CHANGELOG.md | 4 ++++ packages/flutter_image/lib/network.dart | 4 ++-- packages/flutter_image/pubspec.yaml | 2 +- packages/flutter_image/test/network_test.dart | 8 ++++---- 4 files changed, 11 insertions(+), 7 deletions(-) diff --git a/packages/flutter_image/CHANGELOG.md b/packages/flutter_image/CHANGELOG.md index 987e7a5bb29..7e83f85aa59 100644 --- a/packages/flutter_image/CHANGELOG.md +++ b/packages/flutter_image/CHANGELOG.md @@ -1,3 +1,7 @@ +## 4.1.11 + +* Replaces deprecated loadBuffer API usage. + ## 4.1.10 * Fixes image asset link to use image within package. diff --git a/packages/flutter_image/lib/network.dart b/packages/flutter_image/lib/network.dart index 620435efcdf..8b1031cbdb7 100644 --- a/packages/flutter_image/lib/network.dart +++ b/packages/flutter_image/lib/network.dart @@ -99,9 +99,9 @@ class NetworkImageWithRetry extends ImageProvider { } @override - ImageStreamCompleter loadBuffer( + ImageStreamCompleter loadImage( NetworkImageWithRetry key, - DecoderBufferCallback decode, + ImageDecoderCallback decode, ) { return OneFrameImageStreamCompleter(_loadWithRetry(key, decode), informationCollector: () sync* { diff --git a/packages/flutter_image/pubspec.yaml b/packages/flutter_image/pubspec.yaml index 483576343d1..99c0eb78f51 100644 --- a/packages/flutter_image/pubspec.yaml +++ b/packages/flutter_image/pubspec.yaml @@ -3,7 +3,7 @@ description: > Image utilities for Flutter: improved network providers, effects, etc. repository: https://github.com/flutter/packages/tree/main/packages/flutter_image issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+flutter_image%22 -version: 4.1.10 +version: 4.1.11 environment: sdk: ">=3.0.0 <4.0.0" diff --git a/packages/flutter_image/test/network_test.dart b/packages/flutter_image/test/network_test.dart index 692e6f5c1e2..6d2a99b0cd1 100644 --- a/packages/flutter_image/test/network_test.dart +++ b/packages/flutter_image/test/network_test.dart @@ -140,9 +140,9 @@ void assertThatImageLoadingFails( NetworkImageWithRetry subject, List errorLog, ) { - final ImageStreamCompleter completer = subject.loadBuffer( + final ImageStreamCompleter completer = subject.loadImage( subject, - PaintingBinding.instance.instantiateImageCodecFromBuffer, + PaintingBinding.instance.instantiateImageCodecWithSize, ); completer.addListener(ImageStreamListener( (ImageInfo image, bool synchronousCall) {}, @@ -157,9 +157,9 @@ void assertThatImageLoadingFails( void assertThatImageLoadingSucceeds( NetworkImageWithRetry subject, ) { - final ImageStreamCompleter completer = subject.loadBuffer( + final ImageStreamCompleter completer = subject.loadImage( subject, - PaintingBinding.instance.instantiateImageCodecFromBuffer, + PaintingBinding.instance.instantiateImageCodecWithSize, ); completer.addListener(ImageStreamListener( expectAsync2((ImageInfo image, bool synchronousCall) { From db96f93c3e16b17d6c847b452d577d0d64e627a6 Mon Sep 17 00:00:00 2001 From: stuartmorgan Date: Wed, 14 Feb 2024 11:04:15 -0800 Subject: [PATCH 5/9] [flutter_migrate] Replace deprecated APIs (#6128) Updates package for `test_api` deprecation and deprecation of `runZoned`s `onError` parameter. Fixes https://github.com/flutter/flutter/issues/143447 Fixes https://github.com/flutter/flutter/issues/143455 --- packages/flutter_migrate/lib/src/base/common.dart | 4 ++-- packages/flutter_migrate/pubspec.yaml | 1 - packages/flutter_migrate/test/src/common.dart | 6 +++--- .../test/src/test_flutter_command_runner.dart | 2 +- 4 files changed, 6 insertions(+), 7 deletions(-) diff --git a/packages/flutter_migrate/lib/src/base/common.dart b/packages/flutter_migrate/lib/src/base/common.dart index a848843fc2e..6612e3a30ee 100644 --- a/packages/flutter_migrate/lib/src/base/common.dart +++ b/packages/flutter_migrate/lib/src/base/common.dart @@ -138,7 +138,7 @@ Future asyncGuard( } } - runZoned(() async { + runZonedGuarded(() async { try { final T result = await fn(); if (!completer.isCompleted) { @@ -150,7 +150,7 @@ Future asyncGuard( // ignore: avoid_catches_without_on_clauses, forwards to Future handleError(e, s); } - }, onError: (Object e, StackTrace s) { + }, (Object e, StackTrace s) { handleError(e, s); }); diff --git a/packages/flutter_migrate/pubspec.yaml b/packages/flutter_migrate/pubspec.yaml index e46995af270..222b6bdd862 100644 --- a/packages/flutter_migrate/pubspec.yaml +++ b/packages/flutter_migrate/pubspec.yaml @@ -24,4 +24,3 @@ dev_dependencies: file_testing: 3.0.0 lints: ^2.0.0 test: ^1.16.0 - test_api: ^0.4.13 diff --git a/packages/flutter_migrate/test/src/common.dart b/packages/flutter_migrate/test/src/common.dart index 6115d5ea653..a354020d47a 100644 --- a/packages/flutter_migrate/test/src/common.dart +++ b/packages/flutter_migrate/test/src/common.dart @@ -10,12 +10,12 @@ import 'package:flutter_migrate/src/base/file_system.dart'; import 'package:flutter_migrate/src/base/io.dart'; import 'package:meta/meta.dart'; import 'package:path/path.dart' as path; // flutter_ignore: package_path_import -import 'package:test_api/test_api.dart' as test_package show test; -import 'package:test_api/test_api.dart' hide test; +import 'package:test/test.dart' as test_package show test; +import 'package:test/test.dart' hide test; import 'test_utils.dart'; -export 'package:test_api/test_api.dart' hide isInstanceOf, test; +export 'package:test/test.dart' hide isInstanceOf, test; bool tryToDelete(FileSystemEntity fileEntity) { // This should not be necessary, but it turns out that diff --git a/packages/flutter_migrate/test/src/test_flutter_command_runner.dart b/packages/flutter_migrate/test/src/test_flutter_command_runner.dart index 7a1a2bd817c..9f4731dada0 100644 --- a/packages/flutter_migrate/test/src/test_flutter_command_runner.dart +++ b/packages/flutter_migrate/test/src/test_flutter_command_runner.dart @@ -5,7 +5,7 @@ import 'package:args/command_runner.dart'; import 'package:flutter_migrate/src/base/command.dart'; -export 'package:test_api/test_api.dart' hide isInstanceOf, test; +export 'package:test/test.dart' hide isInstanceOf, test; CommandRunner createTestCommandRunner([MigrateCommand? command]) { final CommandRunner runner = TestCommandRunner(); From 84a8e0a2d3b1395f74b8d7c1c4e7502104835043 Mon Sep 17 00:00:00 2001 From: engine-flutter-autoroll Date: Wed, 14 Feb 2024 14:12:21 -0500 Subject: [PATCH 6/9] Roll Flutter from eb5d0a434ef1 to a628814ebd25 (72 revisions) (#6118) Roll Flutter from eb5d0a434ef1 to a628814ebd25 (72 revisions) https://github.com/flutter/flutter/compare/eb5d0a434ef1...a628814ebd25 2024-02-13 matanlurey@users.noreply.github.com Allow deprecated members from the Dart SDK and Flutter Engine to roll in (flutter/flutter#143347) 2024-02-13 34871572+gmackall@users.noreply.github.com [Re-re-land] Enforce a policy on supported Gradle, Java, AGP, and KGP versions (flutter/flutter#143341) 2024-02-13 engine-flutter-autoroll@skia.org Roll Packages from 0a692590a885 to 9385bbb3cf46 (7 revisions) (flutter/flutter#143366) 2024-02-13 tessertaha@gmail.com Fix `InputDecorator`s `suffix` and `prefix` widgets are tappable when hidden (flutter/flutter#143308) 2024-02-13 pateltirth454@gmail.com Pass-Through `inputFormatters` in `DropdownMenu` (flutter/flutter#143250) 2024-02-13 tessertaha@gmail.com Fix `insetPadding` parameter nullability for dialogs (flutter/flutter#143305) 2024-02-12 43054281+camsim99@users.noreply.github.com Revert "Migrate integration_test plugin to Gradle Kotlin DSL (#142008)" (flutter/flutter#143329) 2024-02-12 rossllewallyn@proton.me Badge class doc typo - missing [ (flutter/flutter#143318) 2024-02-12 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Roll Flutter Engine from 1c3ecee77350 to a19077503a0c (8 revisions) (#143322)" (flutter/flutter#143338) 2024-02-12 engine-flutter-autoroll@skia.org Roll Flutter Engine from 1c3ecee77350 to a19077503a0c (8 revisions) (flutter/flutter#143322) 2024-02-12 kevmoo@users.noreply.github.com [web] Move JS interop to extension types (flutter/flutter#143274) 2024-02-12 32538273+ValentinVignal@users.noreply.github.com Add documentation for best practices for `StreamBuilder` like `FutureBuilder` (flutter/flutter#143295) 2024-02-12 engine-flutter-autoroll@skia.org Roll Flutter Engine from 8806987182a3 to 1c3ecee77350 (1 revision) (flutter/flutter#143315) 2024-02-12 nitesh.sharma@joshtechnologygroup.com Fix dual focus issue in CheckboxListTile, RadioListTile and SwitchListTile (flutter/flutter#143213) 2024-02-12 reidbaker@google.com Revert "[Re-land] Enforce a policy on supported Gradle, Java, AGP, and KGP versions" (flutter/flutter#143314) 2024-02-12 magder@google.com Update integration_test iOS FTL README script to remove targeted version (flutter/flutter#143248) 2024-02-12 scheglov@google.com Remove unnecessary 'debugLabel: null'. (flutter/flutter#143253) 2024-02-12 pateltirth454@gmail.com Introduce `iconAlignment` for the buttons with icon (flutter/flutter#137348) 2024-02-12 engine-flutter-autoroll@skia.org Roll Packages from 11152d2bc8f3 to 0a692590a885 (4 revisions) (flutter/flutter#143306) 2024-02-12 engine-flutter-autoroll@skia.org Roll Flutter Engine from 4f119619dfa8 to 8806987182a3 (1 revision) (flutter/flutter#143304) 2024-02-12 engine-flutter-autoroll@skia.org Roll Flutter Engine from b0753c0e25f8 to 4f119619dfa8 (1 revision) (flutter/flutter#143291) 2024-02-11 engine-flutter-autoroll@skia.org Roll Flutter Engine from 936495d94cc6 to b0753c0e25f8 (1 revision) (flutter/flutter#143282) 2024-02-11 engine-flutter-autoroll@skia.org Roll Flutter Engine from b06b3e0d75ad to 936495d94cc6 (1 revision) (flutter/flutter#143280) 2024-02-11 engine-flutter-autoroll@skia.org Roll Flutter Engine from 1478f4e75dd9 to b06b3e0d75ad (1 revision) (flutter/flutter#143275) 2024-02-10 31859944+LongCatIsLooong@users.noreply.github.com Fix text painter longest line resizing logic for `TextWidthBasis.longestLine` (flutter/flutter#143024) 2024-02-10 engine-flutter-autoroll@skia.org Roll Flutter Engine from e6ceb3504f50 to 1478f4e75dd9 (1 revision) (flutter/flutter#143273) 2024-02-10 zanderso@users.noreply.github.com Move Windows arm64 tests to bringup true (flutter/flutter#143272) 2024-02-10 engine-flutter-autoroll@skia.org Roll Flutter Engine from 3c5149ccde38 to e6ceb3504f50 (1 revision) (flutter/flutter#143267) 2024-02-10 engine-flutter-autoroll@skia.org Roll Flutter Engine from c587bd69985f to 3c5149ccde38 (2 revisions) (flutter/flutter#143266) 2024-02-10 engine-flutter-autoroll@skia.org Roll Flutter Engine from e08b6c899c42 to c587bd69985f (1 revision) (flutter/flutter#143265) 2024-02-10 engine-flutter-autoroll@skia.org Roll Flutter Engine from 1b8f23bbd099 to e08b6c899c42 (2 revisions) (flutter/flutter#143264) 2024-02-10 engine-flutter-autoroll@skia.org Roll Flutter Engine from 41daa5b913b9 to 1b8f23bbd099 (2 revisions) (flutter/flutter#143261) 2024-02-10 engine-flutter-autoroll@skia.org Roll Flutter Engine from f969c52f133a to 41daa5b913b9 (1 revision) (flutter/flutter#143258) 2024-02-10 engine-flutter-autoroll@skia.org Roll Flutter Engine from 6a3b0216ff5b to f969c52f133a (3 revisions) (flutter/flutter#143256) 2024-02-09 engine-flutter-autoroll@skia.org Roll Flutter Engine from 8c521eb24171 to 6a3b0216ff5b (4 revisions) (flutter/flutter#143251) 2024-02-09 polinach@google.com Upgrade leak_tracker. (flutter/flutter#143236) 2024-02-09 kris.pypen@gmail.com Fix: performance improvement on golden test comparison (flutter/flutter#142913) 2024-02-09 nathan.wilson1232@gmail.com Implementing `switch` expressions in `lib/src/material/` (flutter/flutter#142793) 2024-02-09 73116038+whiskeyPeak@users.noreply.github.com Add position data to `OnDragEnd` callback (flutter/flutter#140378) 2024-02-09 engine-flutter-autoroll@skia.org Roll Flutter Engine from 1232d598f7c4 to 8c521eb24171 (2 revisions) (flutter/flutter#143237) 2024-02-09 engine-flutter-autoroll@skia.org Roll Flutter Engine from 7a5390c6b3bd to 1232d598f7c4 (1 revision) (flutter/flutter#143235) 2024-02-09 magder@google.com Set plugin template minimum iOS version to 12.0 (flutter/flutter#143167) 2024-02-09 engine-flutter-autoroll@skia.org Roll Flutter Engine from 7a241130fcf8 to 7a5390c6b3bd (1 revision) (flutter/flutter#143231) 2024-02-09 barpac02@gmail.com Migrate integration_test plugin to Gradle Kotlin DSL (flutter/flutter#142008) 2024-02-09 engine-flutter-autoroll@skia.org Roll Flutter Engine from dcac9863a1fc to 7a241130fcf8 (1 revision) (flutter/flutter#143222) 2024-02-09 engine-flutter-autoroll@skia.org Roll Flutter Engine from 1508b11bf791 to dcac9863a1fc (1 revision) (flutter/flutter#143220) ... --- .ci/flutter_master.version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ci/flutter_master.version b/.ci/flutter_master.version index 25ad3f63e2e..51af7aebf64 100644 --- a/.ci/flutter_master.version +++ b/.ci/flutter_master.version @@ -1 +1 @@ -eb5d0a434ef13d34b532aa8c53a7be64b88963c2 +a628814ebd25bb7617aae636031ca880b9e25a57 From b4bd165079939a76e6f914b636e7710c443fff57 Mon Sep 17 00:00:00 2001 From: stuartmorgan Date: Wed, 14 Feb 2024 17:05:49 -0800 Subject: [PATCH 7/9] [flutter_adaptive_scaffold] Replace deprecated APIs (#6129) Replaces the use of deprecated `MediaQueryData.fromWindow` and `window` in tests. Fixes https://github.com/flutter/flutter/issues/143397 Part of https://github.com/flutter/flutter/issues/143399 --- .../test/adaptive_layout_test.dart | 23 +++++++++---------- .../test/breakpoint_test.dart | 12 +++++----- .../test/simulated_layout.dart | 5 ++-- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/packages/flutter_adaptive_scaffold/test/adaptive_layout_test.dart b/packages/flutter_adaptive_scaffold/test/adaptive_layout_test.dart index add379423f0..5924f0a8a74 100644 --- a/packages/flutter_adaptive_scaffold/test/adaptive_layout_test.dart +++ b/packages/flutter_adaptive_scaffold/test/adaptive_layout_test.dart @@ -14,7 +14,7 @@ void main() { (WidgetTester tester) async { MediaQuery slot(double width) { return MediaQuery( - data: MediaQueryData.fromWindow(WidgetsBinding.instance.window) + data: MediaQueryData.fromView(tester.view) .copyWith(size: Size(width, 800)), child: Directionality( textDirection: TextDirection.ltr, @@ -120,11 +120,11 @@ void main() { testWidgets( 'slot layout properly switches between items with the appropriate animation', (WidgetTester tester) async { - await tester.pumpWidget(slot(300)); + await tester.pumpWidget(slot(300, tester)); expect(begin, findsOneWidget); expect(end, findsNothing); - await tester.pumpWidget(slot(500)); + await tester.pumpWidget(slot(500, tester)); await tester.pump(); await tester.pump(const Duration(milliseconds: 500)); expect(tester.widget(slideOut('0')).position.value, @@ -146,7 +146,7 @@ void main() { testWidgets('AnimatedSwitcher does not spawn duplicate keys on rapid resize', (WidgetTester tester) async { // Populate the smaller slot layout and let the animation settle. - await tester.pumpWidget(slot(300)); + await tester.pumpWidget(slot(300, tester)); await tester.pumpAndSettle(); expect(begin, findsOneWidget); expect(end, findsNothing); @@ -157,12 +157,12 @@ void main() { for (int i = 0; i < 2; i++) { // Resize between the two slot layouts, but do not pump the animation // until completion. - await tester.pumpWidget(slot(500)); + await tester.pumpWidget(slot(500, tester)); await tester.pump(const Duration(milliseconds: 100)); expect(begin, findsOneWidget); expect(end, findsOneWidget); - await tester.pumpWidget(slot(300)); + await tester.pumpWidget(slot(300, tester)); await tester.pump(const Duration(milliseconds: 100)); expect(begin, findsOneWidget); expect(end, findsOneWidget); @@ -171,18 +171,18 @@ void main() { testWidgets('slot layout can tolerate rapid changes in breakpoints', (WidgetTester tester) async { - await tester.pumpWidget(slot(300)); + await tester.pumpWidget(slot(300, tester)); expect(begin, findsOneWidget); expect(end, findsNothing); - await tester.pumpWidget(slot(500)); + await tester.pumpWidget(slot(500, tester)); await tester.pump(); await tester.pump(const Duration(milliseconds: 100)); expect(tester.widget(slideOut('0')).position.value, offsetMoreOrLessEquals(const Offset(-0.1, 0), epsilon: 0.05)); expect(tester.widget(slideIn('400')).position.value, offsetMoreOrLessEquals(const Offset(-0.9, 0), epsilon: 0.05)); - await tester.pumpWidget(slot(300)); + await tester.pumpWidget(slot(300, tester)); await tester.pumpAndSettle(); expect(begin, findsOneWidget); expect(end, findsNothing); @@ -415,10 +415,9 @@ AnimatedWidget leftInOut(Widget child, Animation animation) { ); } -MediaQuery slot(double width) { +MediaQuery slot(double width, WidgetTester tester) { return MediaQuery( - data: MediaQueryData.fromWindow(WidgetsBinding.instance.window) - .copyWith(size: Size(width, 800)), + data: MediaQueryData.fromView(tester.view).copyWith(size: Size(width, 800)), child: Directionality( textDirection: TextDirection.ltr, child: SlotLayout( diff --git a/packages/flutter_adaptive_scaffold/test/breakpoint_test.dart b/packages/flutter_adaptive_scaffold/test/breakpoint_test.dart index 9eada7dc9f2..6ecb20a2701 100644 --- a/packages/flutter_adaptive_scaffold/test/breakpoint_test.dart +++ b/packages/flutter_adaptive_scaffold/test/breakpoint_test.dart @@ -12,19 +12,19 @@ void main() { (WidgetTester tester) async { // Pump a small layout on a mobile device. The small slot // should give the mobile slot layout, not the desktop layout. - await tester.pumpWidget(SimulatedLayout.small.slot); + await tester.pumpWidget(SimulatedLayout.small.slot(tester)); await tester.pumpAndSettle(); expect(find.byKey(const Key('Breakpoints.smallMobile')), findsOneWidget); expect(find.byKey(const Key('Breakpoints.smallDesktop')), findsNothing); // Do the same with a medium layout on a mobile - await tester.pumpWidget(SimulatedLayout.medium.slot); + await tester.pumpWidget(SimulatedLayout.medium.slot(tester)); await tester.pumpAndSettle(); expect(find.byKey(const Key('Breakpoints.mediumMobile')), findsOneWidget); expect(find.byKey(const Key('Breakpoints.mediumDesktop')), findsNothing); // Large layout on mobile - await tester.pumpWidget(SimulatedLayout.large.slot); + await tester.pumpWidget(SimulatedLayout.large.slot(tester)); await tester.pumpAndSettle(); expect(find.byKey(const Key('Breakpoints.largeMobile')), findsOneWidget); expect(find.byKey(const Key('Breakpoints.largeDesktop')), findsNothing); @@ -34,19 +34,19 @@ void main() { (WidgetTester tester) async { // Pump a small layout on a desktop device. The small slot // should give the mobile slot layout, not the desktop layout. - await tester.pumpWidget(SimulatedLayout.small.slot); + await tester.pumpWidget(SimulatedLayout.small.slot(tester)); await tester.pumpAndSettle(); expect(find.byKey(const Key('Breakpoints.smallDesktop')), findsOneWidget); expect(find.byKey(const Key('Breakpoints.smallMobile')), findsNothing); // Do the same with a medium layout on a desktop - await tester.pumpWidget(SimulatedLayout.medium.slot); + await tester.pumpWidget(SimulatedLayout.medium.slot(tester)); await tester.pumpAndSettle(); expect(find.byKey(const Key('Breakpoints.mediumDesktop')), findsOneWidget); expect(find.byKey(const Key('Breakpoints.mediumMobile')), findsNothing); // Large layout on desktop - await tester.pumpWidget(SimulatedLayout.large.slot); + await tester.pumpWidget(SimulatedLayout.large.slot(tester)); await tester.pumpAndSettle(); expect(find.byKey(const Key('Breakpoints.largeDesktop')), findsOneWidget); expect(find.byKey(const Key('Breakpoints.largeMobile')), findsNothing); diff --git a/packages/flutter_adaptive_scaffold/test/simulated_layout.dart b/packages/flutter_adaptive_scaffold/test/simulated_layout.dart index 17d84e935a4..706883d997d 100644 --- a/packages/flutter_adaptive_scaffold/test/simulated_layout.dart +++ b/packages/flutter_adaptive_scaffold/test/simulated_layout.dart @@ -4,6 +4,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_adaptive_scaffold/flutter_adaptive_scaffold.dart'; +import 'package:flutter_test/flutter_test.dart'; import 'test_breakpoints.dart'; @@ -149,9 +150,9 @@ enum SimulatedLayout { ); } - MediaQuery get slot { + MediaQuery slot(WidgetTester tester) { return MediaQuery( - data: MediaQueryData.fromWindow(WidgetsBinding.instance.window) + data: MediaQueryData.fromView(tester.view) .copyWith(size: Size(_width, _height)), child: Theme( data: ThemeData(), From 4035b62c086fd427ecfee05100dd97b7f76419ca Mon Sep 17 00:00:00 2001 From: stuartmorgan Date: Wed, 14 Feb 2024 17:05:51 -0800 Subject: [PATCH 8/9] [rfw] Replace deprecated `textScaleFactor` (#6130) Replaces the deprecated `textScaleFactor` with a linear `TextScaler`. Updates the minimum deployment version to 3.16 where the new API was added. Part of https://github.com/flutter/flutter/issues/143400 --- packages/rfw/CHANGELOG.md | 4 ++++ packages/rfw/example/hello/pubspec.yaml | 4 ++-- packages/rfw/example/local/pubspec.yaml | 4 ++-- packages/rfw/example/remote/pubspec.yaml | 4 ++-- packages/rfw/example/wasm/pubspec.yaml | 4 ++-- packages/rfw/lib/src/flutter/core_widgets.dart | 3 ++- packages/rfw/pubspec.yaml | 6 +++--- packages/rfw/test_coverage/pubspec.yaml | 2 +- 8 files changed, 18 insertions(+), 13 deletions(-) diff --git a/packages/rfw/CHANGELOG.md b/packages/rfw/CHANGELOG.md index 50ac2718594..8db008e12be 100644 --- a/packages/rfw/CHANGELOG.md +++ b/packages/rfw/CHANGELOG.md @@ -1,3 +1,7 @@ +## 1.0.23 + +* Replaces usage of deprecated Flutter APIs. + ## 1.0.22 * Adds more testing to restore coverage to 100%. diff --git a/packages/rfw/example/hello/pubspec.yaml b/packages/rfw/example/hello/pubspec.yaml index 11158ccc2ce..8ee7d4e425e 100644 --- a/packages/rfw/example/hello/pubspec.yaml +++ b/packages/rfw/example/hello/pubspec.yaml @@ -4,8 +4,8 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + sdk: ^3.2.0 + flutter: ">=3.16.0" dependencies: flutter: diff --git a/packages/rfw/example/local/pubspec.yaml b/packages/rfw/example/local/pubspec.yaml index fba0b95d798..3c2e0d455fe 100644 --- a/packages/rfw/example/local/pubspec.yaml +++ b/packages/rfw/example/local/pubspec.yaml @@ -4,8 +4,8 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + sdk: ^3.2.0 + flutter: ">=3.16.0" dependencies: flutter: diff --git a/packages/rfw/example/remote/pubspec.yaml b/packages/rfw/example/remote/pubspec.yaml index a801d881cc8..7da73e4d4a5 100644 --- a/packages/rfw/example/remote/pubspec.yaml +++ b/packages/rfw/example/remote/pubspec.yaml @@ -4,8 +4,8 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + sdk: ^3.2.0 + flutter: ">=3.16.0" dependencies: flutter: diff --git a/packages/rfw/example/wasm/pubspec.yaml b/packages/rfw/example/wasm/pubspec.yaml index a6d37e387d0..07a4c0a4b3e 100644 --- a/packages/rfw/example/wasm/pubspec.yaml +++ b/packages/rfw/example/wasm/pubspec.yaml @@ -4,8 +4,8 @@ publish_to: none # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + sdk: ^3.2.0 + flutter: ">=3.16.0" dependencies: flutter: diff --git a/packages/rfw/lib/src/flutter/core_widgets.dart b/packages/rfw/lib/src/flutter/core_widgets.dart index d1419d85fb5..379edfe5aa6 100644 --- a/packages/rfw/lib/src/flutter/core_widgets.dart +++ b/packages/rfw/lib/src/flutter/core_widgets.dart @@ -649,6 +649,7 @@ Map get _coreWidgetsDefinitions => (['textScaleFactor']); return Text( text, style: ArgumentDecoders.textStyle(source, ['style']), @@ -658,7 +659,7 @@ Map get _coreWidgetsDefinitions => (['softWrap']), overflow: ArgumentDecoders.enumValue(TextOverflow.values, source, ['overflow']), - textScaleFactor: source.v(['textScaleFactor']), + textScaler: textScaleFactor == null ? null : TextScaler.linear(textScaleFactor), maxLines: source.v(['maxLines']), semanticsLabel: source.v(['semanticsLabel']), textWidthBasis: ArgumentDecoders.enumValue(TextWidthBasis.values, source, ['textWidthBasis']), diff --git a/packages/rfw/pubspec.yaml b/packages/rfw/pubspec.yaml index 756d32ae05b..9dd0ddc38c9 100644 --- a/packages/rfw/pubspec.yaml +++ b/packages/rfw/pubspec.yaml @@ -2,11 +2,11 @@ name: rfw description: "Remote Flutter widgets: a library for rendering declarative widget description files at runtime." repository: https://github.com/flutter/packages/tree/main/packages/rfw issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+rfw%22 -version: 1.0.22 +version: 1.0.23 environment: - sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + sdk: ^3.2.0 + flutter: ">=3.16.0" dependencies: flutter: diff --git a/packages/rfw/test_coverage/pubspec.yaml b/packages/rfw/test_coverage/pubspec.yaml index e69bf654234..6c7624364f7 100644 --- a/packages/rfw/test_coverage/pubspec.yaml +++ b/packages/rfw/test_coverage/pubspec.yaml @@ -4,7 +4,7 @@ version: 1.0.0 publish_to: none environment: - sdk: ">=3.0.0 <4.0.0" + sdk: ^3.2.0 dependencies: lcov_parser: 0.1.1 From ef349bec8ee9d5fa3f69d73aa78ab9bb84ae0aa7 Mon Sep 17 00:00:00 2001 From: stuartmorgan Date: Thu, 15 Feb 2024 03:41:35 -0800 Subject: [PATCH 9/9] [url_launcher] Replace deprecated RouteInformation APIs (#6127) Update for https://docs.flutter.dev/release/breaking-changes/route-information-uri and makes 3.13 the minimum supported version accordingly. Fixes https://github.com/flutter/flutter/issues/124045 --- .../url_launcher_platform_interface/CHANGELOG.md | 4 ++++ .../url_launcher_platform_interface/lib/link.dart | 2 +- .../url_launcher_platform_interface/pubspec.yaml | 6 +++--- .../url_launcher_platform_interface/test/link_test.dart | 3 +-- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/url_launcher/url_launcher_platform_interface/CHANGELOG.md b/packages/url_launcher/url_launcher_platform_interface/CHANGELOG.md index 7692e2be725..1cab4de35f5 100644 --- a/packages/url_launcher/url_launcher_platform_interface/CHANGELOG.md +++ b/packages/url_launcher/url_launcher_platform_interface/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.3.2 + +* Replaces deprecated RouteInformation API usage. + ## 2.3.1 * Updates minimum required plugin_platform_interface version to 2.1.7. diff --git a/packages/url_launcher/url_launcher_platform_interface/lib/link.dart b/packages/url_launcher/url_launcher_platform_interface/lib/link.dart index 10fe2dd630c..ef9ca201fcd 100644 --- a/packages/url_launcher/url_launcher_platform_interface/lib/link.dart +++ b/packages/url_launcher/url_launcher_platform_interface/lib/link.dart @@ -86,7 +86,7 @@ abstract class LinkInfo { // TODO(ianh): Remove the first argument. Future pushRouteNameToFramework(Object? _, String routeName) { final Completer completer = Completer(); - SystemNavigator.routeInformationUpdated(location: routeName); + SystemNavigator.routeInformationUpdated(uri: Uri.parse(routeName)); ui.channelBuffers.push( 'flutter/navigation', _codec.encodeMethodCall( diff --git a/packages/url_launcher/url_launcher_platform_interface/pubspec.yaml b/packages/url_launcher/url_launcher_platform_interface/pubspec.yaml index 0fe27cacb40..f0898e7fba5 100644 --- a/packages/url_launcher/url_launcher_platform_interface/pubspec.yaml +++ b/packages/url_launcher/url_launcher_platform_interface/pubspec.yaml @@ -4,11 +4,11 @@ repository: https://github.com/flutter/packages/tree/main/packages/url_launcher/ issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+url_launcher%22 # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 2.3.1 +version: 2.3.2 environment: - sdk: ">=3.0.0 <4.0.0" - flutter: ">=3.10.0" + sdk: ^3.1.0 + flutter: ">=3.13.0" dependencies: flutter: diff --git a/packages/url_launcher/url_launcher_platform_interface/test/link_test.dart b/packages/url_launcher/url_launcher_platform_interface/test/link_test.dart index 6c613c1561d..09adcbdf49b 100644 --- a/packages/url_launcher/url_launcher_platform_interface/test/link_test.dart +++ b/packages/url_launcher/url_launcher_platform_interface/test/link_test.dart @@ -83,7 +83,6 @@ class _RouteDelegate extends RouterDelegate if (_history.isEmpty) { return const Placeholder(key: Key('empty')); } - // ignore: unnecessary_string_interpolations - return Placeholder(key: Key('${_history.last.location}')); + return Placeholder(key: Key(_history.last.uri.path)); } }