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

Xcode7 Support #354

Merged
merged 21 commits into from
Sep 16, 2015
Merged

Xcode7 Support #354

merged 21 commits into from
Sep 16, 2015

Conversation

briancroom
Copy link
Contributor

Hey folks, the time has come to finally see about getting this merged into master. I have rebased this as a new branch because I managed to botch merging master into the long-lived Xcode7 branch a while back, and didn't want to deal with figuring out how to resolve that mess.

In addition to the great work that @tjarratt and pairs did over the course of the summer to get the Xcode 7 support bootstrapped and to fix some of the symbolication issues, I have now done a bunch of additional cleanup to try to get things in good shape. This includes:

  • Use a build-time environment variable to more dynamically determine the path to the atos tool
  • Update the test bundle specs so that they do the appropriate checks on both Xcode 6 and 7
  • Remove the "OSX Failing Test Bundle" target because it didn't seem to be providing value anymore
  • Refactor the test bootstrapping code a bit to greatly improve code sharing between spec suite and spec bundle execution

At this point, rake passes on my workstation when building with Xcode 7 GM, and Travis should be passing, although it is not using Xcode 7 yet. There are some extra issues related to the Travis build being discussed at #345.

Please give it a whirl and let me know if there are any critical issues that would prevent us from getting this merged in!

(Pinging some people who have been involved in the discussion at #333: @akitchen @tjarratt @alexbasson @joemasilotti @mjstallard)

tjarratt and others added 21 commits September 14, 2015 13:52
Leaving the old hacks for Xcode 6 since the XCTestObservation protocol
was previously deprecated, behaved differently then, and the observation
center had not been introduced then.
Shoutout to @jeffh for catching these.
We should revert / rewrite history before this branch is merged into master. This is purely
for our convenience when running tests against the xcode 7 betas.
This allows us to run the same tasks, regardless of which xcode version is
available and currently selected.
We discovered today that building specs with Xcode 7 introduces a different
0 indexed dyld image compared to previous versions.

Starting in Xcode 7 the image is something like

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib/dyld_sim (or Xcode-beta)

Where in previous versions it would be the path to the application that
was going to be run (e.g.: either your specs app, or the production app
in the case of test bundles).
Also delete the OS X Failing Test Bundle because recent Xcode versions make it
nearly impossible to link a test bundle without XCTest
@tjarratt
Copy link
Contributor

Thanks so much for taking the time to clean this up and make this easier to maintain, @briancroom! This looks great.

tjarratt added a commit that referenced this pull request Sep 16, 2015
@tjarratt tjarratt merged commit 7f43f30 into master Sep 16, 2015
@adamhrz
Copy link

adamhrz commented Sep 17, 2015

@briancroom This is merged into master now - is xcode7 branch still relevant or should we use master for xcode 7 builds?

@briancroom
Copy link
Contributor Author

@adamhrz The master branch now contains the latest code for both Xcode 6 and 7.

@tjarratt Do you think we should just go ahead and delete the long-lived Xcode7 branch now?

@tjarratt tjarratt deleted the Xcode7-support branch September 17, 2015 22:23
@tjarratt
Copy link
Contributor

Deleting that branch will cause anyone using it to realize that something that changed, so it seems reasonable to delete it so no one continues to rely on it. I'm for deleting it.

@adamhrz
Copy link

adamhrz commented Sep 21, 2015

@briancroom @tjarratt Do you know when PivotalCoreKit will update to the XCode 7 version of Cedar?

@briancroom
Copy link
Contributor Author

@adamhrz There is a PR open at pivotal-legacy/PivotalCoreKit#156 which I need to revisit and update a bit now that the Cedar's Xcode 7 work has been merged.

@adamhrz
Copy link

adamhrz commented Sep 21, 2015

@briancroom thanks for the update. Do you think we're looking at 2 weeks, a month or longer as a timeframe? Trying to plan our own migration and since we use Cedar and Pivotal we're trying to decide if it's worth a local patch in the short term

@briancroom
Copy link
Contributor Author

I'm thinking it shouldn't be too long - definitely within 2 weeks unless unforeseen difficulties arise.

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.

4 participants