Skip to content

Investigate possibility to avoid kotlinx.coroutines dependency #2936

@qwwdfsad

Description

@qwwdfsad

Currently, Dokka actively depends (and exposes in public API via AsyncSourceToDocumentableTranslator) on kotlinx.coroutines for particular analysis tasks.

Historically, it was done as the natural way to speed up the rendering stage because every declaration (function, property, constant etc.) had its own page, and each page contained navigation data (thus the IO contention).
This no longer holds true, but coroutines are still here.

It has multiple downsides:

Ideally, we should prototype the solution (note that it couldn't be "coroutines in single-threaded mode", it has to be a complete removal) and measure the potential impact -- e.g. compare execution times of individual tasks on stdlib and kotlinx.coroutines, and decide whether slowdown is acceptable

Metadata

Metadata

Assignees

No one assigned

    Labels

    tech-debtA technical issue that is not observable by the users, but improves maintainers quality of life

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions