Age | Commit message (Collapse) | Author |
|
|
|
* Fix the test `handles correct number of elements`
* Mute the test `finds correct number of deprecated methods`
|
|
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`
|
|
* 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.
|
|
|
|
It was marked experimental in a new version of coroutines https://github.com/Kotlin/kotlinx.coroutines/commit/042720589c6f438f77d84254bd2dceb569f0184, after 5a6fab535b68916a28d922d5d7a294fa432b7d6b
|
|
|
|
One example was updated in #3046, but there are two similar ones on the page
|
|
|
|
|
|
|
|
|
|
|
|
The documentation for OkHttp has been moved to https://square.github.io/okhttp/5.x/okhttp/okhttp3/
As per https://github.com/square/okhttp/commit/05718b4d87b591820a178b3fb6a4325c83c55d7a, they are currently using HTML for docs and not markdown
|
|
|
|
|
|
Fixes #3035
|
|
* Migrate K2-Based dokka to use the new standalone mode API
see https://youtrack.jetbrains.com/issue/KT-60884
* Do not use copy-n-pasted code from Analysis API in K2-Based Dokka
see https://youtrack.jetbrains.com/issue/KT-60884
* Remove copy-n-pasted API from Analysis API in K2-Based Dokka
as it's now unused
see https://youtrack.jetbrains.com/issue/KT-60884
* Update version Analysis API to 1.9.30-dev-3330
---------
Co-authored-by: Ilya Kirillov <ilya.kirillov@jetbrains.com>
|
|
Otherwise, `Caused by: org.jetbrains.kotlin.utils.exceptions.KotlinIllegalArgumentExceptionWithAttachments: Unexpected class org.jetbrains.kotlin.analysis.project.structure.KtBuiltinsModule
at org.jetbrains.kotlin.analysis.low.level.api.fir.util.ExceptionUtilsKt.errorWithFirSpecificEntries(exceptionUtils.kt:50)`
|
|
|
|
|
|
Co-authored-by: vmishenev <vad-mishenev@yandex.ru>
|
|
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.
|
|
#3143 wasn't based on latest master, so the checks were green, but then the compilation failed due to explicit API mode
|
|
#3034 broke the fix for #1599 by changing packages
|
|
* fix(KTL-1177): Resize Observer has indefinite loop
|
|
* [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
|
|
|
|
|
|
|
|
|
|
|
|
* Add the default copyright profile and enable IDEA project settings
* Add the license notice file
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
make `kotlinSampleProviderFactory` public (#3110)
* Remove `DefaultSamplesTransformer` from `analysis-kotlin-descriptors`
* Make `CompilerDescriptorAnalysisPlugin.kotlinSampleProviderFactory` public
|
|
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
|
|
|
|
Addresses #3068
|
|
Otherwise, our integration tests try to resolve these repositories on failures
|
|
|
|
|
|
|
|
* Opt into foreign API for CPointed
* Stop using the deprecated JS backend
|
|
|
|
|