MobileNativeFoundation / MobileNativeFoundation/rules_xcodeproj

Bug: Unable to navigate to source using Thread Performance Checker

Open
#1,128 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug BwB
Dominant language
Swift
Stars
626
Forks
124
PR merge metrics
No merged PRs in 30d

Description

Describe the bug

When receiving a runtime warning using the Thread Performance Checker (i.e. "Hang Risk"), clicking on stack traces does not navigate to the source.

Example warning printed to logs:

Thread Performance Checker: Thread running at QOS_CLASS_USER_INITIATED waiting on a lower QoS thread running at QOS_CLASS_DEFAULT. Investigate ways to avoid priority inversions
PID: 92886, TID: 47811725
Backtrace
=================================================================
4   App                               0x000000010798761c $s19DraftSyncingServiceAAC15performMutation33_5ED92EF1E01BF8A8ED6B9AB9B2F5608ELL12traceContext_10PromiseKit0R0Cy10DataModels0A0V10IdentifierVG05TraceC9Interface0wQ0_pSg_yAB0A5StateVzKctFyAF8ResolverCyAMGXEfU_yycfU_ + 1016
5   App                               0x0000000105138d38 $sIeg_IeyB_TR + 48
6   libdispatch.dylib                   0x000000011b5ac594 _dispatch_call_block_and_release + 24
7   libdispatch.dylib                   0x000000011b5add5c _dispatch_client_callout + 16
8   libdispatch.dylib                   0x000000011b5b6040 _dispatch_lane_serial_drain + 928
9   libdispatch.dylib                   0x000000011b5b6d80 _dispatch_lane_invoke + 428
10  libdispatch.dylib                   0x000000011b5c4b40 _dispatch_workloop_worker_thread + 1720
11  libsystem_pthread.dylib             0x00000001ae55eb40 _pthread_wqthread + 284
12  libsystem_pthread.dylib             0x00000001ae55d904 start_wqthread + 8

As seen in the Issue navigator

CleanShot 2022-09-20 at 21 19 27@2x

Reproduction steps

  1. Generate with BwB
  2. Receive a Hang Risk
  3. Click on any stack frame, nothing happens

This works fine in BwX

Expected behavior

Clicking navigates

Versions

  • Bazel:
  • rules_xcodeproj: main (0.8+)
  • rules_apple:
  • rules_swift:

Additional context

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source file or test is identified in the issue. Reproduce the Thread Performance Checker warning from the listed steps, then inspect the stack-frame navigation path and compare it with the behavior in BwX. Done means clicking a reported stack frame navigates to the corresponding source location.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
developer-experience
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.