aboutsummaryrefslogtreecommitdiff
path: root/plugins/base/src
AgeCommit message (Collapse)Author
2023-10-26[K2] Support kotlin-as-java and javadoc plugins and update version of ↵Vadim Mishenev
Analysis API (#3227) * Implement InheritanceBuilder and for symbols * Enable tests for as-java and javadoc plugins and fix some * Update the version of Analysis API and enable test * Use assert from kotlin.test * Rename `descriptorInheritanceBuilder` * Fix after rebasing * Mute test `two classes from different packages`
2023-10-25[K2] Reorganize project model for MPP (#3236)Vadim Mishenev
* Reorganize project model for MPP We map Dokka's source set directly to a source module of Analysis API inside one Analysis Standalone session. Analysis API session is created in src/main/kotlin/org/jetbrains/dokka/analysis/kotlin/symbols/plugin/KotlinAnalysis.kt (see fun createAnalysisSession) Before the PR, one Dokka's source set corresponded to one Standalone API session with one source module that has source roots from dependent source sets. * Add 'caffeine' dependency from Analysis API * Fix sample provider * Fix tests * Enable tests and update the version of Analysis API. The PR allows the enabling of some tests annotated with OnlyDescriptorsMPP. Also, tests with OnlyDescriptorsMPP that have unresolved common symbols are fixed by the new version of Analysis API.
2023-10-24[K2] Enable Java tests for symbols (#3203)Vadim Mishenev
2023-10-24Opt-in `ExperimentalCoroutinesApi` for `newSingleThreadContext` (#3247)Vadim Mishenev
It was marked experimental in a new version of coroutines https://github.com/Kotlin/kotlinx.coroutines/commit/042720589c6f438f77d84254bd2dceb569f0184, after 5a6fab535b68916a28d922d5d7a294fa432b7d6b
2023-10-24 Make using of the compiler single-thread (#3202)Vadim Mishenev
2023-10-18Fix active-tab selection for different page contexts (#3212)Oleg Yukhnevich
2023-10-10[K2] Display enum entry members (#3180)Vadim Mishenev
2023-10-05Register Kotlin stdlib classpath in every unit test (#3183)Vadim Mishenev
Due to the recent changes in how Analysis API handles builtins, the update to the fresh version of Analysis API requires registering Kotlin stdlib in every testsuite.
2023-09-05fix(KTL-1177): Resize Observer has indefinite loop (#3116)Konstantin Chernenko
* fix(KTL-1177): Resize Observer has indefinite loop
2023-09-04[K2] Fix functional type and improve logging for unresolved link (#3157)Vadim Mishenev
* [K2] Fix functional type and improve logging for unresolved link For example `typealias CompletionHandler = (cause: Throwable?) -> Unit` has a functional type with no type arguments in K2. In K1 we have a usual generic type
2023-08-31Enable explicit API mode (#3139)Ignat Beresnev
2023-08-31Update copyright (#3149)Ignat Beresnev
* Add the default copyright profile and enable IDEA project settings * Add the license notice file
2023-08-30Migrate to JUnit 5 and unify used test API (#3138)Ignat Beresnev
2023-08-28 Support Dokka K2 analysis (#3094)Vadim Mishenev
Dokka has its own documentable model to represent analyzed code. The analysis is performed by a compiler frontend. In K1 the compiler frontend has descriptors that use the underlying Binding Context (global shared stateful structure). Dokka just maps descriptors to Documentable by DefaultDescriptorToDocumentableTranslator. K2 compiler has FIR tree, which means “Frontend Intermediate Representation”, instead of Binding Context. But we do not use FIR in Dokka directly, since it is too low-level for analysis. The Kotlin compiler provides high-level Analysis API for this case. The API is used by KSP too. Analysis API represent elements of FIR (declarations, parameters and so on) as Symbols. For more details see KtSymbolByFirBuilder, KtSymbol. For Dokka symbol is the replacement of descriptor in K2. Also, to set up the environment of project analysis in K1 we use idea dependencies (or copy-past from there). In K2 for these aims, there is a Standalone mode for Analysis API.
2023-08-14Refactor and document DisplaySourceSet, deprecate ↵Vsevolod Tolstopyatov
SelfRepresentingSingletonSet (#3105) * Deprecate internal API SelfRepresentingSingletonSet for removal as being harmful and unimplement it in DisplaySourceSet * Provide no automatic migration for DisplaySourceSet, as there are no mechanisms for that. Manual migration is the replacement of 'dss' to `setOf(dss)` where applicable * Introduce a convenience-member DefaultRenderer.buildContentNode to avoid wrapping DSS into set manually * Document DisplaySourceSet * Replace Iterable<DisplaySourceSet>.sourceSetIDs with more straightforward Iterable<DisplaySourceSet>.computeSourceSetIds(), refactor all the usages, save some allocations * Start caching CompositeSourceSetID properties to avoid excessive allocations * Update integration tests on the latest revision with Knit version where the workaround is applied Fixes #2897
2023-08-08Fix and refactor Sample Transformer (#3102)Vadim Mishenev
2023-08-04Reintroduce removed analysis APIs with a deprecation message (#3104)Ignat Beresnev
2023-08-04Add scroll to tables viewed from mobile devices (#3082)Konstantin Chernenko
2023-08-04Fix handling of Java contravariance (#3092)Julia McClellan
2023-08-02Fix Kotlin Analysis API package name (#3100)Ignat Beresnev
2023-07-26Fix some tests to be compatible with K2 (#3086)Vadim Mishenev
2023-07-21Add tests for parsing data objects (#3076)Ignat Beresnev
2023-07-17Hardcode documentation for the synthetic Enum.entries property (#3071)Ignat Beresnev
2023-07-07Do not leak unknown asset paths into HTML (#3061)Ignat Beresnev
Fixes #3040
2023-07-07Remove a copy-pasted function (#3060)Ignat Beresnev
2023-07-06HTML: fix of redundant dot and related autotest (#2289) (#3057)Denis Ambatenne
* HTML: fix of redundant dot and related autotest (#2289) * Update plugins/base/src/test/kotlin/renderers/html/SearchbarDataInstallerTest.kt Change after the PR #3057 review Co-authored-by: Ignat Beresnev <ignat.beresnev@jetbrains.com> * Change after the PR #3057 review Co-authored-by: Ignat Beresnev <ignat.beresnev@jetbrains.com> --------- Co-authored-by: Denis Ambatenne <denis.ambatenne@jetbrains.com> Co-authored-by: Ignat Beresnev <ignat.beresnev@jetbrains.com>
2023-07-05Decompose Kotlin/Java analysis (#3034)Ignat Beresnev
* Extract analysis into separate modules
2023-07-03Enhance typealias presentation (#3053)Vadim Mishenev
2023-06-30Generate dedicated pages for typealiases (#3051)Vadim Mishenev
2023-06-01Multi-param Java methods should not qualify for a setter (#3002)Ignat Beresnev
2023-05-31Fix missing tab entries for module names with space (#3019)Ignat Beresnev
2023-05-31Add support for `@author`, `@since`, `@return` Javadoc tags (#2967)irina-turova
2023-05-30Incorrectly handles a click on a method and other elements in the mobile ↵Konstantin Chernenko
version (#3021)
2023-05-30KTL-982; redundant spacing for tabs (#3018)Konstantin Chernenko
2023-05-30Use JetBrains Sans as default font (#3017)Konstantin Chernenko
2023-05-30disable showing this "copy anchor" popup if JS is disabled (#3020)Konstantin Chernenko
2023-05-24update mobile view and some bugs (#2836)Konstantin Chernenko
* Fix dark theme bugs: mobile TOC is visible on 1px and has white background, menu icon is black * Refactoring css styles for header controls * Change header responsive layout * Change header responsive layout * Fix scrollable columns for any header size * Remove main content mobile spacing * Change style for platform filters and labels * Fix: add burger icon into dist * Fix: long code token in mobile view * Fix: color in filter selector * Fix: long token in keyValue for desktop * Fix: add spacing for iPad Mini * Fix: dropdown for multiple versions * update platform brand colors * Fix: sample spacing, blockquote, playground initialize * Safari fix outline for platform tags * Fix non-js main content for better SEO * Fix outline for safari browser * Add consistent vertical spacing for header. It should normalize subpixel artifacts and centred content. * Update manual for custom logo * Add comment for playground * Hide copy button for non-js user * fix; use google fonts * feat; change style for platform in platform-tags * Revert Inter as defult font * Add breaks for CONSTANTS * incorrect non-js script position * less specific selector for article links
2023-05-17Update KGP to 1.8.20 (#2989)Vadim Mishenev
* Update KGP to 1.8.20 * Update AGP to be compatible with KGP * Replace `AndroidSourceSet` * Dump API * Update integration tests * Update GH actions tests * Refactor Gradle Runner * Fix `TYPE_MISMATCH_WARNING_FOR_INCORRECT_CAPTURE_APPROXIMATION` * Suppress source sets without compilations Dokka suppresses source sets that do no have compilation since such configuration is invalid, it reports a warning or an error * Introduce `dependsOn` for a new `com.android.build.api.dsl.AndroidSourceSet` * API dump * Add comment * Suppress remaining `TYPE_MISMATCH_WARNING_FOR_INCORRECT_CAPTURE_APPROXIMATION` * Add comment --------- Co-authored-by: Ignat Beresnev <ignat.beresnev@jetbrains.com>
2023-04-25Replace invalid documentation links (#2973)Lukas Knoch-Girstmair
2023-04-25Tidy/remove unnecessary imports and suppressions (#2975)aSemy
2023-04-07Move the `Properties` block to be above `Functions` (#2908)Ignat Beresnev
2023-03-21Improve JavadocParser and fix case-sensitivity (#2905)Vsevolod Tolstopyatov
* Get rid of safeEnumValueOf that was an unnecessary public API burden and constantly allocating * Restructure JavadocParser.parseDocTag, so it has one lever of nesting less * Make tag parsing case-sensitive Fixes #2907
2023-03-08Improve performance of 'parseWithNormalisedSpaces' that is unconditionally ↵Vsevolod Tolstopyatov
invoked for each HTML text element (#2730) Addresses #2729
2023-03-03Do no render Types tab when there are no types (#2900)Vadim Mishenev
2023-02-28Fix unresolved link to declaration from another source set (#2878)Vadim Mishenev
2023-02-24Mark Plugin Api as experimental (#2743)Vadim Mishenev
2023-02-24Reorganize tabs for Classlike (#2764)Vadim Mishenev
2023-02-20Change default logging level of console apps (#2871)Ignat Beresnev
2023-02-17Consistent alphabetical order of element groups in index and navigation (#2861)ilya-g
* Sort groups of divergent elements by their key first ignoring case, then preserving it * Add tests for sorting groups and navigation
2023-02-14Do not render filter-section for empty source sets (#2858)Ignat Beresnev
Regression from #2848