Skip to content

Commit

Permalink
[macOS,iOS] CocoaPods recommended version: 1.13.0 (flutter#135447)
Browse files Browse the repository at this point in the history
Due to changes in Xcode 15, several variables such as `DT_TOOLCHAIN_DIR`
have been eliminateed in favour of others such as `TOOLCHAIN_DIR`. This
broke CocoaPods support under Xcode 15, as reported in:
CocoaPods/CocoaPods#12012

@vashworth worked around this in Flutter in:
flutter#132803

The CocoaPods issue was resolved by the following PR to their repo:
CocoaPods/CocoaPods#12009
and was released in CocoaPods 1.13.0.

Also switches from an if-else chain to a switch for CocoaPodsStatus
handling.

Related: flutter#133584
Related: flutter#132755

## 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].
- [X] 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] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#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/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat

Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>
  • Loading branch information
2 people authored and Michal-MK committed Jan 8, 2024
1 parent 81546f2 commit 5d6e459
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 5 deletions.
2 changes: 1 addition & 1 deletion packages/flutter_tools/lib/src/macos/cocoapods.dart
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ enum CocoaPodsStatus {
}

const Version cocoaPodsMinimumVersion = Version.withText(1, 10, 0, '1.10.0');
const Version cocoaPodsRecommendedVersion = Version.withText(1, 11, 0, '1.11.0');
const Version cocoaPodsRecommendedVersion = Version.withText(1, 13, 0, '1.13.0');

/// Cocoapods is a dependency management solution for iOS and macOS applications.
///
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -168,19 +168,19 @@ void main() {

testWithoutContext('detects below recommended version', () async {
pretendPodIsInstalled();
pretendPodVersionIs('1.10.5');
pretendPodVersionIs('1.12.5');
expect(await cocoaPodsUnderTest.evaluateCocoaPodsInstallation, CocoaPodsStatus.belowRecommendedVersion);
});

testWithoutContext('detects at recommended version', () async {
pretendPodIsInstalled();
pretendPodVersionIs('1.11.0');
pretendPodVersionIs('1.13.0');
expect(await cocoaPodsUnderTest.evaluateCocoaPodsInstallation, CocoaPodsStatus.recommended);
});

testWithoutContext('detects above recommended version', () async {
pretendPodIsInstalled();
pretendPodVersionIs('1.11.1');
pretendPodVersionIs('1.13.1');
expect(await cocoaPodsUnderTest.evaluateCocoaPodsInstallation, CocoaPodsStatus.recommended);
});
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ void main() {
final ValidationMessage message = result.messages.first;
expect(message.type, ValidationMessageType.hint);
expect(message.message, contains('CocoaPods $currentVersion out of date'));
expect(message.message, contains('(1.11.0 is recommended)'));
expect(message.message, contains('(1.13.0 is recommended)'));
expect(message.message, contains('getting-started.html#updating-cocoapods'));
});
});
Expand Down

0 comments on commit 5d6e459

Please sign in to comment.