[flutter_releases] Flutter beta 2.5.0-5.2.pre Framework Cherrypicks (#88476)
* l10n updates for August beta (#88328)
* Make doctor Xcode version requirement clearer (#88137)
* 'Update Engine revision to 7a4c4505f6a7a1aa758d62b58150dce43cfa473f for beta release 2.5.0-5.2.pre'
Co-authored-by: Todd Volkert <tvolkert@users.noreply.github.com>
Co-authored-by: Jenn Magder <magder@google.com>
diff --git a/bin/internal/engine.version b/bin/internal/engine.version
index ff2c18c..75f19e3 100644
--- a/bin/internal/engine.version
+++ b/bin/internal/engine.version
@@ -1 +1 @@
-fbeb7e22bd6d594a16c487cc138970fbd2a77d40
+7a4c4505f6a7a1aa758d62b58150dce43cfa473f
diff --git a/packages/flutter_localizations/lib/src/l10n/generated_material_localizations.dart b/packages/flutter_localizations/lib/src/l10n/generated_material_localizations.dart
index b06b37e..4868677 100644
--- a/packages/flutter_localizations/lib/src/l10n/generated_material_localizations.dart
+++ b/packages/flutter_localizations/lib/src/l10n/generated_material_localizations.dart
@@ -17975,7 +17975,7 @@
String get unspecifiedDateRange => 'तारीख श्रेणी';
@override
- String get viewLicensesButtonLabel => 'परवाने पाहा';
+ String get viewLicensesButtonLabel => 'परवाने पहा';
}
/// The translations for Malay (`ms`).
@@ -25238,7 +25238,7 @@
String get showMenuTooltip => 'మెనూను చూపు';
@override
- String get signedInLabel => 'సైన్ ఇన్ చేసారు';
+ String get signedInLabel => 'సైన్ ఇన్ చేశారు';
@override
String get tabLabelRaw => r'$tabCountలో $tabIndexవ ట్యాబ్';
diff --git a/packages/flutter_localizations/lib/src/l10n/material_mr.arb b/packages/flutter_localizations/lib/src/l10n/material_mr.arb
index a6c18f7..e4d6756 100644
--- a/packages/flutter_localizations/lib/src/l10n/material_mr.arb
+++ b/packages/flutter_localizations/lib/src/l10n/material_mr.arb
@@ -29,7 +29,7 @@
"okButtonLabel": "ओके",
"pasteButtonLabel": "पेस्ट करा",
"selectAllButtonLabel": "सर्व निवडा",
- "viewLicensesButtonLabel": "परवाने पाहा",
+ "viewLicensesButtonLabel": "परवाने पहा",
"anteMeridiemAbbreviation": "AM",
"postMeridiemAbbreviation": "PM",
"timePickerHourModeAnnouncement": "तास निवडा",
diff --git a/packages/flutter_localizations/lib/src/l10n/material_te.arb b/packages/flutter_localizations/lib/src/l10n/material_te.arb
index 27e1e32..bfda85c 100644
--- a/packages/flutter_localizations/lib/src/l10n/material_te.arb
+++ b/packages/flutter_localizations/lib/src/l10n/material_te.arb
@@ -34,7 +34,7 @@
"timePickerHourModeAnnouncement": "గంటలను ఎంచుకోండి",
"timePickerMinuteModeAnnouncement": "నిమిషాలను ఎంచుకోండి",
"modalBarrierDismissLabel": "విస్మరించు",
- "signedInLabel": "సైన్ ఇన్ చేసారు",
+ "signedInLabel": "సైన్ ఇన్ చేశారు",
"hideAccountsLabel": "ఖాతాలను దాచు",
"showAccountsLabel": "ఖాతాలను చూపు",
"drawerLabel": "నావిగేషన్ మెనూ",
diff --git a/packages/flutter_tools/lib/src/base/user_messages.dart b/packages/flutter_tools/lib/src/base/user_messages.dart
index cfa5540..013d5c6 100644
--- a/packages/flutter_tools/lib/src/base/user_messages.dart
+++ b/packages/flutter_tools/lib/src/base/user_messages.dart
@@ -145,9 +145,14 @@
// Messages used in XcodeValidator
String xcodeLocation(String location) => 'Xcode at $location';
- String xcodeOutdated(String currentVersion, String recommendedVersion) =>
- 'Xcode $currentVersion out of date ($recommendedVersion is recommended).\n'
+ String xcodeOutdated(String requiredVersion) =>
+ 'Flutter requires a minimum Xcode version of $requiredVersion.\n'
'Download the latest version or update via the Mac App Store.';
+
+ String xcodeRecommended(String recommendedVersion) =>
+ 'Flutter recommends a minimum Xcode version of $recommendedVersion.\n'
+ 'Download the latest version or update via the Mac App Store.';
+
String get xcodeEula => "Xcode end user license agreement not signed; open Xcode or run the command 'sudo xcodebuild -license'.";
String get xcodeMissingSimct =>
'Xcode requires additional components to be installed in order to run.\n'
diff --git a/packages/flutter_tools/lib/src/macos/xcode_validator.dart b/packages/flutter_tools/lib/src/macos/xcode_validator.dart
index adf584c..18bb98b 100644
--- a/packages/flutter_tools/lib/src/macos/xcode_validator.dart
+++ b/packages/flutter_tools/lib/src/macos/xcode_validator.dart
@@ -37,16 +37,10 @@
if (!_xcode.isInstalledAndMeetsVersionCheck) {
xcodeStatus = ValidationType.partial;
- messages.add(ValidationMessage.error(_userMessages.xcodeOutdated(
- _xcode.currentVersion.toString(),
- xcodeRecommendedVersion.toString(),
- )));
+ messages.add(ValidationMessage.error(_userMessages.xcodeOutdated(xcodeRequiredVersion.toString())));
} else if (!_xcode.isRecommendedVersionSatisfactory) {
xcodeStatus = ValidationType.partial;
- messages.add(ValidationMessage.hint(_userMessages.xcodeOutdated(
- _xcode.currentVersion.toString(),
- xcodeRecommendedVersion.toString(),
- )));
+ messages.add(ValidationMessage.hint(_userMessages.xcodeRecommended(xcodeRecommendedVersion.toString())));
}
if (!_xcode.eulaSigned) {
diff --git a/packages/flutter_tools/test/general.shard/macos/xcode_validator_test.dart b/packages/flutter_tools/test/general.shard/macos/xcode_validator_test.dart
index d1056bb..655004f 100644
--- a/packages/flutter_tools/test/general.shard/macos/xcode_validator_test.dart
+++ b/packages/flutter_tools/test/general.shard/macos/xcode_validator_test.dart
@@ -55,21 +55,21 @@
final ValidationResult result = await validator.validate();
expect(result.type, ValidationType.partial);
expect(result.messages.last.type, ValidationMessageType.error);
- expect(result.messages.last.message, contains('Xcode 7.0.1 out of date (12.0.1 is recommended)'));
+ expect(result.messages.last.message, contains('Flutter requires a minimum Xcode version of 12.0.1'));
});
testWithoutContext('Emits partial status when Xcode below recommended version', () async {
final ProcessManager processManager = FakeProcessManager.any();
final Xcode xcode = Xcode.test(
processManager: processManager,
- xcodeProjectInterpreter: XcodeProjectInterpreter.test(processManager: processManager, version: Version(11, 0, 0)),
+ xcodeProjectInterpreter: XcodeProjectInterpreter.test(processManager: processManager, version: Version(12, 0, 1)),
);
final XcodeValidator validator = XcodeValidator(xcode: xcode, userMessages: UserMessages());
final ValidationResult result = await validator.validate();
expect(result.type, ValidationType.partial);
expect(result.messages.last.type, ValidationMessageType.hint);
- expect(result.messages.last.message, contains('Xcode 11.0.0 out of date (12.0.1 is recommended)'));
- }, skip: true); // Unskip and update when minimum and required check versions diverge.
+ expect(result.messages.last.message, contains('Flutter recommends a minimum Xcode version of 12.0.2'));
+ }, skip: true); // [intended] Unskip and update when minimum and required check versions diverge.
testWithoutContext('Emits partial status when Xcode EULA not signed', () async {
final ProcessManager processManager = FakeProcessManager.list(<FakeCommand>[