Skip to content

Rename dokkaPublicationDirectory to basePublicationsDirectory #3876

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

Merged
merged 5 commits into from
Oct 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 7 additions & 9 deletions docs/topics/dokka-migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,25 +209,23 @@ options according to your project setup:
customAssets.from("example.png", "example2.png")
```

* **Output directory:** Use the `dokka {}` block to specify a single output directory for all Dokka-generated documentation.
* **Output directory:** Use the `dokka {}` block to specify the output directory for generated Dokka documentation.

Previous configuration:

```kotlin
tasks.dokkaHtml{
dokkaSourceSets {
configureEach {
outputDirectory.set(layout.buildDirectory.dir("dokkaDir"))
}
}
tasks.dokkaHtml {
outputDirectory.set(layout.buildDirectory.dir("dokkaDir"))
}
```

New configuration:

```kotlin
dokka {
dokkaPublicationDirectory.set(layout.buildDirectory.dir("dokkaDir"))
dokkaPublications.html {
outputDirectory.set(layout.buildDirectory.dir("dokkaDir"))
}
}
```

Expand Down Expand Up @@ -444,4 +442,4 @@ DGP v2 now supports Gradle build cache and configuration cache, improving build

* Explore more [DGP v2 project examples](https://github.com/Kotlin/dokka/tree/master/examples/gradle-v2).
* [Get started with Dokka](dokka-get-started.md).
* [Learn more about Dokka plugins](dokka-plugins.md).
* [Learn more about Dokka plugins](dokka-plugins.md).
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,12 @@ public abstract class org/jetbrains/dokka/gradle/DokkaExtension : java/io/Serial
public static synthetic fun ClassLoaderIsolation$default (Lorg/jetbrains/dokka/gradle/DokkaExtension;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lorg/jetbrains/dokka/gradle/workers/WorkerIsolation$ClassLoader;
public final fun ProcessIsolation (Lkotlin/jvm/functions/Function1;)Lorg/jetbrains/dokka/gradle/workers/WorkerIsolation$Process;
public static synthetic fun ProcessIsolation$default (Lorg/jetbrains/dokka/gradle/DokkaExtension;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lorg/jetbrains/dokka/gradle/workers/WorkerIsolation$Process;
public abstract fun getBasePublicationsDirectory ()Lorg/gradle/api/file/DirectoryProperty;
public abstract fun getDokkaCacheDirectory ()Lorg/gradle/api/file/DirectoryProperty;
public abstract fun getDokkaEngineVersion ()Lorg/gradle/api/provider/Property;
public abstract fun getDokkaGeneratorIsolation ()Lorg/gradle/api/provider/Property;
public abstract fun getDokkaModuleDirectory ()Lorg/gradle/api/file/DirectoryProperty;
public abstract fun getDokkaPublicationDirectory ()Lorg/gradle/api/file/DirectoryProperty;
public final fun getDokkaPublicationDirectory ()Lorg/gradle/api/file/DirectoryProperty;
public final fun getDokkaPublications ()Lorg/gradle/api/NamedDomainObjectContainer;
public final fun getDokkaSourceSets ()Lorg/gradle/api/NamedDomainObjectContainer;
public abstract fun getModuleName ()Lorg/gradle/api/provider/Property;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ constructor(
)

sourceSetScopeDefault.convention(project.path)
dokkaPublicationDirectory.convention(layout.buildDirectory.dir("dokka"))
basePublicationsDirectory.convention(layout.buildDirectory.dir("dokka"))
dokkaModuleDirectory.convention(layout.buildDirectory.dir("dokka-module"))
// @Suppress("DEPRECATION")
// dokkaConfigurationsDirectory.convention(layout.buildDirectory.dir("dokka-config"))
Expand Down Expand Up @@ -157,7 +157,7 @@ constructor(
moduleName.convention(dokkaExtension.moduleName)
moduleVersion.convention(dokkaExtension.moduleVersion)
offlineMode.convention(false)
outputDirectory.convention(dokkaExtension.dokkaPublicationDirectory.dir(formatName))
outputDirectory.convention(dokkaExtension.basePublicationsDirectory.dir(formatName))
moduleOutputDirectory.convention(dokkaExtension.dokkaModuleDirectory.dir(formatName))
suppressInheritedMembers.convention(
@Suppress("DEPRECATION")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import org.jetbrains.dokka.gradle.workers.ClassLoaderIsolation
import org.jetbrains.dokka.gradle.workers.ProcessIsolation
import org.jetbrains.dokka.gradle.workers.WorkerIsolation
import java.io.Serializable
import kotlin.DeprecationLevel.ERROR

/**
* Configure the behaviour of the [DokkaBasePlugin].
Expand All @@ -31,8 +32,23 @@ constructor(
internal val baseDependencyManager: BaseDependencyManager,
) : ExtensionAware, Serializable {

/** Directory into which [DokkaPublication]s will be produced */
abstract val dokkaPublicationDirectory: DirectoryProperty
/**
* Base directory into which all [DokkaPublication]s will be produced.
* By default, Dokka will generate all [DokkaPublication]s into a subdirectory inside [basePublicationsDirectory].
*
* To configure the output for a specific Publication, instead use [DokkaPublication.outputDirectory].
*
* #### Example
*
* Here we configure the output directory to be `./build/dokka-docs/`.
* Dokka will produce the HTML Publication into `./build/dokka-docs/html/`
* ```
* dokka {
* basePublicationsDirectory.set(layout.buildDirectory.dir("dokka-docs"))
* }
* ```
*/
abstract val basePublicationsDirectory: DirectoryProperty

/**
* Directory into which Dokka Modules will be produced.
Expand Down Expand Up @@ -179,6 +195,17 @@ constructor(


//region deprecated properties
/** Deprecated. Use [basePublicationsDirectory] instead. */
// Deprecated in 2.0.0-Beta. Remove when Dokka 2.0.0 is released.
@Deprecated(
"Renamed to basePublicationsDirectory",
ReplaceWith("basePublicationsDirectory"),
level = ERROR,
)
@Suppress("unused")
val dokkaPublicationDirectory: DirectoryProperty
get() = basePublicationsDirectory

/**
* ```
* dokka {
Expand Down
Loading