-
Notifications
You must be signed in to change notification settings - Fork 417
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[K2] Use only stable compiler API #3141
Comments
After a quick chat with @darthorimar, we agreed that the Dokka team will create a list of non-stable API that Dokka uses (in other words, the API we use from non-API / implementation artifacts). Then we can discuss it together and decide what to do with this API - either also extract / stabilize it, or come up with stable alternatives. |
Subtasks:
|
Needed API for Dokka: |
Child issue: #3226 Some Analysis API issues that we are also interested in: |
This issue is part of a larger issue: Sustainability of dependencies (#3127)
Context
As described in #3127, the K1 compiler API that Dokka relies on is not stable, and internal compiler refactorings, new features and bugfixes sometimes (unwillingly and unknowingly) have a very negative impact on Dokka. We aren't the only ones with this problem, so one of the goals of the new K2 compiler is to introduce separate API-only artifacts that would be stable and not affected by internal compiler changes.
As of Kotlin 1.9.10, this stable compiler API is still in the works, so Dokka has to depend on a bunch of artifacts with questionable stability — some required for the needed API, some for runtime only.
Goal
Dokka should, sooner or later, only rely on the stable compiler API, and all of the compiler runtime dependencies (== API implementations) should (ideally) be provided as a single or a number of artifacts with
runtimeOnly
scope.This will require working with the team responsible for the compiler API to make sure that all of Dokka's use cases are covered. It will take time for that team to implement the API that Dokka needs, so this issue exists to keep track of progress.
The text was updated successfully, but these errors were encountered: