Update iOS tools (#169863)

Updates `libimobiledevice`, `libplist`, `openssl`, `usbmuxd` (renamed
`libusbmuxd`) to newest commits. Also adds `libimobiledeviceglue`, which
is a new dependency for `libimobiledevice`.

I confirmed they are all codesigned:
```
codesign -d /Users/vashworth/Development/flutter/bin/cache/artifacts/libusbmuxd/iproxy -vv
Executable=/Users/vashworth/Development/flutter/bin/cache/artifacts/libusbmuxd/iproxy
Identifier=iproxy
Format=Mach-O thin (x86_64)
CodeDirectory v=20500 size=466 flags=0x10000(runtime) hashes=4+7 location=embedded
Signature size=9048
Authority=Developer ID Application: FLUTTER.IO LLC (S8QB4VV633)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=May 29, 2025 at 8:19:14 PM
Info.plist=not bound
TeamIdentifier=S8QB4VV633
Runtime Version=15.2.0
Sealed Resources=none
Internal requirements count=1 size=168
```

Fixes https://github.com/flutter/flutter/issues/165656,
https://github.com/flutter/flutter/issues/42969

## 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] 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].

<!-- Links -->
[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
This commit is contained in:
Victoria Ashworth 2025-06-02 13:35:14 -05:00 committed by GitHub
parent fd75ddef5c
commit 88bc2536d3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
11 changed files with 20 additions and 16 deletions

View File

@ -1 +1 @@
2ba8188ed97d8b05670845e5b5954e2fe0f54784
0bf0f9e941c85d06ce4b5909d7a61b3a4f2a6a05

View File

@ -0,0 +1 @@
050ff3bf8fdab6ce53a2ddc6ae49b11b1c02a168

View File

@ -1 +1 @@
20a2f8dbddcf1a96ad4c720b9afd1d0876d17ffc
cf5897a71ea412ea2aeb1e2f6b5ea74d4fabfd8c

View File

@ -0,0 +1 @@
19d6bec393c9f9b31ccb090059f59268da32e281

View File

@ -1 +1 @@
e2e09d9fba1187f8d6aafaa34d4172f56f1ffb72
22dbb176deef7d9a80f5c94f57a4b518ea935f50

View File

@ -1 +0,0 @@
c7d7d1a03f65a27be2eddb13d1f2b0c0e7a60ec6

View File

@ -62,11 +62,12 @@ List<String> binariesWithEntitlements(String flutterRoot) {
'artifacts/libimobiledevice/idevicescreenshot',
'artifacts/libimobiledevice/idevicesyslog',
'artifacts/libimobiledevice/libimobiledevice-1.0.6.dylib',
'artifacts/libplist/libplist-2.0.3.dylib',
'artifacts/openssl/libcrypto.1.1.dylib',
'artifacts/openssl/libssl.1.1.dylib',
'artifacts/usbmuxd/iproxy',
'artifacts/usbmuxd/libusbmuxd-2.0.6.dylib',
'artifacts/libimobiledeviceglue/libimobiledevice-glue-1.0.0.dylib',
'artifacts/libplist/libplist-2.0.4.dylib',
'artifacts/openssl/libcrypto.3.dylib',
'artifacts/openssl/libssl.3.dylib',
'artifacts/libusbmuxd/iproxy',
'artifacts/libusbmuxd/libusbmuxd-2.0.7.dylib',
'dart-sdk/bin/dart',
'dart-sdk/bin/dartaotruntime',
'dart-sdk/bin/utils/gen_snapshot',

View File

@ -1046,8 +1046,9 @@ class IosDevice extends Device {
final List<String> dylibsPaths = <String>[
path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'libimobiledevice'),
path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'openssl'),
path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'usbmuxd'),
path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'libusbmuxd'),
path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'libplist'),
path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'libimobiledeviceglue'),
];
return dylibsPaths.join(':');
}

View File

@ -488,7 +488,7 @@ class CachedArtifacts implements Artifacts {
return _cache.getArtifactDirectory('ios-deploy').childFile(artifactFileName);
case HostArtifact.iproxy:
final String artifactFileName = _hostArtifactToFileName(artifact, _platform);
return _cache.getArtifactDirectory('usbmuxd').childFile(artifactFileName);
return _cache.getArtifactDirectory('libusbmuxd').childFile(artifactFileName);
case HostArtifact.impellerc:
case HostArtifact.libtessellator:
final String artifactFileName = _hostArtifactToFileName(artifact, _platform);
@ -1165,7 +1165,7 @@ class CachedLocalEngineArtifacts implements Artifacts {
return _cache.getArtifactDirectory('ios-deploy').childFile(artifactFileName);
case HostArtifact.iproxy:
final String artifactFileName = _hostArtifactToFileName(artifact, _platform);
return _cache.getArtifactDirectory('usbmuxd').childFile(artifactFileName);
return _cache.getArtifactDirectory('libusbmuxd').childFile(artifactFileName);
case HostArtifact.impellerc:
case HostArtifact.libtessellator:
final String artifactFileName = _hostArtifactToFileName(artifact, _platform);

View File

@ -740,9 +740,10 @@ class IosUsbArtifacts extends CachedArtifact {
static const List<String> artifactNames = <String>[
'libimobiledevice',
'usbmuxd',
'libusbmuxd',
'libplist',
'openssl',
'libimobiledeviceglue',
'ios-deploy',
];
@ -752,7 +753,7 @@ class IosUsbArtifacts extends CachedArtifact {
// missing.
static const Map<String, List<String>> _kExecutables = <String, List<String>>{
'libimobiledevice': <String>['idevicescreenshot', 'idevicesyslog'],
'usbmuxd': <String>['iproxy'],
'libusbmuxd': <String>['iproxy'],
};
@override

View File

@ -527,14 +527,14 @@ void main() {
},
);
testWithoutContext('IosUsbArtifacts verifies iproxy for usbmuxd in isUpToDateInner', () async {
testWithoutContext('IosUsbArtifacts verifies iproxy for libusbmuxd in isUpToDateInner', () async {
final FileSystem fileSystem = MemoryFileSystem.test();
final Cache cache = Cache.test(
fileSystem: fileSystem,
processManager: FakeProcessManager.any(),
);
final IosUsbArtifacts iosUsbArtifacts = IosUsbArtifacts(
'usbmuxd',
'libusbmuxd',
cache,
platform: FakePlatform(operatingSystem: 'macos'),
);