react-native-community / react-native-community/cli

doctor: check for combination of ccache and static analysis in iOS

Open
#1,576 10 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

command: doctor feature request no-stale-bot
Dominant language
TypeScript
Stars
2.9k
Forks
949
PR merge metrics
No merged PRs in 30d

Description

Describe the Feature

@tido64 noted in https://github.com/facebook/react-native-website/pull/3027#discussion_r836231851 (a pull request that implies using ccache is great) that if you enable static analysis in your Xcode project, ccache is incompatible because of some pathing issues inside Xcode tooling

Possible Implementations

  • inspect pbxproj files for static analysis flags
  • somehow discover if ccache is in use on the system for the Xcode build?
    • inspect pbxproj?
    • check Podfile for CLANG/CLANG++ etc settings in post_install?
    • check environment variables - somehow as they are setup for build - to see if CLANG is defined && CCACHE_DISABLE is not?

Related Issues

Linked above

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

Start with the CLI's doctor checks and investigate how an iOS project's pbxproj, Podfile post_install settings, and build environment could reveal static analysis and ccache usage. Done means the doctor reliably detects the incompatible combination and reports it clearly, with the detection approach resolved.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, typescript
Domain
cli, mobile
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.