Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to latest idb to enable compatibility with more recent devices #7

Merged
merged 479 commits into from
Oct 15, 2024

Conversation

guillaumelevass
Copy link

@guillaumelevass guillaumelevass commented Oct 9, 2024

Motivation

UGK has a set of tests for metal written with UnitTest++ that needs to be deployed to an iOS device. Pram is the tool of choice has it can be reused cross platforms. Unfortunately, our fork of idb hasn't been updated in the last 3 years and wasn't working with more recent devices. This PR updates the source code, resolving conflicts.

The vast majority of commits are backports from facebook/idb/main. Conflict resolving starts at 3e55180.

Test Plan

I've been using idb through pram, both locally and on yamato. Locally, I successfully ran the pram test suite on iOS 16/iPhone 11 and iOS 17/iPhone 14. On yamato, I managed to have a successful test on iOS 16/iPhone 13. Tests are failing on iPhone 8, iPhone SE and iPhone SE 3 for different reasons.

Failure on iPhone SE 3 seems to be related to idb, as the device family is detected as Unknown. An issue (facebook#869) has been reported.
Tests are failing on iPhone 8 and iPhone SE because of what appears to be infrastructure issue, the bokken image might not have the right version of XCode installed.

Related PRs

https://github.cds.internal.unity3d.com/unity/pram/pull/734

Nikita Patskov and others added 30 commits May 5, 2022 09:38
Summary: This commit implements second phase of grpc-swift rollout. Swift endpoint implementation is enough battle-tested and ready to serve as primary point of contact for other services.

Reviewed By: jbardini

Differential Revision: D36125152

fbshipit-source-id: f731b55342bc8d1e038865b570f89b2651b292bf
Summary: Properly handle logging of endpoint based on env

Reviewed By: jbardini

Differential Revision: D36125153

fbshipit-source-id: 3351fdbaf40c52e10df6d9c51a376016e601c65b
Summary: This fixes bug when `--grpc-port 0` will not produce proper ports in stdout

Reviewed By: jbardini

Differential Revision: D36163726

fbshipit-source-id: fb96465b3c93844569651e24f0dc19901b90c0d5
Summary:
Add new devices:
- iPhone 13 mini
- iPhone 13
- iPhone 13 Pro
- iPhone 13 Pro Max

Product types based on `device_traits.db`:

```
[[email protected] ~]$ sqlite3 $(xcode-select -p)/Platforms/iPhoneOS.platform/usr/standalone/device_traits.db
sqlite> select ProductDescription, ProductType from Devices where ProductDescription like 'iPhone 13%';
iPhone 13 Pro|iPhone14,2
iPhone 13 Pro Max|iPhone14,3
iPhone 13 mini|iPhone14,4
iPhone 13|iPhone14,5
```

Reviewed By: jbardini

Differential Revision: D36196270

fbshipit-source-id: a24d6ecdcb951cd4334a20b4573c2061c426cbc3
Summary: Implement mechanism for performing deferred cleanup in swift

Reviewed By: jbardini

Differential Revision: D35969357

fbshipit-source-id: 1d9621f2e211a49d7ac92d5b3a17ca84ca6d7a43
Summary:
Besides `FBFuture` we also have `FBFutureContext` that wraps cleanup mechanism under the hood.
We should also migrate bring this feature to swift concurrency world

Reviewed By: jbardini

Differential Revision: D35897188

fbshipit-source-id: e00137d7376ac8e09b5f051af465f8b7003239f5
Reviewed By: jbardini

Differential Revision: D35898676

fbshipit-source-id: b28168367c95b0f61bb1e090d9e6fada956b81ab
Summary: As in title

Reviewed By: jbardini

Differential Revision: D36239848

fbshipit-source-id: 8f2eb7b76005d0ceb3d189273a6d4742c0f63a6d
Summary: Tail command is now swift <3

Reviewed By: jbardini

Differential Revision: D36239847

fbshipit-source-id: e2b6394efbb2b26b559d9ac482f197ad598c34af
Summary: `idb uninstall` is now swift

Reviewed By: lawrencelomax

Differential Revision: D36245703

fbshipit-source-id: 65156f9e1f703d572984eb6991b9643b871c0e10
Summary: `idb focus` is now swift <3

Reviewed By: lawrencelomax

Differential Revision: D36245706

fbshipit-source-id: 1e8a292b2231b603f757cc132608a70399b27aea
Summary: `idb simulate-memory warning` is now swift <3

Reviewed By: lawrencelomax

Differential Revision: D36245705

fbshipit-source-id: 48f6a315f151ab56d6d36459bf992f0bd8463066
Summary: `idb send-notification` is now swift

Reviewed By: lawrencelomax

Differential Revision: D36245704

fbshipit-source-id: e3488804efd85f8bdcf4d993a062fd8deaf6749d
Summary: `idb set-location` is now swift <3

Reviewed By: lawrencelomax

Differential Revision: D36245701

fbshipit-source-id: 033b340b23496cf3636c84493ff7e9fac6e0dd80
Summary: `idb crash list` is now swift

Reviewed By: lawrencelomax

Differential Revision: D36246688

fbshipit-source-id: 29ccf36b8091f7809e9eecbfd045cfad39563240
Summary: This will add possibility to easily cleanup idb artifacts on CI

Reviewed By: jbardini

Differential Revision: D36314045

fbshipit-source-id: a86a4e8383ccee532208f0663b147e8b4f466e3c
Summary:
Applies the black-fbsource codemod with the new build of pyfmt.

paintitblack

Reviewed By: lisroach

Differential Revision: D36324783

fbshipit-source-id: 280c09e88257e5e569ab729691165d8dedd767bc
Summary:
Applies new import merging and sorting from µsort v1.0.

When merging imports, µsort will make a best-effort to move associated
comments to match merged elements, but there are known limitations due to
the diynamic nature of Python and developer tooling. These changes should
not produce any dangerous runtime changes, but may require touch-ups to
satisfy linters and other tooling.

Note that µsort uses case-insensitive, lexicographical sorting, which
results in a different ordering compared to isort. This provides a more
consistent sorting order, matching the case-insensitive order used when
sorting import statements by module name, and ensures that "frog", "FROG",
and "Frog" always sort next to each other.

For details on µsort's sorting and merging semantics, see the user guide:
https://usort.readthedocs.io/en/stable/guide.html#sorting

Reviewed By: lisroach

Differential Revision: D36402195

fbshipit-source-id: 22db7e2595396e73b2befc187ed3b98ac34e8387
Summary: So we can control weather mtime of extracted files are restored or not.

Reviewed By: ronmrdechai, Nekitosss

Differential Revision: D36341634

fbshipit-source-id: 790aed0d4a611275d38cfb1ea7201b6d10433e00
Summary: Threading the parameter through the layers

Reviewed By: ronmrdechai, Nekitosss

Differential Revision: D36341633

fbshipit-source-id: a204f911d13a5613ed68230a0e454c5ab89a92d9
Summary:
The instalation process of an `.ipa` on a simulator consists of idb decompressing the archive (ipa is a zip) and then calling `-[SimDevice installApplication:withOptions:error:]` which in turn will request the installation to `installd` (a process that belongs to the simulator). When a previous version of the app is already installed in the simulator, `installd` performs an "incremental install" (or "Delta patch update" as it shows in the logs).

Since `installd` incremental patch update seems to be based on each file's modified date and size, it not work well when your `.ipa` is produced by a building system that normalises the timestamps of files contained in archive-like artefacts (all the content of all `.ipa`s have mtime set to a specific date in the past -- regardless of _when_ the build actually happened). This often results on a corrupted app installation with some files from the previous version and some files of the newer version.

The files that are not updated are files which had their content changed but without a change in size. As the files from both builds have the same mtime, `installd` skip them.

So we mitigate this issue by ignoring the mtime stored within the `.ipa` when decompressing it. So all the files in the app bundle have the current time as mtime, which will differ from the files previously installed, and `installd` will be able to install the newer version of the app properly.

Since we are, in theory, forcing a full install, it can result in longer install times. There is also the possibility of unforeseen issues with applications that happen to depend on the mtime of specific resources within it's bundle, so we are making this new behaviour opt-in.

Reviewed By: ronmrdechai, Nekitosss

Differential Revision: D36341632

fbshipit-source-id: 53e48ae7b915c9a4e67a6ebe92dac507f27e3da8
Summary: As title

Reviewed By: ronmrdechai, Nekitosss

Differential Revision: D36341631

fbshipit-source-id: 9632eb363b90bf71580495341cb65dd1c9c54830
Summary: title

Reviewed By: Nekitosss

Differential Revision: D36411974

fbshipit-source-id: 0670687afd1db9f94e134063a6d94b1ce35b98cc
Summary: Fixes Data size for file drain

Reviewed By: jbardini

Differential Revision: D36409288

fbshipit-source-id: a8ccb592499834ed51fbe73318c77752ef09aa2f
Summary: `idb crash show` is now swift <3

Reviewed By: jbardini

Differential Revision: D36246689

fbshipit-source-id: 2d454b28ae38660fb5b92578bf9700d7c6095957
Summary: `idb crash delete` is now swift

Reviewed By: jamescoggan, jbardini

Differential Revision: D36246690

fbshipit-source-id: a421f501a8d14478868d96f9d50b31b153a03a24
Summary: `idb contacts update` is now swift <3

Reviewed By: jamescoggan

Differential Revision: D36343781

fbshipit-source-id: da860cfb7ae401064d9ff3763ac88bbf70bbb757
Summary: `idb set` is now swift <3

Reviewed By: jbardini

Differential Revision: D36343779

fbshipit-source-id: 82be846dc4b707871fa83a794ba93e71d5f72e3a
Summary: Implementation of observing events from different sources in swift concurrency

Reviewed By: jbardini

Differential Revision: D36282503

fbshipit-source-id: 8b5d1b2cde52146aae4c3c9b299ef22c7b7dc44c
Summary: `idb video_stream` is now swift <3

Reviewed By: jbardini

Differential Revision: D36282363

fbshipit-source-id: 40983fa61fb7e23bfe213abc035091900dcc6f48
amyreese and others added 21 commits March 4, 2024 14:29
Summary:
Formats the covered files with pyfmt.

paintitblack

Reviewed By: zertosh, abesto

Differential Revision: D54470824

fbshipit-source-id: 06c8f96f17045dcd46a23398274cc5b741c6e846
Summary: Migrating off of the deprecated method `archivedDataWithRootObject:`, as well as its counterpart, `unarchiveObjectWithData:` if it appears in the same file.

Reviewed By: yannickl

Differential Revision: D55248376

fbshipit-source-id: e1d5699bb452694f7ffb998adeed3f028c5e5035
Summary: Pull Request resolved: facebook#854

Reviewed By: fgasperij

Differential Revision: D55406965

fbshipit-source-id: bd4473d41c1b6fc02976c15bb8f7cbca2c5b9f2a
Summary:
## Motivation

Boy scout rule :)

Pull Request resolved: facebook#833

Test Plan: Does not apply

Reviewed By: fgasperij

Differential Revision: D55407027

fbshipit-source-id: fa232f917eaf25619cc19194eb92da5e4ebfa0cd
Summary:
<!--
Thank you for sending the PR! We appreciate you spending the time to work on these changes.

Help us understand your motivation by explaining why you decided to make this change.

You can learn more about contributing to `idb` here: https://github.com/facebook/idb/blob/main/.github/CONTRIBUTING.md

Happy contributing!

-->

## Motivation

Just updating a link on the documentation.

Pull Request resolved: facebook#855

Reviewed By: fgasperij

Differential Revision: D55406962

fbshipit-source-id: f04d7fb3f0ede823b337677ce005960257aacda6
Summary:
Recently we found many of our tests are failed with "Failed to list tests." error message.
https://www.internalfb.com/sandcastle/workflow/1292533093057807088/insights?selectedLines=420-463-1-1
https://www.internalfb.com/intern/testinfra/testconsole/testrun/1407375244792239

With one of the affected test `//xplat/arfx/skylight/app/ui/simulator_preferences:SkylightSimulatorPreferencesTestsAppleMac`

After comparing the log output and investigations, early findings are
- this only happens to x86_64 Mac tests, but not to arm64 Mac tests
- affected tests are quite big in binary size (the `xctest` bundle can be 2GB and more)
- the timeout happens at this line
https://www.internalfb.com/code/fbsource/[b10994f3b0de]/fbobjc/EndToEndTests/FBSimulatorControl/src/CompanionLib/FBIDBCommandExecutor.m?lines=291
- the log when the timeout happens are
{P1200928392}
```
list_tests_in_bundle failed with: Waited 60.000000 seconds for process 20037 to terminate, but the xctest process stalled:
```

From the above log, we can see the "Querying Bundle" started but not yet to reach the Principle class line
https://www.internalfb.com/code/fbsource/[5ff9cd430747]/fbobjc/EndToEndTests/FBSimulatorControl/src/Shims/Shimulator/TestReporterShim/XCTestReporterShim.m?lines=546-547,593,705-706,717-718

To repro, a simple executable is made as
{P1201284452}
and then with Instrument to profile - we can see the x86_64 version of the xctest takes much longer to load at the `dlopen` line.
 {F1474118714}
 {F1474118862}

We need more time to investigate why the test bundle is so big and affecting the dlopen loading performance. But to unblock these dying tests, a quick workaround is to extend this timeout.

Reviewed By: jbardini

Differential Revision: D55436652

fbshipit-source-id: ec2f7af29b05f3ffedec958801d456a34920446e
Summary: For reason unknown to me old API doesn't work with permission error. But with newer apis from `NSData` everything works.

Reviewed By: jbardini

Differential Revision: D55738651

fbshipit-source-id: 585a19908f18cbc45e47b05a094be7c755c5956f
Reviewed By: jbardini

Differential Revision: D55980816

fbshipit-source-id: d9e16e337e0ce3016c524c45028f7edd82659b77
Summary: We should not install anything into global Application folder. That is security risk and unnecessary.

Reviewed By: jbardini

Differential Revision: D56300527

fbshipit-source-id: 845ab601848807e91a3e3707b540bda9d255c859
…f inside the test bundle

Summary:
This diff contains two changes related to the test configuration setup

 ---

The first one is the error checking of the instantiation of `testConfiguration` - it looks like a previous copy-n-paste? but by the context we want to test `testConfiguration`
https://www.internalfb.com/code/fbsource/[3a774059d7e3]/fbobjc/EndToEndTests/FBSimulatorControl/src/XCTestBootstrap/Configuration/FBTestRunnerConfiguration.m?lines=141-147%2C150%2C163-168

 ---

The second one is to write the `.xctestconfiguration` to where we persistent the `.xctest` bundle, instead of in the test bundle like the current implementation.
Rasons are

1) With D56303593, the `.xctest` would be a symlink to buck-out folders - which would be better not touching/modifying it to keep buck2's consistency.

2) With Remote Execution, the `buck-out` can be mounted in a different location then the `idb-mac-cwd`. While we write the file with `NSDataWritingAtomic`, this becomes an issue.
https://www.internalfb.com/code/fbsource/[3a774059d7e3f4411c4ee3e24ed2e6cb8a124130]/fbobjc/EndToEndTests/FBSimulatorControl/src/XCTestBootstrap/Configuration/FBTestConfiguration.m?lines=53

`-[NSData writeToFile:options:error:]` would return an error like this
```
2024-04-23T07:58:45-0700 error idb_xctest : command_name=run-macos-app event_end_time=1713884325473 event_start_time=1713884324886 event_type=FAILURE time=1713884325 [IDBUtilities] Location: /paragon/pods/247200188/home/execution/3/4e6c01d22bec45948119a6935472aa2f/work/fbobjc/Tools/idb-cli/Sources/IDBXCTest/MacOS/Run/RunMacOSAppCommandImpl.swift:94:28 method: run() - Error: Error Domain=com.facebook.XCTestBootstrap Code=0 "Failed to prepare test configuration" UserInfo={NSLocalizedDescription=Failed to prepare test configuration, NSUnderlyingError=0x600001046220 {Error Domain=NSCocoaErrorDomain Code=512 "The file “TpxMacosUnitAppTestsMac-40B19D7B-DECB-406C-B5DB-9798056B2D13.xctestconfiguration” couldn’t be saved in the folder “TpxMacosUnitAppTestsMac.xctest”.
Caused By: The operation couldn’t be completed. Cross-device link" UserInfo={NSFilePath=/private/var/folders/wz/23tx9kv14z96n2jxxnrsmjkw000xbj/T/idb-mac-cwd/1E0140F2-FF11-4739-9149-0DF54E8E9993-4816-0000EA2AC41A1EC6/idb-test-bundles/com.facebook.TpxMacosUnitAppTestsMac/TpxMacosUnitAppTestsMac.xctest/TpxMacosUnitAppTestsMac-40B19D7B-DECB-406C-B5DB-9798056B2D13.xctestconfiguration, NSLocalizedDescription=The file “TpxMacosUnitAppTestsMac-40B19D7B-DECB-406C-B5DB-9798056B2D13.xctestconfiguration” couldn’t be saved in the folder “TpxMacosUnitAppTestsMac.xctest”.
Caused By: The operation couldn’t be completed. Cross-device link, NSUnderlyingError=0x600001045ce0 {Error Domain=NSPOSIXErrorDomain Code=18 "Cross-device link"}}}}
Error: Location: /paragon/pods/247200188/home/execution/3/4e6c01d22bec45948119a6935472aa2f/work/fbobjc/Tools/idb-cli/Sources/IDBXCTest/MacOS/Run/RunMacOSAppCommandImpl.swift:94:28 method: run() - Error: Error Domain=com.facebook.XCTestBootstrap Code=0 "Failed to prepare test configuration" UserInfo={NSLocalizedDescription=Failed to prepare test configuration, NSUnderlyingError=0x600001046220 {Error Domain=NSCocoaErrorDomain Code=512 "The file “TpxMacosUnitAppTestsMac-40B19D7B-DECB-406C-B5DB-9798056B2D13.xctestconfiguration” couldn’t be saved in the folder “TpxMacosUnitAppTestsMac.xctest”.
Caused By: The operation couldn’t be completed. Cross-device link" UserInfo={NSFilePath=/private/var/folders/wz/23tx9kv14z96n2jxxnrsmjkw000xbj/T/idb-mac-cwd/1E0140F2-FF11-4739-9149-0DF54E8E9993-4816-0000EA2AC41A1EC6/idb-test-bundles/com.facebook.TpxMacosUnitAppTestsMac/TpxMacosUnitAppTestsMac.xctest/TpxMacosUnitAppTestsMac-40B19D7B-DECB-406C-B5DB-9798056B2D13.xctestconfiguration, NSLocalizedDescription=The file “TpxMacosUnitAppTestsMac-40B19D7B-DECB-406C-B5DB-9798056B2D13.xctestconfiguration” couldn’t be saved in the folder “TpxMacosUnitAppTestsMac.xctest”.
Caused By: The operation couldn’t be completed. Cross-device link, NSUnderlyingError=0x600001045ce0 {Error Domain=NSPOSIXErrorDomain Code=18 "Cross-device link"}}}}
```

The underlying POSIX 18 (`EXDEV`) is likely to be raised from the `rename` system call
https://www.man7.org/linux/man-pages/man2/rename.2.html
```
EXDEV  oldpath and newpath are not on the same mounted
              filesystem.  (Linux permits a filesystem to be mounted at
              multiple points, but rename() does not work across
              different mount points, even if the same filesystem is
              mounted on both.)
```
https://www.unix.com/man-page/FreeBSD/2/rename/
```
[EXDEV]		The link named by to and the file named by from are on different logical devices (file systems).  Note that this error
			code will not be returned if the implementation permits cross-device links.
```

We're not clear in Apple's actual implementation of `-[NSData writeToFile:options:error:]` with `NSDataWritingAtomic`, but it makes sense by the idiom of `NSDataWritingAtomic` - some renaming is involved.
Also for some other OSS version of the Foundation lib, we can see the `rename` system call is called.
- GNUStep
  - https://github.com/gnustep/libs-base/blob/master/Source/NSData.m#L2099
- apportable/foundation
  - https://github.com/apportable/Foundation/blob/master/System/Foundation/src/NSData.m#L646
  - https://github.com/apportable/Foundation/blob/master/System/Foundation/src/_NSFileIO.m#L232

It can be the symlink change in D56303593 make this path / device / mount point condition becomes a issue. By writing the `.xctestconfiguration` to where we store the `.xctest`, things are good now

Reviewed By: Nekitosss

Differential Revision: D56478995

fbshipit-source-id: a7ea532015ff1ea78e19ff9d2accd91df2d11497
…up the test running time

Summary:
## Hypothesis of slow running tests

1. Some test bundles are fat: `//xplat/arfx/skylight/app/ui/simulator_preferences:SkylightSimulatorPreferencesTestsAppleMac` is 2.4GB
2. The copying probably triggers some macOS security check that dyld then spend a quite long time to verify the binary (D55436652)

## Fixing approaching

- After discussing with jbardini, We use symlinks to buck-out folder instead of copying from buck-out folder
- After discussing with Nekitosss We were thinking to just use the buck-out folder in place, however some lines like these would still rely on the behavior of locating xctest bundles in the "basePath" - so we have to refactor that part in order to just use buck-out folder in place.
https://www.internalfb.com/code/fbsource/[9f3a206a2380]/fbobjc/EndToEndTests/FBSimulatorControl/src/CompanionLib/Utility/FBIDBStorageManager.m?lines=389-415

## Outcome

- Big-size mac tests now run faster (check the test plan - from around 70 secs to less than 2 secs)
- Disk usage of running tests is now half than before - very helpful when batch running big-size tests on Sandcastle diff-time and continuous jobs.

Reviewed By: Nekitosss

Differential Revision: D56303593

fbshipit-source-id: 1ab0f251991a0e2e2abc47060302cf71a30b62a5
)

Summary:
This pull request converts the CircleCI workflows to GitHub actions workflows. [Github Actions Importer](https://github.com/github/gh-actions-importer) was used to convert the workflows initially, then I edited them manually to correct errors in translation.

**Issues**

1. _facebook/idb/build_and_deploy -> deploy-website_

```
Error: Running "git push" command failed. Does the GitHub user account you are using have push access to the repository?
```

This is due to the fact that `${{ secrets.GITHUB_TOKEN }}` is either undefined or doesn't have the appropriate permissions or scopes enabled to access the repository.

## How did you test this change?

I tested these changes in a [forked repo](https://github.com/robandpdx-org/idb/actions/runs/7717454971).

https://fburl.com/workplace/f6mz6tmw

Pull Request resolved: facebook#861

Reviewed By: Nekitosss

Differential Revision: D56620612

Pulled By: jbardini

fbshipit-source-id: 00b543d0019df4b59324d96582cce321a82c331a
Summary: Only because it makes the next diff easier to read.

Reviewed By: lawrencelomax

Differential Revision: D57011633

fbshipit-source-id: 1c6d5b99101c0ee66bb795b4936b8122053fc601
Reviewed By: lawrencelomax

Differential Revision: D57011949

fbshipit-source-id: 34ab6ec8c8aec6afc275fda588f9218be16ad4fb
Summary:
When using `unittest.TestCase`, any coroutines that look like test cases won't be  awaited properly, causing the test to pass immediately.

This diff fixes these test cases by switching to `unittest.IsolatedAsyncioTestCase` which will start properly running these tests. I fully expect red signal on this diff, but will still land it, because a failing test is better than a silently skipped one.

This diff was produced by:
```
sl go D57273213
cd fbcode
arc lint --take FIXIT --paths-cmd 'hg files -I "**/*.py" | grep test' -a
HG: manually revert unrelated fixit changes
sl st | awk '{print $2}' | xargs pylot run fbcode//python/libcst/ codemod ensure_import_present.EnsureImportPresentCommand --module unittest --entity IsolatedAsyncioTestCase
sl st | awk '{print $2}' | xargs pylot run fbcode//python/libcst/ codemod remove_unused_imports.RemoveUnusedImportsWithGlean
HG: manually add back these unused imports unrelated to this change: P1370679492
HG: split the diff per oncall
./scripts/zsol/split.sh
```

Reviewed By: Nekitosss

Differential Revision: D57771323

fbshipit-source-id: efb6632235e6be396fdddace969e9c480f7aea53
Summary:
there was a unit test failing, that blocks contbuild for RI https://www.internalfb.com/intern/test/562950028975323?ref_report_id=0

https://www.internalfb.com/sandcastle/workflow/117093590327028273

I debugged the problem to the `os.path.exists(testHostPath)` check which returns `False`, because files provided in the config have never been created in the test run. This diff creates these files to satisfy the check

Differential Revision: D58088315

fbshipit-source-id: bbaf1a555fd008668998c590189ec271e0bce907
Summary: The mypy-protobuf we use doesn't support proto3 optional fields. It's also really really outdated. The project has since been rewritten in Python. The previous diffs in the stack import it, this one moves the protobuf compiler to use the new version.

Reviewed By: c-ryan747

Differential Revision: D58193786

fbshipit-source-id: e83ae25db2cc7d3ea99953d33dd44fde22cc792d
@guillaumelevass guillaumelevass changed the title Update to latest idb Update to latest idb to enable compatibility with more recent devices Oct 9, 2024
@guillaumelevass guillaumelevass marked this pull request as ready for review October 9, 2024 21:48
@guillaumelevass guillaumelevass requested a review from bitter October 9, 2024 21:49
Copy link
Member

@bitter bitter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unity-main is the default branch for this repository (and pram usage)

@guillaumelevass guillaumelevass changed the base branch from main to unity-main October 10, 2024 17:54
@bitter bitter merged commit aeca966 into unity-main Oct 15, 2024
1 check passed
@bitter bitter deleted the graphics/ugk/update-to-latest branch October 15, 2024 18:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.