Skip to content
This repository was archived by the owner on Mar 10, 2025. It is now read-only.
This repository was archived by the owner on Mar 10, 2025. It is now read-only.

KSP/Kapt execution order #50

@yaraki

Description

@yaraki

The module :framework:processor is a KSP processor. It takes @Sample annotations and turns them into dagger components. Then, Dagger (Hilt) runs as a Kapt processor. That is, the build of this project relies on the current execution order of KSP before Kapt.

In fact, this order changes when I bump KSP to 1.9.10-1.0.13. Dagger on Kapt tries to run before our KSP processor and fails (70c3932).

One possible solution is to use migrate to Dagger on KSP, but this didn't work well either. There is a way for a KSP processor to wait for other KSP processors (https://kotlinlang.org/docs/ksp-multi-round.html), but Dagger doesn't seem to implement it (e486b1f).

Giving up the version bump of Dagger means giving up the version bump of Kotlin as well as Compose and all the other libraries tied with a Kotlin version.

What should we do?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions