You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
w: Alchemist/build.gradle.kts:346:9: 'removeChildTasks(Iterable<Project>): Unit' is deprecated.
It is an anti-pattern to declare cross-project dependencies as it leads to various build problems.
For this reason, this API wil be removed with the introduction of project isolation.
When it happens, we will provide a migration guide. In the meantime, you can keep using this API
if you have to, but please don't rely on it if possible. If you don't want to document a certain project,
don't apply the Dokka plugin for it, or disable individual project tasks using the Gradle API .
I investigated for a while. I'll write a bunch of considerations to explain what's going on and how we could treat this issue.
This problem is caused by the configuration of the dokkaJavadocCollector task. With the introduction of multiplatform projects in the build, an additional configuration for this task is required, as it would throw an exception otherwise:
Exception in thread "Thread-1029" org.jetbrains.dokka.DokkaException: Pre-generation validity check failed: Dokka Javadoc plugin currently does not support generating documentation for multiplatform project. Please, adjust your configuration
This exception is raised even if dokkaJavadoc and dokkaJavadocPartial get disabled in every multiplatform subproject. dokkaJavadocCollector task's configuration is a little embarrassing, as it is not possible to exclude certain subprojects (I mean, it is possible using the deprecated API).
To summarize, Dokka deprecated the API and did not suggest any viable alternatives to use at the moment. As the warning says, a sort of migration guide will be provided in the future.
To overcome this issue, we could keep everything as it is and wait for the migration guide to come out. This is not ideal, as it adds technical debt, but could possibly be treated easily in the future. Another way would be to manually create a "custom collector task". This might be a little overkill. Also, it would probably be hard and time wasting to configure, test etc.
If there are considerations, ideas, etc. on how to overcome this issue, I am willing to try them. If anything comes to my mind I'll update this issue.
What about "disable individual project tasks using the Gradle API"? For this specific project, we only have one multiplatform module so far, should be manageable...
@AngeloFilaseta can you take a look?
The text was updated successfully, but these errors were encountered: