-
Notifications
You must be signed in to change notification settings - Fork 512
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Fix symbolication in Yosemite and Xcode6 #597
Fix symbolication in Yosemite and Xcode6 #597
Conversation
atos in 10.0 with a process id no longer works for the simulator so use the executable path instead. This patch introduces KWBackgroundTask to remove use of the dangerous `-[NSTask waitUntilExit];` and encapsulate use of NSTask. + breakout callsite creation for symbolicated addresses from KWExample by adding a factory for KWCallSite.
👍 I would love to see this fix merged in, since it is a pitty not being able to run the tests from Xcode 🙏 |
#import <objc/runtime.h> | ||
#import <libunwind.h> | ||
#import <pthread.h> |
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.
This import doesn't appear to be used anywhere in this file.
Thanks @jerrymarino, I've tested this out on my machine and it appears to work just fine! 👍 I'm a little bit nervous about this code:
So to the end of making this as clear as possible for future maintainers, what do you think about these suggestions?
Ultimately I'm happy to merge this pretty soon, but if there's anything we can do to improve the overall clarity of this beforehand I think that would be a win for everybody! |
Thanks again @jerrymarino! I decided to go ahead and extract |
Hey @sharplet glad I could help out on this one. I tested it out on both 10.9 and 10.10 and it worked great. I believe It'd be helpful to have developer documentation for this. Inline comments could be sufficient and potentially add a page/section in the wiki for higher level design documentation. Do you think it is appropriate to put design docs in the wiki some where? I'll can submit a follow up soon 😄 |
@jerrymarino I think I'd prefer to keep to user-facing docs in the wiki. So something in the source code should be most appropriate for developer documentation! I'd be happy for you to create a new |
I just ran into this issue on Kiwi 2.3.1 (since it's the latest Kiwi version on cocoapods). Will there be an official Kiwi release with this fix anytime soon so we don't have to use master? |
@lyahdav Yep, just pushed 2.4.0! https://github.com/kiwi-bdd/Kiwi/releases/tag/v2.4.0 |
@sharplet 👏🎉🎊🎆✨💥🎋🎏 |
I'm still getting this deadlock. OS X 10.10.5, Xcode 7.0, iOS 9.0, Kiwi 2.4.0. |
While this fixes the dead lock bug Yosemite, I still think this feature could be improved:
atos
to symbolicate the callers address. It should instead be performed once with all the potential caller addresses of it/before/context nodes in the focused file. This would be a huge improvement (Kiwi test suite hangs indefinitely in KWSymbolicator while waiting for /usr/bin/atos #596)."atos in 10.0 with a process id no longer works for the simulator so use the
executable path instead.
This patch introduces KWBackgroundTask to remove use of the dangerous
-[NSTask waitUntilExit];
and encapsulate use of NSTask.a factory for KWCallSite."