Skip to content

Conversation

@vaind
Copy link
Collaborator

@vaind vaind commented Jul 3, 2025

  • disable tests that require FS access
  • fix module_finder code or tests - currently fails on debug_id check: test_modulefinder.c:30: Check sentry_value_get_type(debug_id) == SENTRY_VALUE_TYPE_STRING... failed - moved to a followup issue Xbox non-fatal stack trace test #1300
  • disable module_finder test

#skip-changelog

@vaind
Copy link
Collaborator Author

vaind commented Jul 3, 2025

@supervacuus you're marked as the one to contribute the module-finder code for xbox - any idea why debug images wouldn't have debug_id? I don't have xbox-devkit access right now to debug so I only know tests fail in CI

@vaind vaind marked this pull request as ready for review July 4, 2025 08:41
@supervacuus
Copy link
Collaborator

@supervacuus you're marked as the one to contribute the module-finder code for xbox - any idea why debug images wouldn't have debug_id? I don't have xbox-devkit access right now to debug so I only know tests fail in CI

Tbh, I have no idea without more context. There are a couple of failure modes that could result in missing debug IDs on Windows. It would also be interesting to know whether this happens for all modules or just a few.

I could imagine that on Xbox, some modules do not have codeview records (or maybe the test was accidentally built as release only?).

We did not adapt the debug ID extraction for Xbox; the only changes in that regard were made wrt querying the loaded modules. It seems like it loaded some modules, because otherwise we wouldn't do the debug ID check.

@vaind vaind changed the title chore: xbox test fixes chore: Xbox: disable select Jul 4, 2025
@vaind vaind changed the title chore: Xbox: disable select chore: Xbox: disable select tests Jul 4, 2025
@vaind
Copy link
Collaborator Author

vaind commented Jul 4, 2025

or maybe the test was accidentally built as release only?

Indeed I've changed this sometime in the process of trying to make this work and forget to go back. That was the culprit of module_finder test failure so I've reverted the change. However, to make it work with debug builds, a cmake toolchain update is necessary, so I've created a new PR #1302 to replace this one

@supervacuus
Copy link
Collaborator

or maybe the test was accidentally built as release only?

Indeed I've changed this sometime in the process of trying to make this work and forget to go back. That was the culprit of module_finder test failure so I've reverted the change. However, to make it work with debug builds, a cmake toolchain update is necessary, so I've created a new PR #1302 to replace this one

Okay, thanks @vaind, that makes sense.

So, to be clear: the test can run as a Release build, but it needs debug information (i.e., RelWithDebInfo), because we extract the debug ID from the ClearView PE header, which only exist if PDB files have been created (which do not need to be transferred to the machine test executes on, but if they weren't built, there would simply be no header in the executable referencing them, and thus no debug ID).

@vaind vaind closed this Jul 4, 2025
@vaind vaind deleted the test/xbox-fixes branch July 5, 2025 18:55
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.

3 participants