Skip to content

fix(visionOS): Remove Interoperability mode for visionOS#6077

Merged
itaybre merged 16 commits into
mainfrom
itay/remove_iterop_mode_xrOS
Sep 8, 2025
Merged

fix(visionOS): Remove Interoperability mode for visionOS#6077
itaybre merged 16 commits into
mainfrom
itay/remove_iterop_mode_xrOS

Conversation

@itaybre

@itaybre itaybre commented Sep 4, 2025

Copy link
Copy Markdown
Contributor

📜 Description

Removes swift's interoperability mode set to C++.

💡 Motivation and Context

If we have swift interoperability mode, each target depending on Sentry will need to enable this which is annoying.

💚 How did you test it?

📝 Checklist

You have to check all boxes before merging:

  • I added tests to verify the changes.
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled.
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • Review from the native team if needed.
  • No breaking change or entry added to the changelog.
  • No breaking change for hybrid SDKs or communicated to hybrid SDKs.

Closes #6103

@codecov

codecov Bot commented Sep 4, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 86.592%. Comparing base (8203ac0) to head (f4d8a1e).
⚠️ Report is 9 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@              Coverage Diff              @@
##              main     #6077       +/-   ##
=============================================
- Coverage   86.602%   86.592%   -0.011%     
=============================================
  Files          432       433        +1     
  Lines        36956     36941       -15     
  Branches     17426     17416       -10     
=============================================
- Hits         32005     31988       -17     
  Misses        4907      4907               
- Partials        44        46        +2     
Files with missing lines Coverage Δ
...ces/Swift/Helper/SentryMobileProvisionParser.swift 83.333% <100.000%> (-1.852%) ⬇️

... and 17 files with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8203ac0...f4d8a1e. Read the comment docs.

@github-actions

github-actions Bot commented Sep 4, 2025

Copy link
Copy Markdown
Contributor

Performance metrics 🚀

  Plain With Sentry Diff
Startup time 1220.40 ms 1250.61 ms 30.22 ms
Size 23.75 KiB 960.94 KiB 937.19 KiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
ef2c9b3 1222.12 ms 1253.96 ms 31.84 ms
c8dd5e4 1217.67 ms 1242.90 ms 25.23 ms
ab0ba7e 1216.08 ms 1242.40 ms 26.31 ms
354b020 1223.88 ms 1236.82 ms 12.94 ms
25f2d2c 1232.02 ms 1242.78 ms 10.76 ms
e446901 1233.32 ms 1252.32 ms 19.00 ms
27e7514 1229.47 ms 1245.60 ms 16.13 ms
7273bf4 1202.42 ms 1227.62 ms 25.21 ms
c03a8d8 1234.77 ms 1259.19 ms 24.42 ms
6cb4338 1238.47 ms 1256.96 ms 18.49 ms

App size

Revision Plain With Sentry Diff
ef2c9b3 23.75 KiB 933.03 KiB 909.29 KiB
c8dd5e4 23.75 KiB 913.48 KiB 889.72 KiB
ab0ba7e 23.75 KiB 904.54 KiB 880.79 KiB
354b020 23.75 KiB 878.19 KiB 854.44 KiB
25f2d2c 23.75 KiB 866.69 KiB 842.94 KiB
e446901 23.75 KiB 933.33 KiB 909.58 KiB
27e7514 23.75 KiB 919.69 KiB 895.94 KiB
7273bf4 23.75 KiB 908.01 KiB 884.26 KiB
c03a8d8 23.75 KiB 928.15 KiB 904.40 KiB
6cb4338 23.75 KiB 913.63 KiB 889.88 KiB

Previous results on branch: itay/remove_iterop_mode_xrOS

Startup times

Revision Plain With Sentry Diff
f08c6d9 1217.92 ms 1238.52 ms 20.60 ms
821c3ff 1205.94 ms 1245.33 ms 39.39 ms
e677158 1230.94 ms 1259.51 ms 28.57 ms

App size

Revision Plain With Sentry Diff
f08c6d9 23.75 KiB 947.54 KiB 923.79 KiB
821c3ff 23.75 KiB 959.44 KiB 935.69 KiB
e677158 23.75 KiB 946.69 KiB 922.94 KiB

@itaybre itaybre marked this pull request as ready for review September 4, 2025 18:36
@itaybre

itaybre commented Sep 4, 2025

Copy link
Copy Markdown
Contributor Author

@philipphofmann this was enabled on this commit: 4569cc9
Do you have some insight why this was needed, it seems to build fine right now?

I will remove Package@swift5.9.swift on a later PR

@philipphofmann

philipphofmann commented Sep 5, 2025

Copy link
Copy Markdown
Member

@philipphofmann this was enabled on this commit: 4569cc9 Do you have some insight why this was needed, it seems to build fine right now?

Nope, sorry, I have no idea. I have little knowledge of the interoperability mode. If you've done your research and don't think we need it, I can only ask how can we ensure we don't break anything and how can we test this?

Maybe a review from @noahsmartin would be useful cause his knowledge on such topics is way more extensive than mine.

@philprime

Copy link
Copy Markdown
Member

4569cc9 points to #4462 which closed #3809, where quite a lot of people were asking for this to be enabled.

You should probably perform the same checks as done in this comment:
#3809 (comment)

@itaybre

itaybre commented Sep 5, 2025

Copy link
Copy Markdown
Contributor Author

Thanks @philprime, I was able to reproduce with those comments.
Looks like the problem is Xcode not linking with libc++ automatically when using the static version, we can manually add it to a target and looks to be fixing the issue.

I will add an integration test to ensure this is working

@itaybre

itaybre commented Sep 5, 2025

Copy link
Copy Markdown
Contributor Author

Proof of the fix and a verification job to are working: https://github.com/getsentry/sentry-cocoa/actions/runs/17501347281/job/49715077730?pr=6092

Comment thread Package@swift-5.9.swift Outdated
@itaybre itaybre merged commit f5666e7 into main Sep 8, 2025
190 of 193 checks passed
@itaybre itaybre deleted the itay/remove_iterop_mode_xrOS branch September 8, 2025 20:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(visionOS): Remove Interoperability mode for visionOS

4 participants