-
-
Notifications
You must be signed in to change notification settings - Fork 594
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
throwAssertion not working with Rosetta #961
Comments
Same here. It seems that this has been fixed. We're waiting for the next release. |
I have already checked if the current state of the project fixes the problem, unfortunately it does not. |
I also still see the issue when using main branch. I'm not using Xcode Rosetta, but I have excluded arm64 architecture so simulator/tests are still running against x86. |
Bumping this, running to this issue as well. Created a test project demonstrating the issue here |
@Veeit - since you've been dealing with this for almost a month now, wondering if you've found any useful workarounds. Are you just commenting out tests? Or perhaps only conditionally running the tests based on current architecture? |
I removed the throwAssertion from nimble, that will not runt the tests but it will allow you to run everything else. |
It works perfectly fine when the debugger is not attached (Edit scheme -> Test -> Uncheck "Debug Executable"). I suspect that the debugger handles the exception before the exception handler (The one that |
This is definitely something we should fix as soon as we can. Ultimately, my investigation was able to trace it down to an issue with CwlPreconditionTesting, and they already have an open issue for that. Unfortunately, I have no idea how to investigate why this is happening, let alone what I could do to fix it. I'll monitor that issue and update the version Nimble ships with once it's fixed. I'm so sorry about this! |
Thanks for the update @younata - really excited to have you helping us out 🙏 🙏 |
I'm going to bump this to the v11 milestone. If there's a fix released for this upstream, we'll issue a bugfix release of Nimble including that fix. |
Just an update - may be obvious, but I don't think this is only due to enabling Rosetta. It may just be whenever running on an iOS Simulator using an Intel-based architecture on an M1 mac. I unticked "Open with Rosetta" for both Xcode and Simulator on my machine, but added |
For anyone still following this, we implemented a temporary solution to essentially wrap actual exception handling within our test executions. Here's a gist that roughly outlines how we're circumventing this issue. |
This is the same problem actually, just from a different angle. Looks like it fails to capture assertion when it is thrown on |
Bumping this to the next (major?) release in favor of getting async/await support out the door sooner. |
Per Matt Gallagher, this is apparently ultimately a bug with lldb on rosetta? His suggestion is to disable "Debug executable" for the test target when you're running under rosetta. mattgallagher/CwlPreconditionTesting#26 (comment) I'm going to close this, even though it's not a satisfying ending. My apologies for the inconvenience. |
What did you do?
I upgraded my system to M1 Pro hardware, installed the project with Pod Install. Changed Xcode to Rosetta Mode (I need this because we have not updated xcframeworks inside the project). And run the tests, I now get a fatalError as soon as a test wants to test it. The tests are working fine inside the pipeline and on Intel. I updated Nimble to use the current main Branch because I saw there is a commit for it. But that didn't help.
I would love to see a update for this, and that the throwAssertion is working again.
Environment
List the software versions you're using:
Please also mention which package manager you used and its version. Delete the
other package managers in this list:
The text was updated successfully, but these errors were encountered: