Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2.0.0-1.0.22
->2.1.0-1.0.29
1.7.1
->1.7.3
0.6.0
->0.6.1
1.9.0-RC
->1.9.0
1.9.0-RC
->1.9.0
1.9.0-RC
->1.9.0
2.0.0
->2.1.0
2.0.0
->2.1.0
2.0.0
->2.1.0
2.0.0
->2.1.0
2.0.0
->2.1.0
2.0.0
->2.1.0
2.0.0
->2.1.0
2.0.0
->2.1.0
Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
google/ksp (com.google.devtools.ksp)
v2.1.0-1.0.29
Compare Source
Updates
Contributors
Thanks to everyone who reported bugs and participated in discussions!
v2.1.0-1.0.28
Compare Source
What's Changed
Full Changelog: google/ksp@2.1.0-RC2-1.0.28...2.1.0-1.0.28
v2.0.21-1.0.28
Compare Source
Updates
Contributors
Thanks to @GeorgCantor and everyone who reported bugs and participated in discussions!
v2.0.21-1.0.27
Compare Source
Bugs Fixed
Contributors
Thanks to @jonamireh, @kuanyingchou, @martinbonnin, @pablobaxter, @scott-pollom, and everyone who reported bugs and participated in discussions!
v2.0.21-1.0.26
Compare Source
Bugs Fixed
Full Changelog: google/ksp@911690b...2.0.21-1.0.26
Contributors
Thanks to @ansman, @asapha, @kaeawc, @kuanyingchou, @scott-pollom, and everyone who reported bugs and participated in discussions!
v2.0.21-1.0.25
Compare Source
What's Changed
Full Changelog: google/ksp@2.0.21-RC-1.0.25...2.0.21-1.0.25
v2.0.20-1.0.25
Compare Source
Bugs Fixed
Inlined JVM name is not correct #1493
[KSP2] NullPointerException when getting name of nested annotation #1963
[KSP2] The status was unresolved for FirSimpleFunctionImpl #1938
[KSP2] Class values in type annotations get resolved to error type #1933
[KSP2] Comparing KSType leads to exception #1918
[KSP2] Can't find values in repeatable annotations #1883
incremental: aggregating outputs should always be invalidated #2027
[KSP2] Not yet implemented: KSValueArgumentLiteImpl.getLocation #2048
[KSP2] Not yet implemented: KSValueArgumentImpl.getParent #2049
getSymbolsWithAnnotation returns copy function from data class #1996
[KSP2] Annotations got use-site target when there are none specified #1882
getting null pointer exception #1929
[KSP2] Calling getDeclarationsInSourceOrder throws KotlinIllegalStateExceptionWithAttachments #1930
[KSP2] A failure occurred while executing com.google.devtools.ksp.gradle.KspAAWorkerAction #1941
KSP2: Resolver.getJvmNames doesn't work for inline and internal classes #1640
kspCaches don't work together with Gradle build cache #2042
Contributors
Thank you so much! @ansman, @kuanyingchou
Full Changelog: google/ksp@2.0.20-1.0.24...2.0.20-1.0.25
v2.0.20-1.0.24
Compare Source
What's Changed
v2.0.10-1.0.24
Compare Source
What's Changed
v2.0.0-1.0.24
Compare Source
What's Changed
#2013 Handle edge cases of KtAnnotated.annotations
#2009 Fix :kotlin-analysis-api:shadowJar failing on Windows
#2006 Use symbol-processing-aa-embeddable in Gradle
Bugs Fixed
#1956 IllegalAccessError in Dagger with KSP2.0.0-1.0.22 and KSP2
#1998 KSP2 version 2.0.0-1.0.23 crashes on Moshi codegen with NoSuchElementException: Collection contains no element matching the predicate.
Full Changelog: google/ksp@e880744...c63864c
v2.0.0-1.0.23
Compare Source
Issues fixed
Kotlin/kotlinx.serialization (org.jetbrains.kotlinx:kotlinx-serialization-json)
v1.7.3
==================
This release aims to fix important issues that were discovered in the 1.7.2 release,
including the inability to sync certain projects into Android Studio/IntelliJ IDEA and exceptions from custom Uuid serializers.
It uses Kotlin 2.0.20 by default.
v1.7.2
==================
This release provides several new features, including a major Cbor configuration rework.
It uses Kotlin 2.0.20 by default.
Cbor feature set for COSE compliance
This change brings a lot of features to the CBOR format, namely:
@CborLabel
annotation andpreferCborLabelsOverNames
flag.encode*Tags
andverify*Tags
set of flagsuseDefiniteLengthEncoding
. This flag affects object encoding, since decoding of arrays with definite lenghts is automatically supported.alwaysUseByteString
flag.Since there are quite a lot of flags now, they were restructured to a separate
CborConfiguration
class, similarly toJsonConfiguration
.It is possible to retrieve this configuration from
CborEncoder/CborDecoder
interfaces in your custom serializers (see their documentation for details).All of these features make it possible to serialize and parse COSE-compliant CBOR, for example, ISO/IEC 18013-5:2021-compliant mobile driving license data.
In case you want to make use of them, there is a predefined
Cbor.CoseCompliant
instance.However, some canonicalization steps (such as sorting keys) still need to be performed manually.
This functionality was contributed to us by Bernd Prünster.
Keeping generated serializers
One of the most requested features for serialization plugin was to continue to generate a serializer even if a custom one is specified for the class.
It allows using a plugin-generated serializer in a fallback or delegate strategy, accessing type structure via descriptor, using default serialization behavior in inheritors that do not use custom serializers.
Starting with this release, you can specify the
@KeepGeneratedSerializer
annotation on the class declaration to instruct the plugin to continue generating the serializer.In this case, the serializer will be accessible using the
.generatedSerializer()
function on the class's companion object.You can check out the examples in the documentation and in the PRs: #2758, #2669.
Serializer for kotlin.uuid.Uuid
Kotlin 2.0.20 added a common class to represent UUIDs in a multiplatform code.
kotlinx.serialization 1.7.2 provides a corresponding
Uuid.serializer()
for it, making it possible to use it in@Serializable
classes.Note that for now, serializer should be provided manually with
@Contextual
annotation.Plugin will be able to automatically insert
Uuid
serializer in Kotlin 2.1.0.See more details in the corresponding PR.
Other bugfixes and improvements
Kotlin/kotlinx-datetime (org.jetbrains.kotlinx:kotlinx-datetime)
v0.6.1
DateTimeFormat
(#405)/etc/localtime
set, defaulting toTimeZone.UTC
as the system time zone (#426)Kotlin/kotlinx.coroutines (org.jetbrains.kotlinx:kotlinx-coroutines-test)
v1.9.0
Compare Source
Features
limitedParallelism
now optionally accepts the name of the dispatcher view for easier debugging (#4023).Dispatchers.IO
on the JVM when other standard dispatchers are accessed (#4166). Thanks, @metalhead8816!Flow<T>.chunked(size: Int): Flow<List<T>>
operator that groups emitted values into groups of the given size (#1290).AutoCloseable
now (#4123).Fixes
hasNext
on aChannel
's iterator is idempotent (#4065). Thanks, @gitpaxultek!CoroutineScope()
created without an explicit dispatcher usesDispatchers.Default
on Native (#4074). Thanks, @whyoleg!Dispatchers.Main
from initializing when the Firebase dependency is used (#3914).runBlocking
(#4134).Mutex
toSemaphore
(#4176).asDeferred
on aFuture
many times (#4156).Deprecations and promotions
BroadcastChannel
-based API (#4197).kotlinx-coroutines-test
API (#4198).Job.cancelFutureOnCompletion
(#4173).CoroutineDispatcher.limitedParallelism
to stable (#3864).CoroutineStart.ATOMIC
fromExperimentalCoroutinesApi
toDelicateCoroutinesApi
(#4169).CancellableContinuation.resume
with anonCancellation
lambda to stable, providing extra arguments to the lambda (#4088).InternalForInheritanceCoroutinesApi
opt-in (#3770).ExperimentalForInheritanceCoroutinesApi
opt-in (#3770).Other
CoroutineStart
andChannel
-based API (#4147, #4148, #4167). Thanks, @globsterg!Job
(#4053).v1.9.0-RC.2
Compare Source
BroadcastChannel
-based API (#4197).kotlinx-coroutines-test
API (#4198).CoroutineStart.ATOMIC
fromExperimentalCoroutinesApi
toDelicateCoroutinesApi
(#4169).CoroutineStart
andChannel
-based API (#4147, #4148, #4167). Thanks, @globsterg!Mutex
toSemaphore
(#4176).Job.cancelFutureOnCompletion
(#4173).asDeferred
on aFuture
many times (#4156).probeCoroutineResumed
when starting coroutines withUNDISPATCHED
(#4162).Dispatchers.IO
on the JVM when other standard dispatchers are accessed (#4166). Thanks, @metalhead8816!JetBrains/kotlin (org.jetbrains.kotlin.plugin.compose)
v2.1.0
: Kotlin 2.1.0Changelog
Analysis API
New Features
KT-68603
KotlinDirectInheritorsProvider: add an option to ignore non-kotlin resultsPerformance Improvements
KT-70757
Performance problem in KaFirVisibilityChecker for KaFirPsiJavaClassSymbolFixes
KT-70437
Class reference is not resolvableKT-57733
Analysis API: Use optimizedModuleWithDependenciesScope
s in combined symbol providersKT-72389
K2: False positive "Redundant 'protected' modifier" for protected property inside protected constructor from private or internal classKT-69190
K2: False-positive "redundant private modifier"KT-64984
Analysis API: Support Wasm targetKT-70375
K2: NPE at org.jetbrains.kotlin.analysis.api.fir.symbols.KaFirNamedClassSymbolBase.createPointerKT-71259
K2 evaluator: Invalid smart cast info collecting for Code FragmentsKT-69360
Lack of implicit receiver for the last statement under lambda in scriptsKT-70890
Analysis API: Experiment with weak references to LL FIR/analysis sessions in session cachesKT-70657
Analysis API: Inner types from classes with generics are incorrectly represented by the compiled jarsKT-71055
Suspend calls inside 'analyze()' break the block guaranteesKT-70815
Analysis API: Implement stop-the-world session invalidationKT-69819
K2 IDE: LHS type in callable references is unresolved when it has type arguments and is qualifiedKT-68761
Analysis API: Experiment with limited-size cache inKaFirSessionProvider
KT-70384
Analysis API Standalone: The same class in the same two renamed jars is unresolvedKT-71067
Exceptions from references cancel Find UsagesKT-69535
Redesign 'containingSymbol'KT-71025
K2 IDE: Scopes in "importingScopeContext" have reversed ordering and "indexInTower" valuesKT-67483
K2 IDE: Serializable plugin causes infinite resolve recursion when there is a star import from a class with annotation callKT-69416
K2 IDE / Completion: “No classifier found” on simple value creatingKT-70257
CCE: class kotlin.UInt cannot be cast to class java.lang.NumberKT-70376
K2 IDE / Kotlin Debugger: IAE “Only componentN functions should be cached this way, but got: toString” on evaluating toString() method for value classKT-70264
AA: service registration via XML fails with AbstractMethodError in Lint CLIKT-69950
Analysis API: IntroduceisSubtypeOf(ClassId)
KT-68625
K2: “lazyResolveToPhase(STATUS)
cannot be called from a transformer with a phase STATUS.”KT-67665
K2: contract violation for value class with a constructor parameter with an implicit typeKT-67009
Analysis API: Add abbreviated type tests for type aliases from source modulesKT-69977
KaFirFunctionalType#getAbbreviation is always nullKT-68341
Analysis API: Expanded function types from libraries don't have an abbreviated typeKT-68857
Analysis API: Refactor annotationsKT-70386
Do not filter out overloads from different libraries in dangling filesKT-65552
K2: CANNOT_CHECK_FOR_ERASED in KtTypeCodeFragmentKT-65803
K2: Analysis API: KtFirTypeProvider#getSubstitutedSuperTypes throws an exception in the case of "Wrong number of type arguments"KT-68896
Support VirtualFile binary dependency inputs to Analysis API modulesKT-69395
K2 IDE: incorrect overload selection from binary dependencies in a shared native source setKT-68573
ISE: "Unexpected constant value (kotlin/annotation/AnnotationTarget, CLASS)" at Kt1DescUtilsKt.toKtConstantValue()KT-69576
Analysis API: FIR implementation of "isImplicitReferenceToCompanion" returns false for companion references in implicit invoke operator callsKT-69568
Analysis API: FIR implementation of "isImplicitReferenceToCompanion" returns true for non-companion references in qualified callsKT-69436
Analysis API Platform: EncapsulateLLFirDeclarationModificationService
as an engine serviceKT-63004
K2: Analysis API: Design API for querying declarations generated by compiler plugins (similar to indices)KT-69452
AA FIR: wrong source PSI after compile-time evaluationKT-69598
AA: definitely not-null type at receiver position should be wrapped in parenthesisKT-60484
Analysis API: add support for KtType pointers similar to KtSymbolPointerKT-68884
Analysis API: Rename/deprecate/remove declarations as part of StabilizationKT-69453
AA FIR: miss to handle expected type of lambda with explicit labelKT-69533
Protect implementation parts of Analysis API with opt-in annotationsAnalysis API. FIR
Performance Improvements
KT-71566
FirElementBuilder#getFirForNonKtFileElement should iterate a Psi file over and overKT-71224
Analysis API:FirElementFinder.collectDesignationPath
relies on naive iteration through FIR filesFixes
KT-70327
Analysis API: Batch inspection causes deadlock inValueWithPostCompute
KT-69070
Analysis API: Querying declared member scope for Java symbols results in exception in some use casesKT-68268
LLSealedInheritorsProvider: reduce scope to kotlin filesKT-69671
TYPES phase contract violation through JavaSymbolProviderKT-70624
Declaration symbols from code fragments are treated as not localKT-70662
NPE: FirLazyBodiesCalculatorKt.calculateLazyBodyForPropertyKT-70859
Do not fail highlighting due to resolution problemsKT-70474
FirLazyResolveContractViolationException from JavaSymbolProviderKT-70323
FirLazyResolveContractViolationException:lazyResolveToPhase(TYPES)
cannot be called from a transformer with a phase TYPESKT-71567
LLFirCompilerRequiredAnnotationsTargetResolver should calculate annotation arguments on demandKT-71584
getNonLocalContainingOrThisDeclaration
treats KtParameter from functional type as non-localAnalysis API. Light Classes
Performance Improvements
KT-69998
Drop redundant cache from ClassInnerStuffCacheFixes
KT-69833
Support value classesKT-71693
Wrong name mangling for JvmField class property and companion property clashKT-71469
KtLightClassForDecompiledDeclaration: missed kotlinOriginKT-70710
Provide light classes for KMP modules in Android LintKT-70548
SLC: text of class object access expression is not the same as raw textKT-70572
SLC: missingisInheritor
implementation for type parameterKT-70491
SLC: inconsistent source PSI of no-arg constructor for all default valuesKT-70458
SLC: missedauxiliaryOriginalElement
for delegated propertyKT-70232
Support a companion object inside value classesKT-70349
@delegate
:` annotations are missed for light class fieldsKT-68328
Move KtLightClassBase to ULCAnalysis API. Providers and Caches
KT-65618
K2: resulted FirClass.psi != requested PsiClass from completionKT-69292
K2: Analysis API: A property'sMUST_BE_INITIALIZED
diagnostic is not updated after changingfield
usage in an accessorKT-71468
Drop redundant logic from LLFirJavaFacadeForBinariesKT-71700
Cache result of resolveToCallKT-71520
Analysis API:LLFirNativeForwardDeclarationsSymbolProvider
spends a lot of time in indicesAnalysis API. Standalone
KT-65110
Analysis API: In Standalone mode the order of symbols is unstableAnalysis API. Stubs and Decompilation
KT-71565
KtClassOrObject should use isLocal from greenStubAnalysis API. Surface
New Features
KT-69960
resolveToCallCandidates
should support operatorsKT-69961
resolveToCallCandidates
should support propertiesPerformance Improvements
KT-70529
KaSymbol: reduce the number ofcached
usagesKT-70165
Introduce PSI-basedKaSymbol
s for K2Fixes
KT-69371
Analysis API: expose only interfaces/abstract classes for the resolution APIKT-69696
KaSymbolByFirBuilder should filter call-site substitutionsKT-69679
KaDelegatedConstructorCall should have substituted signatureKT-70206
anonymousSymbol
API throws an exception for regular functionsKT-69699
Receiver type is not substituted in the case of conflict declarationsKT-69381
Analysis API: Investigate the viability of currentKaSymbol
cachesKT-70199
K2: ConcurrentModificationException at FirCallCompleter$LambdaAnalyzerImpl.analyzeAndGetLambdaReturnArgumentsKT-70661
Invalid FirDeclarationOrigin ScriptTopLevelDestructuringDeclarationContainerKT-70663
KaFirDestructuringDeclarationSymbol: Failed requirementKT-63490
Analysis API: Accessing the Analysis API should be prohibited during dumb modeKT-63390
K2: Analysis API: add annotations to KtClassInitializerSymbolKT-55124
Design common ancestor for KtValueParameter and KtReceiverParameterSymbolKT-71731
directlyOverridenSymbols/allOverridenSymbols works incorrectly for intersection overridesApple Ecosystem
KT-66262
Deprecate and remove support for bitcode embedding from the Kotlin Gradle pluginKT-66894
XCFramework task fails when name passed to xcframework DSL is different from framework's nameKT-65675
XCFrameworkTask produces an xcframework with mismatched casing in embedded frameworksKT-69119
xcodeVersion task fails if Xcode isn't installed and apple-specific native targets aren't declaredBackend. Wasm
New Features
KT-70786
Improve DX of the variable view during debugging in Chrome/Firefox for Kotlin/WasmKT-70331
Support incremental compilation for the Wasm backendKT-71686
K/Wasm: Add functions to convert between Kotlin and JS array typesKT-68185
[WasmJs] Attach js exception object to JsExceptionFixes
KT-71294
Wasm Artifacts/Resource are being loaded relatively instead of absolutelyKT-71473
K/Wasm: Use--closed-world
and related options for BinaryenKT-72297
[Wasm] Unused associated object class lead to compiler failKT-72156
custom-formatters.js exists in JAR after publishToMavenLocal but not in the published artifact in Maven publicKT-65799
K/Wasm: remove default exports from wasm exportsKT-71800
Wasm compiler: Fix member generation for data classes with an array-type propertyKT-71580
String::toFloat on wasm behaves differently compared to other targetsKT-71523
K/Wasm: cleanup after fix for KT-71474KT-71475
K/Wasm: KClass::qualifiedName returns incorrect result for nested or companion objectsKT-71474
K/Wasm: KProperty*Impl equals work incorrectly for clabbale reference created in different files or modulesKT-61130
K/Wasm: Function signatures may clash with base class internal methods from a friend moduleKT-70820
[Kotlin QG] wasm-validator fails when running compile[...]KotlinWasmJsOptimizeKT-70819
[Kotlin QG] node.js fails when running wasmJs[...]Test KGP tasksKT-70394
Investigate increased wasm binary size after switching stdlib compilation to K2KT-69627
Removecreate###Array
functions from WASM stdlibKT-68509
Fatal: error validating input in compileProductionExecutableKotlinWasmJsOptimizeCompiler
New Features
KT-71094
Kotlin/Native incremental compilation: fail compilation if cache build failedKT-21908
Support 'when' exhaustiveness checking for generConfiguration
📅 Schedule: Branch creation - "before 4am" (UTC), 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.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.