fix(shorebird_cli): shorebird release windows should support --flutter-version=<hash> (#2983)

This commit is contained in:
Felix Angelov
2025-03-17 14:05:29 -05:00
committed by GitHub
parent 98753a41f6
commit a333a28fc1
3 changed files with 1 additions and 31 deletions
@@ -69,12 +69,7 @@ To change the version of this release, change your app's version in your pubspec
final version = await shorebirdFlutter.resolveFlutterVersion(
flutterVersionArg,
);
final gitHash = await shorebirdFlutter.getRevisionForVersion(
flutterVersionArg,
);
if (version != null &&
version < minimumSupportedWindowsFlutterVersion &&
!windowsFlutterGitHashesBelowMinVersion.contains(gitHash)) {
if (version != null && version < minimumSupportedWindowsFlutterVersion) {
logger.err('''
Windows releases are not supported with Flutter versions older than $minimumSupportedWindowsFlutterVersion.
For more information see: ${supportedFlutterVersionsUrl.toLink()}''');
@@ -11,8 +11,3 @@ const primaryWindowsReleaseArtifactArch = 'win_archive';
/// The minimum allowed Flutter version for creating Windows releases.
final minimumSupportedWindowsFlutterVersion = Version(3, 27, 2);
/// Revisions of Flutter 3.27.1 that support windows.
const windowsFlutterGitHashesBelowMinVersion = {
'56228c343d6c7fd3e1e548dbb290f9713bb22aa9',
};
@@ -246,9 +246,6 @@ To change the version of this release, change your app's version in your pubspec
when(
() => shorebirdFlutter.resolveFlutterVersion('3.27.1'),
).thenAnswer((_) async => Version(3, 27, 1));
when(
() => shorebirdFlutter.getRevisionForVersion(any()),
).thenAnswer((_) async => 'deadbeef');
});
test('logs error and exits with usage err', () async {
@@ -263,23 +260,6 @@ Windows releases are not supported with Flutter versions older than $minimumSupp
For more information see: ${supportedFlutterVersionsUrl.toLink()}'''),
).called(1);
});
group('when flutter version is 3.27.1 but hash is supported', () {
setUp(() {
when(
() => shorebirdFlutter.getRevisionForVersion(any()),
).thenAnswer(
(_) async => windowsFlutterGitHashesBelowMinVersion.first,
);
});
test('completes normally', () async {
await expectLater(
runWithOverrides(releaser.assertPreconditions),
completes,
);
});
});
});
});