Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Dec 16, 2024

This PR contains the following updates:

Package Change Age Confidence
org.jetbrains.dokka:dokka-maven-plugin 1.9.0 -> 2.1.0 age confidence

Release Notes

Kotlin/dokka (org.jetbrains.dokka:dokka-maven-plugin)

v2.1.0: 2.1.0

Compare Source

Dokka 2.1.0 focuses on stabilizing experimental features, supporting new Kotlin language features, and improving the user experience. Key highlights include:

  • Dokka Gradle Plugin v2 is enabled by default!
  • K2 Analysis is enabled by default!
  • Support for Context parameters and Nested typealiases
  • HTML format refinement: better accessibility and consistency across all components
  • Multiple performance and compatibility improvements

More details about each of the changes below. See Dokka 2.1.0 milestone for the list of all changes.

Dokka's Gradle plugin v2 is enabled by default!

Please check the migration guide for the update procedure

Dokka 2.0.0 introduced a significantly improved Gradle plugin v2, and with Dokka 2.1.0 it is now enabled by default!
As a result, all types and Gradle tasks related to Dokka Gradle plugin v1 are deprecated and will be removed in future releases.
Running Gradle tasks related to Dokka Gradle plugin v1 will result in an error during execution.

Starting from this release, the minimum supported Gradle version is 7.6.3.

