Update kotlin - #1026
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
March 20, 2025 12:05
b7271a2 to
3959686
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
2 times, most recently
from
March 26, 2025 18:55
def3efa to
d690808
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
April 1, 2025 11:58
d690808 to
fddf59a
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
2 times, most recently
from
April 9, 2025 01:55
9cbc5c3 to
e79d963
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
April 30, 2025 23:42
e79d963 to
3749568
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
2 times, most recently
from
May 13, 2025 22:41
780f944 to
1b3edcf
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
June 10, 2025 03:31
1b3edcf to
d44f2c7
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
3 times, most recently
from
June 27, 2025 18:47
248c1e3 to
904a1bb
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
July 7, 2025 23:15
904a1bb to
f47bfa8
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
August 10, 2025 14:03
f47bfa8 to
a087208
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
2 times, most recently
from
August 15, 2025 01:39
ce8b815 to
9fff1ba
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
3 times, most recently
from
September 12, 2025 00:05
3cc32f0 to
8c41c12
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
October 8, 2025 04:14
8c41c12 to
5916a7f
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
2 times, most recently
from
October 23, 2025 14:14
80e576c to
f8a1604
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
2 times, most recently
from
November 9, 2025 11:52
f0db574 to
c203411
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
November 21, 2025 01:04
c203411 to
5bebf36
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
December 16, 2025 12:56
5bebf36 to
401b29b
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
December 16, 2025 18:01
401b29b to
c5ed8e5
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
January 21, 2026 18:09
c5ed8e5 to
66d60d8
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
January 28, 2026 20:45
66d60d8 to
41de403
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
February 5, 2026 09:33
41de403 to
a2e76a7
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
February 18, 2026 02:28
a2e76a7 to
aedcc2e
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
March 16, 2026 09:12
aedcc2e to
5b0f72d
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
April 9, 2026 21:32
5b0f72d to
c311808
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
2 times, most recently
from
April 23, 2026 09:41
6af37b1 to
7ad7dfa
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
3 times, most recently
from
May 13, 2026 20:04
984415e to
6e644da
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
May 26, 2026 21:52
6e644da to
01266b9
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
June 3, 2026 11:38
01266b9 to
58651c5
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
2 times, most recently
from
July 14, 2026 11:02
1405484 to
498e191
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
August 3, 2026 21:11
498e191 to
ba6a305
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
September 7, 2026 15:04
ba6a305 to
9a52b68
Compare
renovate
Bot
force-pushed
the
renovate/kotlin
branch
from
September 9, 2026 20:42
9a52b68 to
01d306c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.1.10-1.0.30→2.3.121.8.0→1.11.00.6.2→0.8.0-0.6.x-compat1.10.1→1.11.01.10.1→1.11.02.1.10→2.4.202.1.10→2.4.202.1.10→2.4.202.1.10→2.4.202.1.10→2.4.202.1.10→2.4.20Release Notes
google/ksp (com.google.devtools.ksp)
v2.3.12Compare Source
v2.3.11Compare Source
What's Changed
org.gradle.isolated-projectsfor project isolation (#3051)kspDebugAndroidTesttask skipping on Android library modules (#3050)@NotNullannotations during incremental compilation (#3030)KspGradleConfig.logLevelas@Internal(#3039)org.gradle.isolated-projects=trueto KSP Gradle properties reference table (#3076)KSValueArgument.value(#3069)ksp.useKSP2deprecation notice (#3066)Contributors
Full Changelog: google/ksp@2.3.10...2.3.11
v2.3.10Compare Source
What's Changed
KSTypeImplto speed up processing (#2896)@JvmRecord(#2813)kotlinx.coroutinesin the distributed uber jarsymbol-processing-aa-embeddable(#2938)ksp(...)Gradle configuration in Kotlin Multiplatform (KMP) projects in favor of target-specific configurations (#2956). Note: Non-KMP projects are also affected. For migration details, see the documentation.Contributors
Full Changelog: google/ksp@2.3.9...2.3.10
v2.3.9Compare Source
What's Changed
Contributors
Full Changelog: google/ksp@2.3.8...2.3.9
v2.3.8Compare Source
What's Changed
Contributors
Full Changelog: google/ksp@2.3.7...2.3.8
v2.3.7Compare Source
What's Changed
Contributors
Full Changelog: google/ksp@2.3.6...2.3.7
v2.3.6Compare Source
What's Changed
Contributors
Full Changelog: google/ksp@2.3.5...2.3.6
v2.3.5Compare Source
What's Changed
Contributors
Full Changelog: google/ksp@2.3.4...2.3.5
v2.3.4Compare Source
What's Changed
Contributors
Full Changelog: google/ksp@2.3.3...2.3.4
v2.3.3Compare Source
What's Changed
Contributors
Full Changelog: google/ksp@2.3.2...2.3.3
v2.3.2Compare Source
What's Changed
Note: This release is a hotfix for a regression introduced in 2.3.1
Contributors
Thanks to everyone who reported bugs and participated in discussions!
Full Changelog: google/ksp@2.3.1...2.3.2
v2.3.1Compare Source
What's Changed
Contributors
Thanks to everyone who reported bugs and participated in discussions!
Full Changelog: google/ksp@2.3.0...2.3.1
v2.3.0Compare Source
What's Changed
Reason for 2.3.0 version name:
Full Changelog: google/ksp@2.2.20-2.0.4...2.3.0
v2.2.21-2.0.5Compare Source
What's Changed
Full Changelog: google/ksp@2.2.21-2.0.4...2.2.21-2.0.5
v2.2.21-2.0.4Compare Source
What's Changed
Full Changelog: google/ksp@2.2.21-RC2-2.0.4...2.2.21-2.0.4
v2.2.20-2.0.4Compare Source
What's Changed
Unable to build on AGP 8.11.1 using KSP 2.2.20-2.0.3 due to class cast exception #2614
Resolver#getJvmCheckedException(KSPropertyAccessor) throws IllegalArgumentException #2548
ClassCastException when building with 2.2.20-2.0.3 #2598
Replace KaFirStopWorldCacheCleaner with no-op implementation #2626
BuildConfig values are not available during annotation process after upgrading ksp from 2.2.10-2.0.2 -> 2.2.20-2.0.3 #2597
Missing Gradle task wiring with 2.2.20-2.0.3 #2595
2.2.20-2.0.3 + protobufJavalite build errors #2596
Contributors
Thanks to everyone who reported bugs and participated in discussions!
Full Changelog: google/ksp@2.2.20-2.0.3...2.2.20-2.0.4
v2.2.20-2.0.3Compare Source
What's Changed
Contributors
Thanks to everyone who reported bugs and participated in discussions!
Full Changelog: google/ksp@2.1.21-2.0.2...2.2.20-2.0.3
v2.2.20-2.0.2Compare Source
What's Changed
Full Changelog: google/ksp@2.2.20-RC2-2.0.2...2.2.20-2.0.2
v2.2.10-2.0.2Compare Source
What's Changed
Full Changelog: google/ksp@2.2.10-RC2-2.0.2...2.2.10-2.0.2
v2.2.0-2.0.2Compare Source
What's Changed
Full Changelog: google/ksp@2.2.0-RC3-2.0.2...2.2.0-2.0.2
v2.1.21-2.0.2Compare Source
What's Changed
KSP1: use new mangling scheme for inline classes #2446
KSP task (non-)registration happens too soon #1789
[ksp2] Resolver.getJvmName wrong for properties starts with is #2275
Inlined JVM name is not correct #1493
[KSP2] Annotation values of inner annotations shouldn't be marked as default #2437
Properly support @ all annotation use site target #2438
Contributors
Thanks to everyone who reported bugs and participated in discussions!
Full Changelog: google/ksp@2.1.21-2.0.1...2.1.21-2.0.2
v2.1.21-2.0.1Compare Source
What's Changed
Full Changelog: google/ksp@2.1.21-RC2-2.0.1...2.1.21-2.0.1
v2.1.20-2.0.1Compare Source
What's Changed
Contributors
Thanks to everyone who reported bugs and participated in discussions!
Full Changelog: google/ksp@2.1.20-2.0.0...2.1.20-2.0.1
v2.1.20-2.0.0Compare Source
What's Changed
Full Changelog: google/ksp@2.1.20-1.0.32...2.1.20-2.0.0
v2.1.20-1.0.32Compare Source
What's Changed
#2379 [KSP2] resolved type of vararg parameter in functions changed vs KSP1
#2358 [KSP2] Annotation missing from property when VALUE_PARAMETER target is used.
And various performance optimizations!
v2.1.20-1.0.31Compare Source
What's Changed
Full Changelog: google/ksp@2.1.20-RC2-1.0.31...2.1.20-1.0.31
v2.1.10-1.0.31Compare Source
Bug Fixes
Kotlin/kotlinx.serialization (org.jetbrains.kotlinx:kotlinx-serialization-json)
v1.11.0==================
This release is based on Kotlin 2.3.20 and provides new Json exceptions API and some bugfixes and improvements.
Expose Json exceptions structure
To make working with exceptions easier and providing proper error codes in e.g., REST APIs,
classes
JsonException,JsonDecodingException, andJsonEncodingExceptionare now public.They have relevant public properties, such as
shortMessage,path,offset, and others.This API is currently experimental, and we're going to improve it further in the subsequent releases.
See the linked issues for the details: #1930, #1877.
Ability to hide user input from exception messages for security/privacy reasons.
Historically, exception messages in kotlinx.serialization often included the input Json itself for debuggability reason.
Such behavior may pose additional challenges for logging, analytics, and other systems, since
a system is not always allowed to store user data due to privacy/security reasons, which imposes additional sanitation logic.
To address this issue, a new property
exceptionsWithDebugInfois added toJsonConfiguration.Disable it to hide user input from exception messages.
IMPORTANT: This behavior will be enabled by default when this property becomes stable.
See #2590 for more details.
Bugfixes and improvements
v1.10.0==================
This release is based on Kotlin 2.3.0 and contains all of the changes from 1.10.0-RC.
The only additional change is a fix for ProtoBuf packing of Kotlin unsigned types (#3079).
Big thanks to KosmX for contributing the fix.
Stabilization of APIs
kotlinx-serialization 1.10 and subsequent releases will be focused on stabilization of existing APIs.
The following APIs and configuration options are no longer experimental because they're widely used without any known major issues:
Jsonconfiguration options:decodeEnumsCaseInsensitive,allowTrailingComma,allowComments, andprettyPrintIndent. (#3100)@EncodeDefaultannotation and its modes. (#3106)JsonUnquotedLiteralconstructor function (#2900)JsonPrimitiveconstructor function overloads that accept unsigned types. (#3117)JsonElementwithNothing?overloads. (#3117)Readiness for return value checker
Kotlin 2.3.0 introduces a new feature aimed
at helping you to catch bugs related to the accidentally ignored return value of the function.
kotlinx-serialization 1.10.0-RC code is fully marked for this feature, meaning that you
can get warnings for unused function calls like
Json.encodeToString(...).To get the warnings, the feature has to be enabled in your project as described here.
Polymorphism improvements
Polymorphic serialization received a couple of improvements in this release:
New
subclassesOfSealedutility to automatically register sealed subclasses serializers in polymorphic modules (#2201).Use it in your
SerializersModulewhen configuring a polymorphic hierarchy which contains both abstract and sealed classes.For example, when root of your hierarchy is an
interface, but most of your inheritors aresealedclasses.The new function will register all known sealed subclasses for you, so you don’t need to list them one by one.
This makes writing your
SerializerModules much faster and simpler.Big thanks to Paul de Vrieze for contributing this feature.
Class discriminator conflict check rework (#3105).
If a payload already contains a property with the same name as the configured discriminator (for example,
type),it is called a class discriminator conflict.
To produce a correct output and allow more inputs to be deserialized at the same time, the following changes were made:
JsonNamingStrategytransformations are now detected during serialization as well and will causeSerializationException.It also affects non-polymorphic classes.
ClassDisciminatorMode.ALL_JSON_OBJECTSandSerializersModuleBuilder.polymorphicDefaultSerializerare also detected.Previously, it was possible in the sealed hierarchies alone due to missing assertion. See #1664 for details.
General improvements
.serialNametoMissingFieldExceptionfor clearer diagnostics. (#3114)Automatic-Module-Nameentries for metadata JARs. (#3109)Bugfixes
BIGNUM_NEGATIVEtag name. (#3090)v1.9.0==================
This release updates Kotlin version to 2.2.0, includes several bugfixes and provides serializers for kotlin.time.Instant.
Add kotlin.time.Instant serializers
Instant class was moved from kotlinx-datetime library to Kotlin standard library.
As a result, kotlinx-datetime 0.7.0 no longer has serializers for the Instant class.
To use new kotlin.time.Instant class in your @Serializable classes,
you can use this 1.9.0 kotlinx-serialization version (Kotlin 2.2 is required).
You can choose between default
InstantSerializerwhich uses its string representation,or specify
InstantComponentSerializerthat represents instant as its components.See details in the PR.
Other bugfixes
v1.8.1==================
This release updates Kotlin version to 2.1.20, while also providing several important improvements
and bugfixes.
Improvements
Bugfixes
Kotlin/kotlinx-datetime (org.jetbrains.kotlinx:kotlinx-datetime)
v0.8.0Breaking changes:
TimeZoneserialization (#576).Additions:
orNullfunctions for non-throwing construction of datetime entities (#68).parseOrNullextension functions for non-throwing attempts at parsing (#508).LocalIsoWeekDatefor representing ISO week dates (#603).Tweaks and fixes:
Instant.untilandInstant.periodUntil(#534).DateTimeComponents.Formats.RFC_1123format (#608).Changelog relative to version 0.8.0-rc02
No changes, only the version is increased.
v0.7.1kotlinx.datetime.Instantandkotlinx.datetime.Clocktype aliases to, respectively,kotlin.time.Instantandkotlin.time.Clockto make migration more convenient.v0.7.0Breaking changes:
kotlinx.datetime.Instantandkotlinx.datetime.Clockin favor ofkotlin.time.Instant(#506). See https://github.com/Kotlin/kotlinx-datetime?tab=readme-ov-file#deprecation-of-instant for a description of what to do if this causes problems.LocalDateandLocalDateTimevalues on all platforms (#432).dayOfMonthtoday,monthNumbertomonth(#84).DayOfWeekandMonthno longer type aliases tojava.time.DayOfWeekandjava.time.Month(#96)."UTC"and not"Z"be the timezone identifier forTimeZone.UTC(#474)."z"inTimeZone.of, with the same meaning as"Z"(#529).DateTimeFormat-basedKSerializerimplementations for datetime entities, and change the default serializers to be based ontoString/parsepairs (#415).Additions:
java.io.Serializableimplementations for most of the entities in the library (#143). Thanks for spotting and fixing a potential vulnerability, @lukellmann!LocalDateRange, a range ofLocalDatevalues (#190). Thanks, @PeterAttardo!YearMonthandYearMonthRange(#457).Tweaks and fixes:
timeZoneId()directive (#444).timeZoneId()directive, allowing parsing values not present in the timezone database (#531).DateTimeComponentsvalue (#471).kotlinx.serialization.coreto be optional (#496).Kotlin/kotlinx.coroutines (org.jetbrains.kotlinx:kotlinx-coroutines-test)
v1.11.0Compare Source
Various
Breaking changes and deprecations
Promise-related functions from JS and Wasm/JS to the newwebtarget. On Wasm/JS, this is a breaking change. Before the change,Promiseon Wasm/JS could work with arbitrary Kotlin types, but now, onlyJsAnysubtypes are accepted (#4563).CoroutineDispatcheras the coroutine context key; now,ContinuationInterceptorhas to be used instead (#4333).kotlinx-coroutines-testAPIs (#4604).Jobto coroutine builders as deprecated (#4435).Bug fixes and improvements
callsInPlace(EXACTLY_ONCE)contract torunBlockingin code shared between JVM and Native (#4368).callsInPlace(EXACTLY_ONCE)contract tosuspendCancellableCoroutine(#4574).flowOnincorrectly handlingThreadContextElementupdates (#4403).Thread.UncaughtExceptionHandlerinstances causing the internal coroutines machinery to fail (#4516).CoroutineDispatcher.asSchedulerin the RxJava integration not cancelling outstanding work when aWorkergets cancelled, which led to memory leaks in some scenarios (#4615).SharedFlowentering an invalid state when a subscriber and an emitter are cancelled simultaneously (#4583).shareIn/stateIncoroutines getting garbage-collected (#4646). Thanks, @solevic!Small additions
CompletableDeferred.asDeferredfor obtaining a read-onlyDeferredview (#4408).SharedFlow.asFlowfor obtaining aFlowview with hidden hot flow semantics (#4530). Thanks, @g000sha256!StateFlow.collectLatestoverload returningNothingto assist with finding unreachable code (#4454).ReceiveChannel.consumeTofor consuming aReceiveChannelinto aMutableCollection(#4520).StateFlow<T>.onSubscriptionoverload returning aStateFlow<T>, similar toSharedFlow<T>.onSubscriptionreturningSharedFlow<T>(#4275). Thanks, @xit0c!Flowoperators for collecting aFlowto aMap(#1541).Changelog relative to version 1.11.0
No changes, only the version is increased.
v1.10.2Compare Source
kotlinx-coroutines-debugJAR file including themodule-info.classfile twice, resulting in failures in various tooling (#4314). Thanks, @RyuNen344!Flow.stateInhanging when the scope is cancelled in advance or the flow is empty (#4322). Thanks, @francescotescari!.limitedParallelism(#4330) and during flow collection (#4272).runBlockingfailing to run its coroutine to completion in some cases if its JVM thread got interrupted (#4399).JetBrains/kotlin (org.jetbrains.kotlin.plugin.serialization)
v2.4.20Analysis API
KT-86546Check suspicious when over ConeKotlinType in ConeTypeCompatibilityCheckerKT-85418Implement an API for accessing deserialized file annotations in Analysis APIKT-74448K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt, kotlinx.coroutinesKT-85856containingSymbol of constructor property differs for local and non-local classesKT-65417K2 IDE: KTOR false positive expect-actual matching error on enum class because of implicit clone() in non-JVM source setsAnalysis API. Code Compilation
KT-76457K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a JVM counterpart” on evaluating inline fun from common module inside jvmAnalysis API. FIR
KT-70552No expects for actualKT-69727K2 IDE. Wrong error in the editor on callingclonefunction of actual enum instance in non-jvm platformKT-69726FP errors on declaringfun clone()in actual enum in not-jvm source-setKT-86014Types are broken after remove parameter through change signatureKT-86363KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier found on companion blocksKT-86147Dropkotlin.parallel.resolve.under.global.lockregistry keyKT-85543Avoid lazy resolve for the contracts phase if no constracts might be resolvedAnalysis API. Infrastructure
KT-84914Do not publish analysis-api-test-frameworkKT-86986kotlin-compiler-common-for-idebundles unrelated Analysis API modulesKT-86186Analysis API: Codebase tests run twice in some analysis modules — pick a single JUnit runner and migrateKT-85360Drop kotlin-compiler-testdata-for-ide artifactKT-85585Simplify the dependencies graph for the Analysis API modulesKT-85381Remove tests for the FE10 implementationAnalysis API. Light Classes
New Features
KT-84645Support resolving to companion block members & extensions from Java (light classes)KT-80775Support PsiClass#getRecordComponents in light classesFixes
KT-57537SLC: propagate default parameter value from (@JvmOverloads)expectdeclarations toactualdeclarationsKT-85040[Analysis API] Improve Java / Kotlin interop in KMP projectsKT-87301SymbolLightAccessorMethod#isValid returns false for delegated propertiesKT-87171SLC: non-mapped Kotlin collection supertype is dropped from supertype listKT-87250JvmExposeBoxed: light classes shouldn't be autogenerated for private declarationsKT-70428AA: good code is red when a Java class extends a Kotlin class implementing MutableList by delegationKT-63568Symbol Light Classes: KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work incorrectly when psi is not setKT-36740MPP: False-positive incompatible types in .java when using expect-class returned by non-expect member from common when actual is actual typealiasKT-67749Analysis API: Symbol Light classes should be available only to pure JVM sourcesKT-68169K2 IDE. KMP. False positive type mismatch in java file of jvm source-set when using common declaration which expects StringKT-37783KMP Java Interop: JVM-only methods on actual superclass not resolved in Java for common subclassKT-40059Provide type correction for expect/actual types used from Java-codeKT-71429MPP: False positive "Function1 is not a functional interface" when calling code from Common in JavaKT-70426SLC: kotlin.Collection#size is not exposed by defaultKT-60480Symbol Light Classes: Classes implementing kotlin.collections.* interfaces don't implement all methods from the corresponding java.util.* interfacesKT-36991IDE: "both methods have same erasure" for Java classes directly or indirectly extending Kotlin collectionsKT-22594KotlinCollection.getSize is not highlighted as an error in JavaAnalysis API. PSI
KT-84925Move KtReference to the Kotlin IntelliJ pluginKT-85052Move mutation methods out of the Kotlin PSIKT-85427Use factory-like pattern insteaConfiguration
📅 Schedule: (UTC)
* 0-3 * * *)🚦 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.