Releases: Kotlin/dokka
1.6.20
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.
1.6.10
Changes
- Support Kotlin 1.6.10
- Add a sample project for versioning multi-module (#2170)
Bugfixes
- Fix various
java.util.zip.ZipException
for JS dependencies (#2258) - Fix handling of Description Lists (
<dl>
) used in JavaDocs (#2259) - Fix for "repositories not defined" issue in versioning multimodule example (#2263), thanks @Rajdeep1008!
- Fix multiple rendering issues for "See Also" block for html format (#2267)
- Fix sample body not being embedded to documentation (#2216)
Maintenance
1.6.0
Changes:
- New UI
- Support of version plugin for single module projects
- Allow package-level suppression (#2209), thanks @owengray-google
- GFM: Use Markdown syntax to render lists (#2098), thanks @sgilson
- Fix names of nested inheritors
- Fix adding new custom stylesheets in submodules
- Add keywords
expect
andactual
in signatures
1.5.31 Alpha
Changes:
- Support Kotlin 1.5.31
- Support JS KLib
- Fix link to a javadoc enum entry
1.5.30 Alpha
Highlights of this release are:
- Support kotlin 1.5.30
@literal
is also supported without code tag, thanks @fsladkey- improvements in
@link
tag support. Now it supports line breaks!
1.5.0 Alpha
Kotlin compiler upgraded to 1.5.0
Fixes:
Make module name optional in CLI (#1850)
Fix line separator issues (#1887)
Fix preserving spaces in Javadoc comments (#1923)
GFM renderer: sanitize line ends (#1936)
Fix rendering html in briefs (#1931)
Fix code blocks on Extension Points page (#1948)
Remove extra dash (#1968)
Don't use older dir from previous runs in versioning (#1963)
Change jekyll links to be .html (#1990)
Fix Gradle plugin application (#2000)
Added features:
Add a supertype for leaf dokka tasks that defines dokkaSourceSets (#1891)
Add ability to specify older versions as a list of files (#1890)
Cachable Gradle task (#1905)
Multilanguage docs inheritance (#1951)
Logging levels in CLI (#1976)
Flatten multi-module structure (#1980)
Special thanks to external contributors: @rnett, @msink, @zsmb13, @rachelcarmena and @hfhbd
1.4.32 Alpha
Fixes:
- Fix configuration for suppressing obvious functions (#1789)
- Fix visibility on enum entry property (#1828)
- Fix missing annotations in GFM and unresolved static imports (#1845)
Added features:
- Reintroduce multimodule documentation (#1804)
- Compiler bump to 1.4.32 (#1818)
- Suppress inherited members (#1814)
- Bump kotlinx.html to 0.7.3 (#1819) (requires adding "https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven" repository)
- Add ability to document generated files (#1832)
- Handle html in KDoc (#1805)
- Make anchors stable (#1851)
Special thanks to external contributors: @AzimMuradov and @hfhbd
1.4.30 Alpha
In this release we focused on improving multi-module experience that would allow links, search and navigation to be rendered for the whole project rather than independent modules. We have also updated the compiler to 1.4.30 and introduced the versioning plugin for the multi module, that lets users generate documentation for each version incrementally and switch between them on the main page.
Breaking changes
- Dokka multi module no longer uses generic
dokka${format}
task but ratherdokka${format}Partial
whereformat
is the desired output format likehtml
orgfm
Improvements and bug fixes
- JvmName support #1675
- Use Maven directly to download additional dependencies #1644 thanks @adangel
- Fix docs on DProperty #1671
- Refactor ContentTable builder and fix GFM table rendering #1682
- Versioning #1654
- Footer customisation #1691
- Resolve Trove issue #1715
- Fix incorrect DRI conversion in KotlinAsJava modes for nested definitions #1701
- JvmOverloads (#1712) and add detection of JvmSynthetic (#1718) thanks @bishiboosh
- Annotations for parameters #1710
- Fix links to method parameters from documentation #1713
- Fix displaying default Java visibility #1738
- Add legacy KotlinWebsite format to recognized link formats #1750
- Fix parameters in CLI and bump kotlinx.cli #1755
- Suppress tag support #1742
- Add ability to suppress obvious functions like equals, toString #1758
- Make Gradle plugin use
api
instead ofimplementation
for dokka-core #1771
1.4.20 Alpha
Breaking changes
prefix
was replaced bymatchingRegex
#598, thanks @martinbonnin
Improvements and bug fixes
- Dokka is now build using Kotlin 1.4.20
- javadoc now handles
@inheritDoc
annotation #1608 - breadcrumbs improvements in html format #1590
- functions and properties can be divided into inherited and declared #1535
- argument order is now preserved #1619, thanks @gzoritchak
- page navigation now has correct height on Safari #1633
1.4.10.2 Alpha - Improvements and bugfixes
This release is focused mainly on polishing features that were already present in Dokka
Improvements:
- Created "On this page" component in the HTML format to allow quicker navigation through long pages - #1504
- Javadoc will now inform when it is misconfigured with multiple sourcesets - #1457
- Created a Java-friendly API for plugins - #1495
- CLI module name is now optional with default value - #1533
- Added parsing of package-info in Java sources - #1528
- Translators now run in parallel #1506
- Added better handling of functional types in rendered output - #1483
- Added default values for primitive properties. Added presenting default values in signatures - #1489
- Types are now distinguished from functions in the navigation #1555
- Multiple improvements to HTML format (shorter docs on list pages, signature placement) - #1529
- Set aether authn when getting artifacts - #1512
- Added separate pages for properties - #1494
- Made logo replaceable - #1488
- GFM now supports anchors - #1442
Bugfixes:
- Handling of multiple authors - #1539
- Merging documentations of modules and packages - #1480
- Parsing strikethrough - #1397
- Escape special characters in file names - #1481
- Fix multiline links in Javadoc and wrong linebreaking of
<pre>
bodies #1518 - Fix vararg signatures - #1516
- Fix rendering of comment tables - #1560
- Escape urls in anchors - #1519
- Hide derived members that are not public - #1459