Other fixes and improvements
  • Update Gradle Properties types to be non-nullable (#​4136)
  • Update displayName convention for DokkaSourceSets (#​4142)
  • Update olderVersionsDir to be an optional input. (#​4155)
  • Add lifecycle tasks for generating formats (#​4141)
  • Use project name as default modulePath for root project to avoid clashing outputs during aggregation (#​4158)
  • Remove Dokka debug config file from task outputs (#​3961)
  • Remove V2EnabledWithHelpers warning & info message (#​4206)

Dokka's K2 analysis is enabled by default!

Dokka 2.1.0fixes the most problematic issues with K2 analysis and makes it enabled by default!
In addition to this, Dokka 2.1.0with K2 analysis introduces support for context parameters and nested typealiases!

Dokka's K2 analysis leverages Kotlin's K2 compiler frontend for analysing code and uses the same shared Analysis API, which is used in IntelliJ IDEA’s K2 mode.
The output with K2 analysis should mostly match that of K1 analysis, but there may be minor differences.

If you previously opted in to Dokka's K2 analysis, remove org.jetbrains.dokka.experimental.tryK2 from your project's gradle.properties file.
Dokka's K1 analysis is still available, but it is deprecated and will be removed in future releases.
We would greatly appreciate your feedback, if there is something that is blocking you from migrating to K2 analysis!

Other fixes and improvements
  • Fix merging of implicit expect/actual with a single declaration (#​4016)
  • Support Wasm platform fully (#​4123)
  • Fix override modifier for generic functions (#​4126)
  • Add a receiver to accessor DRI (#​4122)
  • Fix param tag for type parameter on implicit primary constructor (#​4154)
  • Fix the primary constructor parameter incorrectly marked as a property (#​4125)
  • Fix Javadoc links with generic parameters (#​4159)
  • Show the correct return type when narrowed by inheritance (#​4183)

HTML format refinement

Dokka 2.1.0 introduces a number of design improvements to the HTML output.
Many UI elements (listed below) now feature more consistent spacing, better contrast, and improved overall accessibility.

Highlights:

  • Improved accessibility of the Search popup and Table of Contents and Tabs
  • Resizable Table of Contents
  • Customizable spacing in the Table of Contents via a new set of CSS variables (See #​4184 for details)

In addition, the structure of the templates has been slightly modified. If you're using custom templates, the easiest way to migrate is to update your templates based on the latest default templates.
For example, to enable the resizable Table of Contents, you need to add a <div id="resizer"> element and add [data-item-type] attributes to container elements. For implementation details, see the template reference.

Updated UI Elements:

  • Main layout
  • Table of Contents
  • Footer
  • Search popup
  • Code areas and code blocks
  • Links
  • Tooltips
  • Tables
  • Markdown tables

Notable improvements

  • Performance:
    • Cache packages field, which is used by DefaultExternalLocationProvider.resolve (#​4009)
    • Cache DisplaySourceSet as it's stored a lot inside of ContentPages (#​4008)
    • Significantly improves the performance when working with PackageList (#​4198)
  • Support a newline inside link text (#​3661)
  • Resolve references to quoted names (#​3356)
  • Update jackson to 2.15.3, which doesn't have known vulnerabilities (#​4189)
  • Make Dokka safe for Jackson updates in user projects (#​4193)

Other changes and bugfixes

Changes from 2.1.0-Beta

  • Follow symbolic links when building KaModule for AA standalone session (#​4264)
  • Handle InvocationTargetException exception explicitly in DokkaBootstrap (#​4257)
  • Support for nested typealiases (#​4261)
  • Fix spacing in HTML (#​4239, #​4207)

Feedback

We would appreciate your feedback!

v2.0.0: 2.0.0

Compare Source

Dokka 2.0.0 focuses on simplifying configuration and preparing for support of future Kotlin language features. Key highlights include:

  • Dokka Gradle Plugin v2: revamped Gradle plugin based on Dokkatoo.
  • Experimental K2 Analysis: support for K2 compiler frontend.
  • HTML Improvements: better accessibility and easier customization.

More details about each of the changes below. See Dokka 2.0.0 milestone for the list of all changes.

Dokka's Gradle plugin v2 based on Dokkatoo

Please check the migration guide for the update procedure and give feedback!

Dokka 2.0.0 introduces significant improvements to Dokka Gradle plugin, aligning more closely with Gradle best practices:

  • Adopts Gradle types, which leads to better performance.
  • Uses an intuitive top-level DSL configuration instead of a low-level task-based setup, which simplifies the build scripts and their readability.
  • Takes a more declarative approach to documentation aggregation, which makes multi-project documentation easier to manage.
  • Uses a type-safe plugin configuration, which improves the reliability and maintainability of your build scripts.
  • Fully supports Gradle configuration cache and build cache, which improves performance and simplifies build work.
Changes from Dokka 2.0.0-Beta
  • Forward Dokka Generator messages to Gradle logger (#​3833)
  • Add deprecated property to help migrate from JSON Dokka plugin configuration (#​3877)
  • Rename dokkaPublicationDirectory to basePublicationsDirectory (#​3876)
  • Rename dokkaModuleDirectory, and mark as internal (#​3880)
  • Update and add KDoc for DGPv2 (#​3842)
  • Remove DokkaPluginParametersBuilder (#​3872)
  • Increase default max heap of Worker to 2G (#​3913)
  • Remove the dependency of dokkaGenerate on dokkaGenerateModule* (#​3920)
  • KT-71784 Fix classpath for KMP shared source sets (#​3942)
  • Fix DGP/KMP integration, so Dokka can 'see' code from shared source sets in target source sets (#​3814)

Dokka's K2 analysis

Dokka 2.0.0 introduces K2 analysis, which is currently in an experimental stage. Dokka's K2 analysis leverages Kotlin's K2 compiler frontend for analysing code and uses the same shared Analysis API, which is used in IntelliJ IDEA’s K2 mode. The output with K2 analysis should mostly match that of K1 analysis, but there may be minor differences. We are actively working towards stabilizing K2 analysis and are planning to enable K2 analysis by default in future.

To opt in to Dokka's K2 analysis, add the following flag to your project's gradle.properties file:

org.jetbrains.dokka.experimental.tryK2=true
Known limitations:

We would greatly value your feedback if you encounter any of these limitations.

Potential differences between the outputs of K1 and K2:

While the output of K2 analysis aims to align with K1, there are some differences to be aware of:

  • Java synthetic properties: rendering may vary (details).
  • KDoc links: resolution and rendering differences (details).
  • Inconsistent documentable rendering order (#​3590).
  • Enum entries: anonymous and overridden methods are no longer rendered (#​3129).
  • Other differences may arise due to variations in type inference between K1 and K2.

HTML format

Dokka 2.0.0 introduces some changes to HTML output. We updated the structure of some elements and classes, particularly in the navigation and sidebar, to improve accessibility and simplify maintenance. These changes only affect you if you previously customized Dokka styles.

  • We removed redundant wrappers like navigation--inner and navigation-title.
  • We reworked blocks such as versions-dropdown to make them more accessible.
  • We renamed classes like navigation-controls--homepage to improve consistency. For example, it’s now called navigation-controls--btn_homepage.

For more information, see the pull request.

The easiest way to update your current templates is to adjust the new templates to your needs.

Bugfixes

  • Fix merging expect-actual declarations (#​3875)

Other changes

  • Update the external link URL for stdlib (#​3938)

Feedback

We would appreciate your feedback!

Full Changelog: Kotlin/dokka@v1.9.20...v2.0.0

v1.9.20: 1.9.20

Compare Source

General bugfixes

  • Fixed sealed interfaces not having the sealed keyword in signatures (#​2994)
  • Fixed incorrect links in multi-module projects with non-unique package names (#​2272). Huge thanks to @​EddieRingle!
  • Fixed member extensions not being shown on index pages in certain scenarios (#​3187)
  • Fixed Java's inner classes not having the inner keyword in Kotlin signatures (#​2793)
  • Fixed Java's @param tag not working with type parameters (#​3199)
  • Fixed Dokka failing in KMP projects when the JVM source set is suppressed (#​3209)

HTML format

  • Provide an ability to add a custom homepage link to the header, more details in #​2948 (comment)
  • Fixed tab selection resetting after navigating to a different page (#​2899)
  • Fixed inline code not always being aligned with the surrounding text (#​3228)
  • Fixed the "No options found" text in search being barely visible (#​3281)
  • Fixed empty HTML tags being rendered for no reason (#​3343, #​3095)

Runners

Gradle Plugin
  • Mark tasks as not compatible with Gradle configuration cache, second try (#​3438). Thanks to @​3flex for noticing and fixing the problem!
Maven Plugin
CLI runner
  • Allow using relative paths in the sourceRoots configuration option (#​2571)

Plugin API

  • Provide an extension point to customize the rendering of code blocks in HTML format (#​3244)

Other:

  • Make sure wasm-js and wasm-wasi targets introduced in Kotlin 1.9.20 are supported (#​3310)
  • Avoid concurrent invocations of Kotlin compiler's API due to the compiler API itself not always being thread safe (#​3151). No noticeable performance loss is expected.
  • Bump dependencies to the latest versions (#​3231, #​3206, #​3204)
  • Fix a documentation link (#​3213). Thanks to @​SubhrajyotiSen for noticing and fixing it!
  • Various build and project structure improvements (#​3174, #​3132). Enormous thanks to @​aSemy for the help!

See Dokka 1.9.20 milestone for the list of all changes.

v1.9.10: 1.9.10

Compare Source

General

  • Fix re-emerged code analysis concurrency issues which led to flaky builds (#​1599, #​3143)
  • Preserve the order of collection items when deserializing Dokka's configuration (#​3006). Thanks to @​eunwoop!

HTML format

  • Fix an indefinite loop in the script that resizes symbol signature blocks (#​3116)

Gradle

  • Fix resolution of platform dependencies for Kotlin 1.9 / Gradle 8 (#​3153, #​3147)
  • Mark tasks as not compatible with the Gradle configuration cache (#​3070). Thanks to @​BoD!

Java


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/major-dokka-maven-plugin.version branch from f6df9a2 to fddb43c Compare September 22, 2025 06:22
@renovate renovate bot force-pushed the renovate/major-dokka-maven-plugin.version branch from fddb43c to ead8c44 Compare October 15, 2025 12:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant