Features
- Introduce
documentedVisibilities
setting that allows including/excluding any visibility modifier in documentation. This is a more flexible replacement forincludeNonPublic
, which has now been deprecated (#2270) - Make HTML pages customizable through FreeMarker HTML templates (#2374)
- Add global settings to JSON dokka CLI input (#2292), thanks to @BarkingBad!
HTML format changes
- Add vertical alignment (wrapping) of signatures when 3 and more parameters are present (#2309)
- Enhance primary constructor signature, display
val
/var
keywords and default values (#2313) - Add a level of indentation to childless items in navigation tree (#2291)
- Add horizontal margin to breadcrumbs delimiter (#2285)
- Fixed various CSS rendering issues (#2284, #2389)
Bugfixes
- Fixed
OutOfMemoryError: Metaspace
-related issues for the majority of cases (#2216) - Fixed classpath issues for HMPP libraries (#2431)
- Using
@
symbol within code blocks in.md
files doesn't lead to cropped documents anymore (#2418) - Fixed incorrect placement of HTML head tags, which led to missing favicon in multi-module projects (#2365)
- Fixed resolution of ultralight methods that led to flaky signature generation (#2400)
- Coroutines dispatchers are now shut down after each module pass to avoid resource leaks (#2325)
- Suppressed property setters are now excluded from documentation (#2220)
- Suppressing extensions doesn't fail builds anymore (#2348), thanks to @BarkingBad!
- Fixed java getter / setter name generation for kotlin-java interop, now
isBoolean
instead ofgetBoolean
(#2356), thanks to @CharlesG-Branch! - Fixed MathJax plugin, previously completely broken (#2342), thanks to @wyskoj!
- Fixed Input/Output streams to minimize resource leaks (#2312, #2319)
Plugin API Changes
- Add an extension point for rendering custom documentation tags (#2343)
- Add an extension point for an external documentable provider (#2307), thanks to @Kordyjan!
- Add filtering stategies extension point and fix constructors in Kotlin-as-Java (#2277), thanks to @BarkingBad!
- Expose Kotlin-as-Java methods that could be used not only as part of transformers (#2351), thanks to @BarkingBad!
- Refactor Ancestry Graphs (#2326), thanks to @BarkingBad!
- Fixed resolving of DRIs for Enum Entries (#2305), thanks to @BarkingBad!
General Improvements
- Collect annotations from
package-info.java
(#2331), thanks to @ember-rose! - Add support for header tags (
<h1>
/<h2>
/<h3>
) in Javadoc (#2345), thanks to @asfalcone! - Add an option to merge implicit expect-actual declarations, enables merging of pages for related declarations which are not connected via
expect
-actual
keywords (#2316) - Add a note about using Dokka in a precompiled script plugin (#2303), thanks to @chkpnt!
- Fixed wrong Groovy DSL example (#2302), thanks to @chkpnt!
- Various code cleanups (#2165, #2360, #2364, #2385), thanks to @Goooler!
Known issues
- Kotlin Multiplatform projects that use
.klib
libraries may experience problems. There will be a separate1.6.21
release that will address this issue shortly.