-
Notifications
You must be signed in to change notification settings - Fork 16
Update private headers for Xcode 11.5 #389
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
Conversation
| // Copyright (c) Microsoft Corporation. All rights reserved. | ||
| // Licensed under the MIT license. | ||
|
|
||
| #ifndef XCT_UI_TESTING_AVAILABLE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jmoody what do you think about it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like Apple removed this enum. I cannot find it in the private headers.
I recommend you open an XCUITest project in Xcode 11.5 (the Palisade project would be a good choice) - and see if symbols like XCUIApplicationStateRunning are available.
If Apple has removed this, then we will need to make changes to DeviceAgent because values are used in a few places - notably in Application.m
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We've investigated the issue with the PR in the current state and didn't encounter any particular issues with Enums being deleted from private headers. This whole situation with the Enum is strange because the fact that it's deleted or is due to be deleted can't be found in any changelogs and documentation.
We're using the copy of it in the project, so there shouldn't be any issues.
Regards to the macro XCT_UI_TESTING_AVAILABLE: it is no longer used in the project, so we shouldn't encounter this issue again.
jmoody
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to sort out what happened to the XCUIApplicationState enum. If it is gone, we need to find a replacement.
| // Copyright (c) Microsoft Corporation. All rights reserved. | ||
| // Licensed under the MIT license. | ||
|
|
||
| #ifndef XCT_UI_TESTING_AVAILABLE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like Apple removed this enum. I cannot find it in the private headers.
I recommend you open an XCUITest project in Xcode 11.5 (the Palisade project would be a good choice) - and see if symbols like XCUIApplicationStateRunning are available.
If Apple has removed this, then we will need to make changes to DeviceAgent because values are used in a few places - notably in Application.m
| // Copyright (c) Microsoft Corporation. All rights reserved. | ||
| // Licensed under the MIT license. | ||
|
|
||
| #ifndef XCT_UI_TESTING_AVAILABLE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We've investigated the issue with the PR in the current state and didn't encounter any particular issues with Enums being deleted from private headers. This whole situation with the Enum is strange because the fact that it's deleted or is due to be deleted can't be found in any changelogs and documentation.
We're using the copy of it in the project, so there shouldn't be any issues.
Regards to the macro XCT_UI_TESTING_AVAILABLE: it is no longer used in the project, so we shouldn't encounter this issue again.
We don't expect Apple to document changes in their private APIs. |
After running
bin/class-dump/dump.rb, three major errors occurred:XCTSwiftErrorIssue
We deleted
Server/PrivateHeaders/XCTest/XCTSwiftErrorObservation_Overlay-Protocol.hheader and dependencies to itXCUIApplicationState
There were an issue in the
XCUIApplicationStatetype definition. Type wasn't defined due to#ifndef XCT_UI_TESTING_AVAILABLEconstruction. XCT_UI_TESTING_AVAILABLE was defined, and because of this, XCUIApplicationState was not defined.We've removed the check for
XCT_UI_TESTING_AVAILABLEis defined. Please, take a look at it.XCUIElementSnapshotRequestResult
Missing class forward