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

v1.7.14 #98

Merged
merged 4 commits into from Sep 23, 2019
Merged

v1.7.14 #98

merged 4 commits into from Sep 23, 2019

Conversation

cb1kenobi
Copy link
Contributor

@cb1kenobi cb1kenobi commented Sep 18, 2019

  • fix: Moved simctl and simulator executable definition from findSimulators() to detect() so that exact Xcode simctl path is coupled with each sim handle.
  • refactor: Revamped sim runtime lookup and added a device type lookup which eliminated a 3rd level nested for loop and simplifies valid runtime resolution.
  • fix: Fixed bug where non-iPhone, non-iPad, and non-Watch device types would be treated as watch devices and ultimately cause an error because Apple TV devices don't have a model number.
  • refactor: Removed 'isAvailable' property added in PR feat(certs): support detecting apple certs #93 since the correct solution is not to track availability, but separate the selected Xcode from the Xcode associated with the requested simulator.
  • fix: Added check to ensure watchCompanion cache only considers valid watchOS ranges.
  • fix: Correct sort Xcodes in findSimulators() so that the iOS version takes precedence followed by the system selected Xcode and the latest version.
  • fix: Select Xcode version based on specified iOS SDK version, system selected version, or latest version and don't worry about the version used to launch the simulator.
  • style: Removed a handful of unused variables.
  • fix: Fixed simulator device pair compatiblity lookup where >=4.x and >=3.2 would incorrectly include watchOS 5 and 6.
  • chore: Updated npm deps within minor/patch ranges.

Related ticket: https://jira.appcelerator.org/browse/TIMOB-27338 and https://jira.appcelerator.org/browse/TIMOB-27397

fix: Moved simctl and simulator executable definition from findSimulators() to detect() so that exact Xcode simctl path is coupled with each sim handle.
refactor: Revamped sim runtime lookup and added a device type lookup which eliminated a 3rd level nested for loop and simplifies valid runtime resolution.
fix: Fixed bug where non-iPhone, non-iPad, and non-Watch device types would be treated as watch devices and ultimately cause an error because Apple TV devices don't have a model number.
refactor: Removed 'isAvailable' property added in PR #93 since the correct solution is not to track availability, but separate the selected Xcode from the Xcode associated with the requested simulator.
fix: Added check to ensure watchCompanion cache only considers valid watchOS ranges.
fix: Correct sort Xcodes in findSimulators() so that the iOS version takes precedence followed by the system selected Xcode and the latest version.
fix: Select Xcode version based on specified iOS SDK version, system selected version, or latest version and don't worry about the version used to launch the simulator.
style: Removed a handful of unused variables.
fix: Fixed simulator device pair compatiblity lookup where >=4.x and >=3.2 would incorrectly include watchOS 5 and 6.
chore: Updated npm deps within minor/patch ranges.
@ewanharris
Copy link
Contributor

@cb1kenobi, I'm still seeing the problem stated in TIMOB-27338 with these changes.

Repro steps:

  1. Ensure you have an xcode 11 and xcode 10
  2. Set xcode-select to point at xcode 11 `sudo xcode-select -s <xcode 11 path>
  3. Find the UDID of a 12.4 sim (the sim runtime tied to xcode 10)
  4. Build to that simulator appc run -p ios -C <UUID>
  5. With the simulator still booted, rebuild appc run -p ios -C <UUID>

Result: [ERROR] Invalid iOS simulator "B6A14F9E-D3DE-4195-BDEB-90BC23B1B49A"

(you can switch the xcode versions, and pick iOS 13 and you'll see the same)

Looking at the changes, we're still only running the simctl from the selected xcode, which as stated in the ticket is why we don't see the booted sim (it's not in that listing).

Copy link
Contributor

@ewanharris ewanharris left a comment

Choose a reason for hiding this comment

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

Seeing some issues when building to a watch sim

lib/simulator.js Outdated Show resolved Hide resolved
lib/simulator.js Show resolved Hide resolved
Copy link
Contributor

@ewanharris ewanharris left a comment

Choose a reason for hiding this comment

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

Changes look good to me!

@ewanharris
Copy link
Contributor

@cb1kenobi, as we're now running more simctl calls, might this be causing the timeouts on jenkins? Do you wanna try bumping those?

@ewanharris ewanharris merged commit aa91c85 into 1_7_X Sep 23, 2019
@ewanharris ewanharris deleted the TIMOB-27338_1_7_X branch September 23, 2019 16:53
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.

None yet

2 participants