Hive Hive
Sign in

App extension with test target is not supported by tuist

GitHub issue · Open

Metadata
Source
tuist/tuist #11478
Updated
Jun 24, 2026
Domains
Generated projects
Details

What happened?

I wanted to add test target for one of my app extension but it’s not supported by tuist.

How do we reproduce it?

LintableTarget(platform: .iOS, product: .appExtension), is missing here

The bug is described in this topic https://github.com/tuist/tuist/issues/6553 It was fixed, but it seems to be present in main again https://github.com/tuist/tuist/blob/main/cli/Sources/TuistGenerator/Linter/GraphLinter.swift#L516

Error log

Target WExtTests has platforms ‘iOS’ and product ‘unit tests’ and depends on target WUIExt of type ‘app extension’ and platforms ‘iOS’ which is an invalid or not yet supported combination.

macOS version

26.5.1

Tuist version

4.196.0

Xcode version

26.5.1

Comments
D
dosubot[bot] Jun 24, 2026

Hi @tonicfx! I’m Dosu and I’m helping the Tuist team.

You’re right — LintableTarget(platform: .iOS, product: .appExtension) is indeed missing from the valid dependency list for iOS unit tests in GraphLinter.swift [1]. The current valid dependencies for LintableTarget(platform: .iOS, product: .unitTests) are limited to .app, .staticLibrary, .dynamicLibrary, .framework, .staticFramework, .bundle, .appClip, and .macro — but .appExtension is not included.

This looks like a regression from the fix in #6553. Adding LintableTarget(platform: .iOS, product: .appExtension) to that list should resolve the linting error.

For debugging and potentially contributing a fix, you could try installing this skill following the steps in this repo and use a coding agent like Claude, Codex, or Amp to work through the issue. Alternatively, a PR adding .appExtension to the validLinks dictionary entry for iOS unit tests at line ~516 in GraphLinter.swift should be a straightforward fix.

To reply, just mention @dosu.


Docs are dead. Just use Dosu.

Leave Feedback Ask Dosu about tuist Share Dosu with your team