bazelbuild / bazelbuild/rules_apple
State of code coverage?
- Dominant language
- Starlark
- Stars
- 593
- Forks
- 334
- Avg merge
- 16h 48m
- Merged PRs (30d)
- 9
Description
I've been looking through bazel/rules_apple/apple_support/rules_swift and it appears that there's a decent amount of integration for supporting code coverage that could work for iOS. But it seems like some critical pieces are not hooked up, like [empty filegroups](https://github.com/bazelbuild/apple_support/blob/77c9d5371949352c00bc74d4755c93e00199172b/tools/BUILD#L3-L9), [stub binaries](https://github.com/bazelbuild/bazel/blob/34bf56f25eb1bed7fbd5c4cf7bae15bf461cf904/tools/objc/gcov_stub) and variables that [wouldn't be passed through to iOS tests](https://github.com/bazelbuild/bazel/blob/34bf56f25eb1bed7fbd5c4cf7bae15bf461cf904/tools/test/collect_coverage.sh#L79).
What's the plan with supporting code coverage for iOS? Is this something that's already supported inside of Google but not in the public for some reason?
Contributor guide
Research direction
Start by reading bazel/rules_apple/apple_support/rules_swift and the referenced empty filegroups in tools/BUILD. Compare the stub binary in tools/objc/gcov_stub with tools/test/collect_coverage.sh, focusing on the variables not passed to iOS tests. Done would require an agreed implementation plan and demonstrated iOS test coverage support.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system, mobile-dev, testing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100