From 28cc211fcd70e5abe6fcbf1d3b5fb19db06cd064 Mon Sep 17 00:00:00 2001 From: "auto-submit[bot]" <98614782+auto-submit[bot]@users.noreply.github.com> Date: Fri, 11 Apr 2025 21:35:18 +0000 Subject: [PATCH] Reverts "Fix regression in NDK version checking (#166998)" (#167007) Reverts: flutter/flutter#166998 Initiated by: gmackall Reason for reverting: https://github.com/flutter/flutter/pull/166998#issuecomment-2798030501 Original PR Author: gmackall Reviewed By: {stuartmorgan-g} This change reverts the following previous change: Fixes a regression from https://github.com/flutter/flutter/pull/166727/, see https://discord.com/channels/608014603317936148/846507907876257822/1360306682999210204 Adds a dependency on `shared_preferences_android` to the smoke tests we have that run across the range of AGP/Gradle versions we support. Chosen randomly, just to recreate the error. Hopefully this doesn't push the test target into timeout range, it was already a kind of long running one. The IDE suggestion here was misleading, as this value switched from nullable to non nullable in AGP 8.1/8.2. Unfortunately the IDE makes these suggestions based on one AGP version, specified in the project level `build.gradle.kts`. I checked all other files with our minimum supported AGP version, and this was the only error. ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [ ] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I added new tests to check the change I am making, or this PR is [test-exempt]. - [x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing. If you need help, consider asking for advice on the #hackers-new channel on [Discord]. [Contributor Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview [Tree Hygiene]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md [test-exempt]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests [Flutter Style Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md [Features we expect every widget to implement]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md [Data Driven Fixes]: https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md Co-authored-by: auto-submit[bot] --- ...dependency_smoke_test_task_definition.dart | 7 ------- .../src/main/kotlin/FlutterPluginUtils.kt | 19 +++---------------- 2 files changed, 3 insertions(+), 23 deletions(-) diff --git a/dev/devicelab/lib/framework/dependency_smoke_test_task_definition.dart b/dev/devicelab/lib/framework/dependency_smoke_test_task_definition.dart index b20fddb41b3..d333046fffe 100644 --- a/dev/devicelab/lib/framework/dependency_smoke_test_task_definition.dart +++ b/dev/devicelab/lib/framework/dependency_smoke_test_task_definition.dart @@ -144,13 +144,6 @@ Future buildFlutterApkWithSpecifiedDependencyVersions({ .replaceFirst(kgpReplacementString, versions.kotlinVersion); await gradleSettingsFile.writeAsString(settingsContent, flush: true); - section('Add a dependency on a plugin'); - await flutter( - 'pub', - options: ['add', 'shared_preferences_android:2.4.9'], // Chosen randomly. - workingDirectory: appPath, - ); - // Ensure that gradle files exists from templates. section( "Ensure 'flutter build apk' succeeds with Gradle ${versions.gradleVersion}, AGP ${versions.agpVersion}, and Kotlin ${versions.kotlinVersion}", diff --git a/packages/flutter_tools/gradle/src/main/kotlin/FlutterPluginUtils.kt b/packages/flutter_tools/gradle/src/main/kotlin/FlutterPluginUtils.kt index e6ec439ba6d..2b622591eb8 100644 --- a/packages/flutter_tools/gradle/src/main/kotlin/FlutterPluginUtils.kt +++ b/packages/flutter_tools/gradle/src/main/kotlin/FlutterPluginUtils.kt @@ -517,16 +517,8 @@ object FlutterPluginUtils { getCompileSdkFromProject(project).toIntOrNull() ?: Int.MAX_VALUE var maxPluginCompileSdkVersion = projectCompileSdkVersion - // TODO(gmackall): This should be updated to reflect newer templates. - // The default for AGP 4.1.0 used in old templates. - val ndkVersionIfUnspecified = "21.1.6352462" - - // TODO(gmackall): We can remove this elvis when our minimum AGP is >= 8.2. - // This value (ndkVersion) is nullable on AGP versions below that. - // See https://developer.android.com/reference/tools/gradle-api/8.1/com/android/build/api/dsl/CommonExtension#ndkVersion(). - @Suppress("USELESS_ELVIS") - val projectNdkVersion: String = - getAndroidExtension(project).ndkVersion // ?: ndkVersionIfUnspecified + val projectNdkVersion = + getAndroidExtension(project).ndkVersion var maxPluginNdkVersion = projectNdkVersion var numProcessedPlugins = pluginList.size val pluginsWithHigherSdkVersion = mutableListOf() @@ -551,13 +543,8 @@ object FlutterPluginUtils { ) ) } - - // TODO(gmackall): We can remove this elvis when our minimum AGP is >= 8.2. - // This value (ndkVersion) is nullable on AGP versions below that. - // See https://developer.android.com/reference/tools/gradle-api/8.1/com/android/build/api/dsl/CommonExtension#ndkVersion(). - @Suppress("USELESS_ELVIS") val pluginNdkVersion: String = - getAndroidExtension(pluginProject).ndkVersion // ?: ndkVersionIfUnspecified + getAndroidExtension(pluginProject).ndkVersion maxPluginNdkVersion = VersionUtils.mostRecentSemanticVersion( pluginNdkVersion,