Bumps `kotlin` from 2.4.10 to 2.4.20.
Updates `org.jetbrains.kotlin.jvm` from 2.4.10 to 2.4.20
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.20</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.20</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-36740"><code>KT-36740</code></a>
MPP: False-positive incompatible types in .java when using expect-class
returned by non-expect member from common when actual is actual
typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="890ac1d94f"><code>890ac1d</code></a>
Add Changelog for 2.4.20-RC3</li>
<li><a
href="8860aed4ae"><code>8860aed</code></a>
🍒 [FIR] Fix suspend conversion when expected type is nullable (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7769">#7769</a>)</li>
<li><a
href="ab5bcd9428"><code>ab5bcd9</code></a>
Edit ChangeLog for 2.4.20-RC2</li>
<li><a
href="9464edc097"><code>9464edc</code></a>
Add ChangeLog for 2.4.20-RC2</li>
<li><a
href="0261e43b78"><code>0261e43</code></a>
Cherry-pick "Fix <code>asBodyAndResultVar</code> call in
`visitInlinedLambdaInComposable...</li>
<li><a
href="0763513670"><code>0763513</code></a>
[box-tests] Workaround for klib compatibility tests (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7626">#7626</a>)</li>
<li><a
href="045aec6647"><code>045aec6</code></a>
[Wasm] Append scripts from webpack.config.d in the end of the file (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7615">#7615</a>)</li>
<li><a
href="cd7173bf0b"><code>cd7173b</code></a>
🍒 [2.4.20] [K/JS] Keep associated obj annotation only if getInstance
survives...</li>
<li><a
href="d36a2ffbcc"><code>d36a2ff</code></a>
CastsOptimizationPass: break aliases cycles (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7578">#7578</a>)</li>
<li><a
href="8664983b34"><code>8664983</code></a>
[CLI] Restore custom IC search scope creation</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.10...v2.4.20">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.4.10 to
2.4.20
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.20</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.20</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-36740"><code>KT-36740</code></a>
MPP: False-positive incompatible types in .java when using expect-class
returned by non-expect member from common when actual is actual
typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="890ac1d94f"><code>890ac1d</code></a>
Add Changelog for 2.4.20-RC3</li>
<li><a
href="8860aed4ae"><code>8860aed</code></a>
🍒 [FIR] Fix suspend conversion when expected type is nullable (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7769">#7769</a>)</li>
<li><a
href="ab5bcd9428"><code>ab5bcd9</code></a>
Edit ChangeLog for 2.4.20-RC2</li>
<li><a
href="9464edc097"><code>9464edc</code></a>
Add ChangeLog for 2.4.20-RC2</li>
<li><a
href="0261e43b78"><code>0261e43</code></a>
Cherry-pick "Fix <code>asBodyAndResultVar</code> call in
`visitInlinedLambdaInComposable...</li>
<li><a
href="0763513670"><code>0763513</code></a>
[box-tests] Workaround for klib compatibility tests (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7626">#7626</a>)</li>
<li><a
href="045aec6647"><code>045aec6</code></a>
[Wasm] Append scripts from webpack.config.d in the end of the file (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7615">#7615</a>)</li>
<li><a
href="cd7173bf0b"><code>cd7173b</code></a>
🍒 [2.4.20] [K/JS] Keep associated obj annotation only if getInstance
survives...</li>
<li><a
href="d36a2ffbcc"><code>d36a2ff</code></a>
CastsOptimizationPass: break aliases cycles (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7578">#7578</a>)</li>
<li><a
href="8664983b34"><code>8664983</code></a>
[CLI] Restore custom IC search scope creation</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.10...v2.4.20">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `kotlin` from 2.4.10 to 2.4.20.
Updates `org.jetbrains.kotlin.jvm` from 2.4.10 to 2.4.20
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.20</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.20</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-36740"><code>KT-36740</code></a>
MPP: False-positive incompatible types in .java when using expect-class
returned by non-expect member from common when actual is actual
typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="890ac1d94f"><code>890ac1d</code></a>
Add Changelog for 2.4.20-RC3</li>
<li><a
href="8860aed4ae"><code>8860aed</code></a>
🍒 [FIR] Fix suspend conversion when expected type is nullable (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7769">#7769</a>)</li>
<li><a
href="ab5bcd9428"><code>ab5bcd9</code></a>
Edit ChangeLog for 2.4.20-RC2</li>
<li><a
href="9464edc097"><code>9464edc</code></a>
Add ChangeLog for 2.4.20-RC2</li>
<li><a
href="0261e43b78"><code>0261e43</code></a>
Cherry-pick "Fix <code>asBodyAndResultVar</code> call in
`visitInlinedLambdaInComposable...</li>
<li><a
href="0763513670"><code>0763513</code></a>
[box-tests] Workaround for klib compatibility tests (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7626">#7626</a>)</li>
<li><a
href="045aec6647"><code>045aec6</code></a>
[Wasm] Append scripts from webpack.config.d in the end of the file (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7615">#7615</a>)</li>
<li><a
href="cd7173bf0b"><code>cd7173b</code></a>
🍒 [2.4.20] [K/JS] Keep associated obj annotation only if getInstance
survives...</li>
<li><a
href="d36a2ffbcc"><code>d36a2ff</code></a>
CastsOptimizationPass: break aliases cycles (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7578">#7578</a>)</li>
<li><a
href="8664983b34"><code>8664983</code></a>
[CLI] Restore custom IC search scope creation</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.10...v2.4.20">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.4.10 to
2.4.20
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.20</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.20</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-36740"><code>KT-36740</code></a>
MPP: False-positive incompatible types in .java when using expect-class
returned by non-expect member from common when actual is actual
typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="890ac1d94f"><code>890ac1d</code></a>
Add Changelog for 2.4.20-RC3</li>
<li><a
href="8860aed4ae"><code>8860aed</code></a>
🍒 [FIR] Fix suspend conversion when expected type is nullable (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7769">#7769</a>)</li>
<li><a
href="ab5bcd9428"><code>ab5bcd9</code></a>
Edit ChangeLog for 2.4.20-RC2</li>
<li><a
href="9464edc097"><code>9464edc</code></a>
Add ChangeLog for 2.4.20-RC2</li>
<li><a
href="0261e43b78"><code>0261e43</code></a>
Cherry-pick "Fix <code>asBodyAndResultVar</code> call in
`visitInlinedLambdaInComposable...</li>
<li><a
href="0763513670"><code>0763513</code></a>
[box-tests] Workaround for klib compatibility tests (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7626">#7626</a>)</li>
<li><a
href="045aec6647"><code>045aec6</code></a>
[Wasm] Append scripts from webpack.config.d in the end of the file (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7615">#7615</a>)</li>
<li><a
href="cd7173bf0b"><code>cd7173b</code></a>
🍒 [2.4.20] [K/JS] Keep associated obj annotation only if getInstance
survives...</li>
<li><a
href="d36a2ffbcc"><code>d36a2ff</code></a>
CastsOptimizationPass: break aliases cycles (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7578">#7578</a>)</li>
<li><a
href="8664983b34"><code>8664983</code></a>
[CLI] Restore custom IC search scope creation</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.10...v2.4.20">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `kotlin` from 2.4.10 to 2.4.20.
Updates `org.jetbrains.kotlin.jvm` from 2.4.10 to 2.4.20
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.20</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.20</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-36740"><code>KT-36740</code></a>
MPP: False-positive incompatible types in .java when using expect-class
returned by non-expect member from common when actual is actual
typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="890ac1d94f"><code>890ac1d</code></a>
Add Changelog for 2.4.20-RC3</li>
<li><a
href="8860aed4ae"><code>8860aed</code></a>
🍒 [FIR] Fix suspend conversion when expected type is nullable (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7769">#7769</a>)</li>
<li><a
href="ab5bcd9428"><code>ab5bcd9</code></a>
Edit ChangeLog for 2.4.20-RC2</li>
<li><a
href="9464edc097"><code>9464edc</code></a>
Add ChangeLog for 2.4.20-RC2</li>
<li><a
href="0261e43b78"><code>0261e43</code></a>
Cherry-pick "Fix <code>asBodyAndResultVar</code> call in
`visitInlinedLambdaInComposable...</li>
<li><a
href="0763513670"><code>0763513</code></a>
[box-tests] Workaround for klib compatibility tests (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7626">#7626</a>)</li>
<li><a
href="045aec6647"><code>045aec6</code></a>
[Wasm] Append scripts from webpack.config.d in the end of the file (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7615">#7615</a>)</li>
<li><a
href="cd7173bf0b"><code>cd7173b</code></a>
🍒 [2.4.20] [K/JS] Keep associated obj annotation only if getInstance
survives...</li>
<li><a
href="d36a2ffbcc"><code>d36a2ff</code></a>
CastsOptimizationPass: break aliases cycles (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7578">#7578</a>)</li>
<li><a
href="8664983b34"><code>8664983</code></a>
[CLI] Restore custom IC search scope creation</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.10...v2.4.20">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.4.10 to
2.4.20
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.20</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.20</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-36740"><code>KT-36740</code></a>
MPP: False-positive incompatible types in .java when using expect-class
returned by non-expect member from common when actual is actual
typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="890ac1d94f"><code>890ac1d</code></a>
Add Changelog for 2.4.20-RC3</li>
<li><a
href="8860aed4ae"><code>8860aed</code></a>
🍒 [FIR] Fix suspend conversion when expected type is nullable (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7769">#7769</a>)</li>
<li><a
href="ab5bcd9428"><code>ab5bcd9</code></a>
Edit ChangeLog for 2.4.20-RC2</li>
<li><a
href="9464edc097"><code>9464edc</code></a>
Add ChangeLog for 2.4.20-RC2</li>
<li><a
href="0261e43b78"><code>0261e43</code></a>
Cherry-pick "Fix <code>asBodyAndResultVar</code> call in
`visitInlinedLambdaInComposable...</li>
<li><a
href="0763513670"><code>0763513</code></a>
[box-tests] Workaround for klib compatibility tests (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7626">#7626</a>)</li>
<li><a
href="045aec6647"><code>045aec6</code></a>
[Wasm] Append scripts from webpack.config.d in the end of the file (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7615">#7615</a>)</li>
<li><a
href="cd7173bf0b"><code>cd7173b</code></a>
🍒 [2.4.20] [K/JS] Keep associated obj annotation only if getInstance
survives...</li>
<li><a
href="d36a2ffbcc"><code>d36a2ff</code></a>
CastsOptimizationPass: break aliases cycles (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7578">#7578</a>)</li>
<li><a
href="8664983b34"><code>8664983</code></a>
[CLI] Restore custom IC search scope creation</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.10...v2.4.20">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the other-dependencies group with 2 updates in the
/samples/kotlin-mcp-client directory:
[com.anthropic:anthropic-java](https://github.com/anthropics/anthropic-sdk-java)
and org.slf4j:slf4j-simple.
Bumps the other-dependencies group with 1 update in the
/samples/kotlin-mcp-server directory: org.slf4j:slf4j-simple.
Bumps the other-dependencies group with 1 update in the
/samples/simple-streamable-server directory: org.slf4j:slf4j-simple.
Bumps the other-dependencies group with 1 update in the
/samples/weather-stdio-server directory: org.slf4j:slf4j-simple.
Updates `com.anthropic:anthropic-java` from 2.60.0 to 2.62.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/releases">com.anthropic:anthropic-java's
releases</a>.</em></p>
<blockquote>
<h2>v2.62.0</h2>
<h2>2.62.0 (2026-09-10)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.61.0...v2.62.0">v2.61.0...v2.62.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> add auto mode tool permissions for Managed
Agents (<a
href="e373feae15">e373fea</a>)</li>
<li><strong>api:</strong> add content_too_large web_fetch tool error
code (<a
href="96451dee56">96451de</a>)</li>
<li><strong>api:</strong> add the user-profiles-2026-09-04 beta value
and external_user_details to user profiles (<a
href="eb8c5b8900">eb8c5b8</a>)</li>
<li><strong>api:</strong> support mounting public GitHub repositories
without an authorization_token in Managed Agents sessions (<a
href="2e1c9edbd4">2e1c9ed</a>)</li>
</ul>
<h3>Performance Improvements</h3>
<ul>
<li><strong>streaming:</strong> append tool input JSON in place (<a
href="d330f8bc51">d330f8b</a>)</li>
<li><strong>streaming:</strong> buffer text deltas instead of rebuilding
blocks per delta (<a
href="2bf8f70acd">2bf8f70</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>docs:</strong> correct the environment scope field
description (<a
href="788877064e">7888770</a>)</li>
<li><strong>internal:</strong> cap formatter JVM heap at 1 GiB (<a
href="9b7b5a8b9a">9b7b5a8</a>)</li>
<li><strong>internal:</strong> restore package version (<a
href="28151f2eab">28151f2</a>)</li>
<li><strong>internal:</strong> restore package version (<a
href="6044d632e6">6044d63</a>)</li>
<li><strong>internal:</strong> stop stamping the package version into
generated files (<a
href="ee275adad3">ee275ad</a>)</li>
<li><strong>tests:</strong> restore empty test package marker files (<a
href="3e2284c0b3">3e2284c</a>)</li>
</ul>
<h2>v2.61.0</h2>
<h2>2.61.0 (2026-09-04)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.60.0...v2.61.0">v2.60.0...v2.61.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> add Claude Tag category and user breakdowns to
usage reports (<a
href="7caaeb9fde">7caaeb9</a>)</li>
<li><strong>api:</strong> add named types for organization compliance
settings state (<a
href="9576c86dce">9576c86</a>)</li>
<li><strong>api:</strong> add workspace_id request option for
multi-workspace credentials (<a
href="cf7f13ccc1">cf7f13c</a>)</li>
<li><strong>api:</strong> raise Managed Agents vault refresh token limit
to 8192 chars (<a
href="d0c2286eda">d0c2286</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>api:</strong> remove response text block maxLength
constraint (<a
href="b6225ce280">b6225ce</a>)</li>
<li><strong>client:</strong> read union common properties from raw JSON
for unknown variants (<a
href="3d2f38fe74">3d2f38f</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>api:</strong> accept anthropic-version on Claude Enterprise
admin endpoints (<a
href="165fa6b5aa">165fa6b</a>)</li>
<li><strong>api:</strong> declare specific error statuses instead of a
generic 4XX response (<a
href="e0dc35b2c5">e0dc35b</a>)</li>
<li><strong>api:</strong> update authentication parameters on spend
limit create and delete (<a
href="d054f6cfe4">d054f6c</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/blob/main/CHANGELOG.md">com.anthropic:anthropic-java's
changelog</a>.</em></p>
<blockquote>
<h2>2.62.0 (2026-09-10)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.61.0...v2.62.0">v2.61.0...v2.62.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> add auto mode tool permissions for Managed
Agents (<a
href="e373feae15">e373fea</a>)</li>
<li><strong>api:</strong> add content_too_large web_fetch tool error
code (<a
href="96451dee56">96451de</a>)</li>
<li><strong>api:</strong> add the user-profiles-2026-09-04 beta value
and external_user_details to user profiles (<a
href="eb8c5b8900">eb8c5b8</a>)</li>
<li><strong>api:</strong> support mounting public GitHub repositories
without an authorization_token in Managed Agents sessions (<a
href="2e1c9edbd4">2e1c9ed</a>)</li>
</ul>
<h3>Performance Improvements</h3>
<ul>
<li><strong>streaming:</strong> append tool input JSON in place (<a
href="d330f8bc51">d330f8b</a>)</li>
<li><strong>streaming:</strong> buffer text deltas instead of rebuilding
blocks per delta (<a
href="2bf8f70acd">2bf8f70</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>docs:</strong> correct the environment scope field
description (<a
href="788877064e">7888770</a>)</li>
<li><strong>internal:</strong> cap formatter JVM heap at 1 GiB (<a
href="9b7b5a8b9a">9b7b5a8</a>)</li>
<li><strong>internal:</strong> restore package version (<a
href="28151f2eab">28151f2</a>)</li>
<li><strong>internal:</strong> restore package version (<a
href="6044d632e6">6044d63</a>)</li>
<li><strong>internal:</strong> stop stamping the package version into
generated files (<a
href="ee275adad3">ee275ad</a>)</li>
<li><strong>tests:</strong> restore empty test package marker files (<a
href="3e2284c0b3">3e2284c</a>)</li>
</ul>
<h2>2.61.0 (2026-09-04)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.60.0...v2.61.0">v2.60.0...v2.61.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> add Claude Tag category and user breakdowns to
usage reports (<a
href="7caaeb9fde">7caaeb9</a>)</li>
<li><strong>api:</strong> add named types for organization compliance
settings state (<a
href="9576c86dce">9576c86</a>)</li>
<li><strong>api:</strong> add workspace_id request option for
multi-workspace credentials (<a
href="cf7f13ccc1">cf7f13c</a>)</li>
<li><strong>api:</strong> raise Managed Agents vault refresh token limit
to 8192 chars (<a
href="d0c2286eda">d0c2286</a>)</li>
<li><strong>client:</strong> keep vault credential secrets out of
Terraform state with write-only arguments (<a
href="7556952191">7556952</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>api:</strong> remove response text block maxLength
constraint (<a
href="b6225ce280">b6225ce</a>)</li>
<li><strong>client:</strong> raise a clear error when an httpx object is
passed instead of an httpx2 one (<a
href="130d7af1c6">130d7af</a>)</li>
<li><strong>client:</strong> read union common properties from raw JSON
for unknown variants (<a
href="3d2f38fe74">3d2f38f</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>api:</strong> accept anthropic-version on Claude Enterprise
admin endpoints (<a
href="165fa6b5aa">165fa6b</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="88a17532c5"><code>88a1753</code></a>
Merge pull request <a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/400">#400</a>
from anthropics/release-please--branches--main--chang...</li>
<li><a
href="6964f0722f"><code>6964f07</code></a>
release: 2.62.0</li>
<li><a
href="e373feae15"><code>e373fea</code></a>
feat(api): add auto mode tool permissions for Managed Agents</li>
<li><a
href="2e1c9edbd4"><code>2e1c9ed</code></a>
feat(api): support mounting public GitHub repositories without an
authorizati...</li>
<li><a
href="eb8c5b8900"><code>eb8c5b8</code></a>
feat(api): add the user-profiles-2026-09-04 beta value and
external_user_deta...</li>
<li><a
href="2bf8f70acd"><code>2bf8f70</code></a>
perf(streaming): buffer text deltas instead of rebuilding blocks per
delta</li>
<li><a
href="d330f8bc51"><code>d330f8b</code></a>
perf(streaming): append tool input JSON in place</li>
<li><a
href="788877064e"><code>7888770</code></a>
chore(docs): correct the environment scope field description</li>
<li><a
href="9b7b5a8b9a"><code>9b7b5a8</code></a>
chore(internal): cap formatter JVM heap at 1 GiB</li>
<li><a
href="96451dee56"><code>96451de</code></a>
feat(api): add content_too_large web_fetch tool error code</li>
<li>Additional commits viewable in <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.60.0...v2.62.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Updates `org.slf4j:slf4j-simple` from 2.0.18 to 2.0.19
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.jetbrains.kotlin.jvm](https://github.com/JetBrains/kotlin)
from 2.4.10 to 2.4.20.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.20</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.20</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86546"><code>KT-86546</code></a>
Check suspicious when over ConeKotlinType in
ConeTypeCompatibilityChecker</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85418"><code>KT-85418</code></a>
Implement an API for accessing deserialized file annotations in Analysis
API</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-74448"><code>KT-74448</code></a>
K2. False positive MISSING_DEPENDENCY_SUPERCLASS in LinkedListTest.kt,
kotlinx.coroutines</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85856"><code>KT-85856</code></a>
containingSymbol of constructor property differs for local and non-local
classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65417"><code>KT-65417</code></a>
K2 IDE: KTOR false positive expect-actual matching error on enum class
because of implicit clone() in non-JVM source sets</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-76457"><code>KT-76457</code></a>
K2 IDE / KMP Debugger: KISEWA “Cannot compile a common source without a
JVM counterpart” on evaluating inline fun from common module inside
jvm</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70552"><code>KT-70552</code></a>
No expects for actual</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69727"><code>KT-69727</code></a>
K2 IDE. Wrong error in the editor on calling <code>clone</code> function
of actual enum instance in non-jvm platform</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-69726"><code>KT-69726</code></a>
FP errors on declaring <code>fun clone()</code> in actual enum in
not-jvm source-set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86014"><code>KT-86014</code></a>
Types are broken after remove parameter through change signature</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86363"><code>KT-86363</code></a>
KotlinIllegalArgumentExceptionWithAttachments: No dangling modifier
found on companion blocks</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86147"><code>KT-86147</code></a>
Drop <code>kotlin.parallel.resolve.under.global.lock</code> registry
key</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85543"><code>KT-85543</code></a>
Avoid lazy resolve for the contracts phase if no constracts might be
resolved</li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84914"><code>KT-84914</code></a>
Do not publish analysis-api-test-framework</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86986"><code>KT-86986</code></a>
<code>kotlin-compiler-common-for-ide</code> bundles unrelated Analysis
API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86186"><code>KT-86186</code></a>
Analysis API: Codebase tests run twice in some analysis modules — pick a
single JUnit runner and migrate</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85360"><code>KT-85360</code></a>
Drop kotlin-compiler-testdata-for-ide artifact</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85585"><code>KT-85585</code></a>
Simplify the dependencies graph for the Analysis API modules</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85381"><code>KT-85381</code></a>
Remove tests for the FE10 implementation</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<h4>New Features</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84645"><code>KT-84645</code></a>
Support resolving to companion block members & extensions from Java
(light classes)</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80775"><code>KT-80775</code></a>
Support PsiClass#getRecordComponents in light classes</li>
</ul>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-57537"><code>KT-57537</code></a>
SLC: propagate default parameter value from (<code>@JvmOverloads</code>)
<code>expect</code> declarations to <code>actual</code>
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-85040"><code>KT-85040</code></a>
[Analysis API] Improve Java / Kotlin interop in KMP projects</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87301"><code>KT-87301</code></a>
SymbolLightAccessorMethod#isValid returns false for delegated
properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87171"><code>KT-87171</code></a>
SLC: non-mapped Kotlin collection supertype is dropped from supertype
list</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87250"><code>KT-87250</code></a>
JvmExposeBoxed: light classes shouldn't be autogenerated for private
declarations</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70428"><code>KT-70428</code></a>
AA: good code is red when a Java class extends a Kotlin class
implementing MutableList by delegation</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-63568"><code>KT-63568</code></a>
Symbol Light Classes:
KtAnnotationApplicationWithArgumentsInfo.normalizedArguments() may work
incorrectly when psi is not set</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-36740"><code>KT-36740</code></a>
MPP: False-positive incompatible types in .java when using expect-class
returned by non-expect member from common when actual is actual
typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="890ac1d94f"><code>890ac1d</code></a>
Add Changelog for 2.4.20-RC3</li>
<li><a
href="8860aed4ae"><code>8860aed</code></a>
🍒 [FIR] Fix suspend conversion when expected type is nullable (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7769">#7769</a>)</li>
<li><a
href="ab5bcd9428"><code>ab5bcd9</code></a>
Edit ChangeLog for 2.4.20-RC2</li>
<li><a
href="9464edc097"><code>9464edc</code></a>
Add ChangeLog for 2.4.20-RC2</li>
<li><a
href="0261e43b78"><code>0261e43</code></a>
Cherry-pick "Fix <code>asBodyAndResultVar</code> call in
`visitInlinedLambdaInComposable...</li>
<li><a
href="0763513670"><code>0763513</code></a>
[box-tests] Workaround for klib compatibility tests (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7626">#7626</a>)</li>
<li><a
href="045aec6647"><code>045aec6</code></a>
[Wasm] Append scripts from webpack.config.d in the end of the file (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7615">#7615</a>)</li>
<li><a
href="cd7173bf0b"><code>cd7173b</code></a>
🍒 [2.4.20] [K/JS] Keep associated obj annotation only if getInstance
survives...</li>
<li><a
href="d36a2ffbcc"><code>d36a2ff</code></a>
CastsOptimizationPass: break aliases cycles (<a
href="https://redirect.github.com/JetBrains/kotlin/issues/7578">#7578</a>)</li>
<li><a
href="8664983b34"><code>8664983</code></a>
[CLI] Restore custom IC search scope creation</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.10...v2.4.20">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [hono](https://github.com/honojs/hono) from 4.13.1 to 4.13.7.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/honojs/hono/releases">hono's
releases</a>.</em></p>
<blockquote>
<h2>v4.13.7</h2>
<h2>Security fixes</h2>
<p>This release includes a fix for the following security issue:</p>
<h3><code>hono/jsx</code> renders plain strings unescaped in boundary
components, leading to XSS</h3>
<p>Affects: <code>Suspense</code>, <code>ErrorBoundary</code>, and
<code>Context.Provider</code> in <code>hono/jsx</code>, and
<code>renderToString()</code> / <code>renderToReadableStream()</code> in
<code>hono/jsx/dom/server</code>. Fixes missing HTML escaping for a
plain string placed directly as a child or <code>fallback</code> of
these components, or as the root value of the server rendering
functions, so untrusted strings could be emitted as markup.
GHSA-hxh3-vqpv-xpqv</p>
<hr />
<p>Users who render untrusted strings inside <code>Suspense</code>,
<code>ErrorBoundary</code>, or <code>Context.Provider</code>, or pass
them directly to <code>hono/jsx/dom/server</code>, are strongly
encouraged to upgrade to this version.</p>
<h2>v4.13.6</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(client): keep a param value of "index" in $url() and
$path() in <a
href="https://redirect.github.com/honojs/hono/pull/5297">honojs/hono#5297</a></li>
<li>fix(client): normalize root WebSocket URLs in <a
href="https://redirect.github.com/honojs/hono/pull/5291">honojs/hono#5291</a></li>
<li>fix(types): allow symbol keys in Context<!-- raw HTML omitted -->
get and set fallbacks in <a
href="https://redirect.github.com/honojs/hono/pull/5300">honojs/hono#5300</a></li>
<li>chore: bump <code>editorconfig-checker</code> in <a
href="https://redirect.github.com/honojs/hono/pull/5336">honojs/hono#5336</a></li>
<li>refactor(on-handler): use forEach for consistent handler iteration
in <a
href="https://redirect.github.com/honojs/hono/pull/5326">honojs/hono#5326</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/honojs/hono/compare/v4.13.5...v4.13.6">https://github.com/honojs/hono/compare/v4.13.5...v4.13.6</a></p>
<h2>v4.13.5</h2>
<h2>Security fixes</h2>
<p>This release includes fixes for the following security issues:</p>
<h3>Query parser reads parameters after the URL fragment, causing
cache-key and proxy interpretation differentials</h3>
<p>Affects: Cache Middleware and applications behind a proxy, WAF, or
logging layer that inspects query strings. Fixes query parsing that did
not stop at the URL fragment, so a <code>?</code> after a <code>#</code>
was treated as the start of a query string and the application could
read parameters that the other component never saw.
GHSA-crvj-82cr-hjcx</p>
<h3>Incomplete fix for CVE-2026-39408: <code>toSSG()</code> still writes
files outside the output directory</h3>
<p>Affects: <code>toSSG()</code> for Static Site Generation. Fixes a
path normalization gap where consecutive parent-directory segments in
<code>ssgParams</code> values were not fully collapsed, bypassing the
containment check added in 4.12.12. GHSA-gqvv-2mrq-wpjv</p>
<h3>Unbounded dot-notation nesting in <code>parseBody()</code> can cause
memory exhaustion</h3>
<p>Affects: <code>parseBody()</code> when dot-notation parsing is
enabled. Fixes unbounded expansion of dot-separated field names, where a
small request body could allocate a disproportionately large object
graph and concurrent requests could exhaust the heap.
GHSA-g6gw-c38x-mqfc</p>
<hr />
<p>Users who use Cache Middleware, deploy behind a proxy or WAF that
inspects query strings, use Static Site Generation, or use
<code>parseBody({ dot: true })</code> are strongly encouraged to upgrade
to this version.</p>
<h2>v4.13.4</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(request): handle params on unmatched requests in <a
href="https://redirect.github.com/honojs/hono/pull/5268">honojs/hono#5268</a></li>
<li>fix(jsx/dom): execute previous ref cleanup when ref prop changes on
re-render in <a
href="https://redirect.github.com/honojs/hono/pull/5264">honojs/hono#5264</a></li>
<li>fix(reg-exp-router): associate wildcard middleware with matching
routes in <a
href="https://redirect.github.com/honojs/hono/pull/5266">honojs/hono#5266</a></li>
<li>perf(router): share null object creation in <a
href="https://redirect.github.com/honojs/hono/pull/5267">honojs/hono#5267</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="eebdf7be39"><code>eebdf7b</code></a>
4.13.7</li>
<li><a
href="2b8ed402cd"><code>2b8ed40</code></a>
Merge commit from fork</li>
<li><a
href="cac0c4d3fe"><code>cac0c4d</code></a>
4.13.6</li>
<li><a
href="dac5d5794c"><code>dac5d57</code></a>
refactor(on-handler): use forEach for consistent handler iteration (<a
href="https://redirect.github.com/honojs/hono/issues/5326">#5326</a>)</li>
<li><a
href="ec648d6837"><code>ec648d6</code></a>
chore: bump <code>editorconfig-checker</code> (<a
href="https://redirect.github.com/honojs/hono/issues/5336">#5336</a>)</li>
<li><a
href="e2740d5a1b"><code>e2740d5</code></a>
fix(types): allow symbol keys in Context<any> get and set
fallbacks (<a
href="https://redirect.github.com/honojs/hono/issues/5300">#5300</a>)</li>
<li><a
href="499c35ebda"><code>499c35e</code></a>
fix(client): normalize root WebSocket URLs (<a
href="https://redirect.github.com/honojs/hono/issues/5291">#5291</a>)</li>
<li><a
href="50b8788cf5"><code>50b8788</code></a>
fix(client): keep a param value of "index" in $url() and
$path() (<a
href="https://redirect.github.com/honojs/hono/issues/5297">#5297</a>)</li>
<li><a
href="06880c4a2b"><code>06880c4</code></a>
4.13.5</li>
<li><a
href="531e9c5a3a"><code>531e9c5</code></a>
Merge commit from fork</li>
<li>Additional commits viewable in <a
href="https://github.com/honojs/hono/compare/v4.13.1...v4.13.7">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the all-dependencies group with 3 updates in the
/integration-test/src/jvmTest/typescript directory:
[zod](https://github.com/colinhacks/zod),
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)
and [tsx](https://github.com/privatenumber/tsx).
Updates `zod` from 4.5.2 to 4.5.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/colinhacks/zod/releases">zod's
releases</a>.</em></p>
<blockquote>
<h2>v4.5.4</h2>
<h2>Commits:</h2>
<ul>
<li>84e416fbf4740527bbc8f319634f4e1b065bb42c fix(v4): stop the cycle
walk from firing a default factory (<a
href="https://redirect.github.com/colinhacks/zod/issues/6500">#6500</a>)</li>
<li>e8e206fa33ac5fe7ce20a2beb12d57b1cb3df653 4.5.4</li>
</ul>
<h2>v4.5.3</h2>
<h2>Commits:</h2>
<ul>
<li>e6b6ab347675cd2bd54b1bdbed16f98c59be82a9 docs(blog): widen the
z.compile example to a 20-property schema</li>
<li>87d6464418582bb96fc665a01f852ca6da324ad0 fix(docs): drop the OG
description when the title wraps past two lines</li>
<li>99fce394a026823e602b9c30d8d5d9f5f1932ce7 bench(v4): z.compile()
against zod-compiler (<a
href="https://redirect.github.com/colinhacks/zod/issues/6499">#6499</a>)</li>
<li>e3a695b6bf3f0d591ea682816e3cdaea04b0f967 docs(v4): record the email
regex and container output-shape findings under Open</li>
<li>7e24a24288183ce02554f1ded7775d0650a7b7e6 docs(blog): drop the
reading time and put a GitHub link in the navbar</li>
<li>eab51ff3592b2d11d863f4ee4d5452f31a3de1b6 fix(v4): emit record
numeric keys as strings in toJSONSchema (<a
href="https://redirect.github.com/colinhacks/zod/issues/6497">#6497</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e8e206fa33"><code>e8e206f</code></a>
4.5.4</li>
<li><a
href="84e416fbf4"><code>84e416f</code></a>
fix(v4): stop the cycle walk from firing a default factory (<a
href="https://redirect.github.com/colinhacks/zod/issues/6500">#6500</a>)</li>
<li><a
href="1a16102a49"><code>1a16102</code></a>
4.5.3</li>
<li><a
href="eab51ff359"><code>eab51ff</code></a>
fix(v4): emit record numeric keys as strings in toJSONSchema (<a
href="https://redirect.github.com/colinhacks/zod/issues/6497">#6497</a>)</li>
<li><a
href="7e24a24288"><code>7e24a24</code></a>
docs(blog): drop the reading time and put a GitHub link in the
navbar</li>
<li><a
href="e3a695b6bf"><code>e3a695b</code></a>
docs(v4): record the email regex and container output-shape findings
under Open</li>
<li><a
href="99fce394a0"><code>99fce39</code></a>
bench(v4): z.compile() against zod-compiler (<a
href="https://redirect.github.com/colinhacks/zod/issues/6499">#6499</a>)</li>
<li><a
href="87d6464418"><code>87d6464</code></a>
fix(docs): drop the OG description when the title wraps past two
lines</li>
<li><a
href="e6b6ab3476"><code>e6b6ab3</code></a>
docs(blog): widen the z.compile example to a 20-property schema</li>
<li>See full diff in <a
href="https://github.com/colinhacks/zod/compare/v4.5.2...v4.5.4">compare
view</a></li>
</ul>
</details>
<br />
Updates `@types/node` from 26.4.0 to 26.4.1
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare
view</a></li>
</ul>
</details>
<br />
Updates `tsx` from 4.23.12 to 4.23.13
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/privatenumber/tsx/releases">tsx's
releases</a>.</em></p>
<blockquote>
<h2>v4.23.13</h2>
<h2><a
href="https://github.com/privatenumber/tsx/compare/v4.23.12...v4.23.13">4.23.13</a>
(2026-08-30)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>cache:</strong> bound shared transform cache memory (<a
href="https://redirect.github.com/privatenumber/tsx/issues/835">#835</a>)
(<a
href="28e1f12d04">28e1f12</a>)</li>
</ul>
<hr />
<p>This release is also available on:</p>
<ul>
<li><a href="https://www.npmjs.com/package/tsx/v/4.23.13"><code>npm
package (@latest dist-tag)</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="28e1f12d04"><code>28e1f12</code></a>
fix(cache): bound shared transform cache memory (<a
href="https://redirect.github.com/privatenumber/tsx/issues/835">#835</a>)</li>
<li>See full diff in <a
href="https://github.com/privatenumber/tsx/compare/v4.23.12...v4.23.13">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Problem
`prompts/get` for a name that is not registered responds with JSON-RPC
`-32603` (INTERNAL_ERROR).
`handleGetPrompt` in `Server.kt` throws a bare
`IllegalArgumentException` when the prompt is missing.
`Protocol.respondWithError` maps any non-`McpException` cause to
`INTERNAL_ERROR`, so the client receives `-32603` for what is a
client-side bad parameter.
The sibling handler `handleReadResource` in the same file already throws
a typed `McpException(RESOURCE_NOT_FOUND)` for the equivalent not-found
case, which reaches the client as `-32002`. The two not-found paths are
inconsistent.
In JSON-RPC, `-32603` means the server hit an internal fault. Requesting
a prompt name that does not exist is a client error (an invalid `name`
parameter), so a client cannot tell "the prompt does not exist" apart
from "the server failed" and may retry a request that can never succeed.
## Change
Throw a typed `McpException(INVALID_PARAMS)` from `handleGetPrompt`,
consistent with `handleReadResource`. The message is unchanged.
`AbstractPromptIntegrationTest.testNonExistentPrompt` asserted `-32603`;
it now asserts `INVALID_PARAMS`.
If you would prefer a dedicated error code for this case instead of
`INVALID_PARAMS`, I am glad to adjust.
Bumps the other-dependencies group with 1 update in the
/samples/kotlin-mcp-client directory:
[com.anthropic:anthropic-java](https://github.com/anthropics/anthropic-sdk-java).
Updates `com.anthropic:anthropic-java` from 2.59.0 to 2.60.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/releases">com.anthropic:anthropic-java's
releases</a>.</em></p>
<blockquote>
<h2>v2.60.0</h2>
<h2>2.60.0 (2026-09-01)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.59.0...v2.60.0">v2.59.0...v2.60.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> add external_user_onboarded_at to user
profiles (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>api:</strong> add support for claude-fable-5-1 and
claude-mythos-5-1 (<a
href="f41a324564">f41a324</a>)</li>
<li><strong>api:</strong> add support for organization compliance
settings in the Admin API (<a
href="4b64a841b6">4b64a84</a>)</li>
<li><strong>api:</strong> support pagination on organization rate limit
list endpoints (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>user_profiles:</strong> sort the user profile list by name
with order_by=name (<a
href="931543ef60">931543e</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>api:</strong> mark the beta header required on Admin API
Tunnel operations (<a
href="898dabf8ac">898dabf</a>)</li>
<li><strong>api:</strong> remove unsupported allowed_callers from the
toolset entries (<a
href="53bd597bcd">53bd597</a>)</li>
<li><strong>client:</strong> include non-JSON error response bodies in
API errors (<a
href="04045b50ac">04045b5</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>api:</strong> remove unreleased thinking
prefix_mismatched_behavior param (<a
href="e01193ad4e">e01193a</a>)</li>
<li><strong>api:</strong> remove user profile relationship in favor of
access_type (<a
href="e01193ad4e">e01193a</a>)</li>
<li><strong>ci:</strong> keep the Maven artifact upload steps under stlc
(<a
href="7437d73702">7437d73</a>)</li>
<li><strong>docs:</strong> clarify disallowed characters in memory paths
(<a
href="20582c1f6e">20582c1</a>)</li>
<li><strong>internal:</strong> add browser-stubbed internal/node module
and lint rule for Node built-in imports (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>internal:</strong> pin JAVA_HOME for detekt-rules tests and
relax UnusedPrivateProperty for tests/examples (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>internal:</strong> read the request id shown in Terraform
error diagnostics from the response header (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>internal:</strong> remove discriminator support from
PropertyInfo (<a
href="4b64a841b6">4b64a84</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li><strong>api:</strong> backtick identifiers in managed-agents API
descriptions (<a
href="db40558f3b">db40558</a>)</li>
<li><strong>api:</strong> describe external_key_id and compartment_id
behavior on Claude Platform on AWS (<a
href="5eefbe1b52">5eefbe1</a>)</li>
<li><strong>changelog:</strong> detail the beta files/skills GA-shape
change (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/398">#398</a>)
(<a
href="010593670e">0105936</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/blob/main/CHANGELOG.md">com.anthropic:anthropic-java's
changelog</a>.</em></p>
<blockquote>
<h2>2.60.0 (2026-09-01)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.59.0...v2.60.0">v2.59.0...v2.60.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> add external_user_onboarded_at to user
profiles (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>api:</strong> add support for claude-fable-5-1 and
claude-mythos-5-1 (<a
href="f41a324564">f41a324</a>)</li>
<li><strong>api:</strong> add support for organization compliance
settings in the Admin API (<a
href="4b64a841b6">4b64a84</a>)</li>
<li><strong>api:</strong> support pagination on organization rate limit
list endpoints (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>user_profiles:</strong> sort the user profile list by name
with order_by=name (<a
href="931543ef60">931543e</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>api:</strong> mark the beta header required on Admin API
Tunnel operations (<a
href="898dabf8ac">898dabf</a>)</li>
<li><strong>api:</strong> remove unsupported allowed_callers from the
toolset entries (<a
href="53bd597bcd">53bd597</a>)</li>
<li><strong>client:</strong> include non-JSON error response bodies in
API errors (<a
href="04045b50ac">04045b5</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>api:</strong> remove unreleased thinking
prefix_mismatched_behavior param (<a
href="e01193ad4e">e01193a</a>)</li>
<li><strong>api:</strong> remove user profile relationship in favor of
access_type (<a
href="e01193ad4e">e01193a</a>)</li>
<li><strong>ci:</strong> keep the Maven artifact upload steps under stlc
(<a
href="7437d73702">7437d73</a>)</li>
<li><strong>docs:</strong> clarify disallowed characters in memory paths
(<a
href="20582c1f6e">20582c1</a>)</li>
<li><strong>internal:</strong> add browser-stubbed internal/node module
and lint rule for Node built-in imports (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>internal:</strong> pin JAVA_HOME for detekt-rules tests and
relax UnusedPrivateProperty for tests/examples (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>internal:</strong> read the request id shown in Terraform
error diagnostics from the response header (<a
href="2aa81c05e5">2aa81c0</a>)</li>
<li><strong>internal:</strong> remove discriminator support from
PropertyInfo (<a
href="4b64a841b6">4b64a84</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li><strong>api:</strong> backtick identifiers in managed-agents API
descriptions (<a
href="db40558f3b">db40558</a>)</li>
<li><strong>api:</strong> describe external_key_id and compartment_id
behavior on Claude Platform on AWS (<a
href="5eefbe1b52">5eefbe1</a>)</li>
<li><strong>changelog:</strong> detail the beta files/skills GA-shape
change (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/398">#398</a>)
(<a
href="010593670e">0105936</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1dfef96487"><code>1dfef96</code></a>
Merge pull request <a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/397">#397</a>
from anthropics/release-please--branches--main--chang...</li>
<li><a
href="110af9e0eb"><code>110af9e</code></a>
release: 2.60.0</li>
<li><a
href="f41a324564"><code>f41a324</code></a>
feat(api): add support for claude-fable-5-1 and claude-mythos-5-1</li>
<li><a
href="04045b50ac"><code>04045b5</code></a>
fix(client): include non-JSON error response bodies in API errors</li>
<li><a
href="5eefbe1b52"><code>5eefbe1</code></a>
docs(api): describe external_key_id and compartment_id behavior on
Claude Pla...</li>
<li><a
href="841463e335"><code>841463e</code></a>
Merge branch 'main' into next</li>
<li><a
href="010593670e"><code>0105936</code></a>
docs(changelog): detail the beta files/skills GA-shape change (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/398">#398</a>)</li>
<li><a
href="53bd597bcd"><code>53bd597</code></a>
fix(api): remove unsupported allowed_callers from the toolset
entries</li>
<li><a
href="20582c1f6e"><code>20582c1</code></a>
chore(docs): clarify disallowed characters in memory paths</li>
<li><a
href="db40558f3b"><code>db40558</code></a>
docs(api): backtick identifiers in managed-agents API descriptions</li>
<li>Additional commits viewable in <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.59.0...v2.60.0">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [qs](https://github.com/ljharb/qs) from 6.15.2 to 6.16.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/ljharb/qs/blob/main/CHANGELOG.md">qs's
changelog</a>.</em></p>
<blockquote>
<h2><strong>6.16.0</strong></h2>
<ul>
<li>[New] <code>stringify</code>: add a <code>depth</code> option to
bound recursion depth (default <code>Infinity</code>)</li>
<li>[Fix] stringify: serialize Date values when a filter is
provided</li>
<li>[Fix] <code>parse</code>: enforce <code>arrayLimit</code> on comma
groups under <code>[]=</code> when <code>throwOnLimitExceeded</code> is
set</li>
<li>[Fix] <code>parse</code>: flatten a collection appended to an
overflowed array (<a
href="https://redirect.github.com/ljharb/qs/issues/571">#571</a>)</li>
<li>[Fix] <code>utils</code>: <code>isBuffer</code>: do not invoke a
non-callable <code>constructor.isBuffer</code></li>
<li>[Fix] <code>stringify</code>: do not let
<code>allowEmptyArrays</code> skip cycle detection (or drop own keys) on
an empty array with own properties</li>
<li>[Fix] <code>stringify</code>: encode dots in a top-level key with a
primitive value when encodeDotInKeys is set (<a
href="https://redirect.github.com/ljharb/qs/issues/562">#562</a>)</li>
<li>[Docs] threat model: clarify <code>stringify</code> deep-nesting DoS
is caller-bounded</li>
<li>[Docs] clarify <code>arrayLimit</code> is a representation
threshold, not an element-count cap</li>
<li>[Tests] <code>parse</code>: remove a test that pinned
<code>[]=</code> comma groups escaping <code>arrayLimit</code></li>
<li>[Tests] <code>stringify</code>: pin current
<code>encodeDotInKeys</code> separator-dot behavior</li>
<li>[Dev Deps] update <code>@ljharb/eslint-config</code>,
<code>eslint</code></li>
<li>[Dev Deps] update <code>eslint</code>, <code>evalmd</code></li>
</ul>
<h2><strong>6.15.3</strong></h2>
<ul>
<li>[Fix] <code>parse</code>: enforce <code>throwOnLimitExceeded</code>
for cumulative array growth via
<code>combine</code>/<code>merge</code></li>
<li>[Fix] <code>utils</code>: respect encoding of surrogate pairs across
chunks (<a
href="https://redirect.github.com/ljharb/qs/issues/559">#559</a>)</li>
<li>[Robustness] <code>parse</code>: throw the <code>arrayLimit</code>
error before splitting oversized comma values</li>
<li>[Robustness] <code>utils.merge</code> / <code>utils.assign</code>:
avoid invoking <code>__proto__</code> setter when copying own
properties</li>
<li>[Robustness] <code>utils</code>: enforce <code>arrayLimit</code>
consistently across <code>merge</code>'s array paths</li>
<li>[Perf] <code>utils</code>: make <code>compact</code> O(n) via a
side-channel visited-set instead of <code>Array.indexOf</code></li>
<li>[Deps] update <code>side-channel</code></li>
<li>[Dev Deps] update <code>eslint</code>, <code>mock-property</code>,
<code>tape</code></li>
<li>[Tests] <code>parse</code>: characterize current lenient handling of
unbalanced bracket keys (<a
href="https://redirect.github.com/ljharb/qs/issues/558">#558</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="bb9379e01f"><code>bb9379e</code></a>
v6.16.0</li>
<li><a
href="62fd25480b"><code>62fd254</code></a>
[Fix] stringify: serialize Date values when a filter is provided</li>
<li><a
href="8859c37470"><code>8859c37</code></a>
[Fix] <code>parse</code>: enforce <code>arrayLimit</code> on comma
groups under <code>[]=</code> when `throwOn...</li>
<li><a
href="8079adc7e7"><code>8079adc</code></a>
[Tests] <code>parse</code>: remove a test that pinned <code>[]=</code>
comma groups escaping `array...</li>
<li><a
href="d56f48ca13"><code>d56f48c</code></a>
[Fix] <code>parse</code>: flatten a collection appended to an overflowed
array</li>
<li><a
href="e83d321ffa"><code>e83d321</code></a>
[Fix] <code>utils</code>: <code>isBuffer</code>: do not invoke a
non-callable <code>constructor.isBuffer</code></li>
<li><a
href="7e87a07c2c"><code>7e87a07</code></a>
[Dev Deps] update <code>@ljharb/eslint-config</code>,
<code>eslint</code></li>
<li><a
href="9a76af2160"><code>9a76af2</code></a>
[Dev Deps] update <code>eslint</code>, <code>evalmd</code></li>
<li><a
href="3a890d4ecd"><code>3a890d4</code></a>
[Dev Deps] update <code>eslint</code>, <code>evalmd</code></li>
<li><a
href="b433a9b163"><code>b433a9b</code></a>
[Fix] <code>stringify</code>: do not let <code>allowEmptyArrays</code>
skip cycle detection (or dro...</li>
<li>Additional commits viewable in <a
href="https://github.com/ljharb/qs/compare/v6.15.2...v6.16.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the other-dependencies group with 1 update in the
/samples/kotlin-mcp-client directory:
[com.anthropic:anthropic-java](https://github.com/anthropics/anthropic-sdk-java).
Bumps the other-dependencies group with 1 update in the
/samples/kotlin-mcp-server directory:
[gradle-wrapper](https://github.com/gradle/gradle).
Bumps the other-dependencies group with 1 update in the
/samples/weather-stdio-server directory:
[gradle-wrapper](https://github.com/gradle/gradle).
Updates `com.anthropic:anthropic-java` from 2.57.0 to 2.59.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/releases">com.anthropic:anthropic-java's
releases</a>.</em></p>
<blockquote>
<h2>v2.59.0</h2>
<h2>2.59.0 (2026-08-27)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.58.0...v2.59.0">v2.58.0...v2.59.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> beta files/skills namespaces use GA shapes;
drop dated beta header pins (<a
href="e4e0e25fec">e4e0e25</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>aws,bedrock:</strong> don't consume the request body while
SigV4 signing (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/257">#257</a>)
(<a
href="95238b1cdc">95238b1</a>)</li>
<li><strong>client:</strong> page backward via before_id and stop on
has_more=false (<a
href="81f16e718b">81f16e7</a>)</li>
<li><strong>webhooks:</strong> require headers to be passed to
<code>unwrap()</code> (<a
href="4b43e22ce0">4b43e22</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li><strong>api:</strong> clarify pagination on the organization
rate-limit list endpoints (<a
href="1d0e9877c2">1d0e987</a>)</li>
</ul>
<h2>v2.58.0</h2>
<h2>2.58.0 (2026-08-26)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.57.0...v2.58.0">v2.57.0...v2.58.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> add <code>updates</code> thinking display mode
(beta) (<a
href="792b318a9b">792b318</a>)</li>
<li><strong>api:</strong> add missing anthropic-beta values (<a
href="60cc62afc6">60cc62a</a>)</li>
<li><strong>api:</strong> add support for Organization API endpoints (<a
href="3adde69133">3adde69</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>bedrock:</strong> stop clobbering body anthropic_beta with
header betas (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/58">#58</a>)
(<a
href="e2609a9346">e2609a9</a>)</li>
<li><strong>client:</strong> let explicit and ANTHROPIC_BASE_URL base
URLs override profile base_url (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/241">#241</a>)
(<a
href="7486e65be4">7486e65</a>)</li>
<li><strong>client:</strong> resolve base URL in ClientOptions instead
of the transport (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/242">#242</a>)
(<a
href="a3e988ac85">a3e988a</a>)</li>
<li><strong>tools:</strong> keep the tool runner going on pause_turn (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/196">#196</a>)
(<a
href="557c72df30">557c72d</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>docs:</strong> clarify skill version <code>latest</code>
support and memory version retention (<a
href="cc7fc00777">cc7fc00</a>)</li>
<li><strong>internal:</strong> cancel superseded CI runs (<a
href="ae7cc8f98e">ae7cc8f</a>)</li>
<li><strong>internal:</strong> minor workflow reformat (<a
href="36b5b98a15">36b5b98</a>)</li>
</ul>
<h3>Documentation</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/blob/main/CHANGELOG.md">com.anthropic:anthropic-java's
changelog</a>.</em></p>
<blockquote>
<h2>2.59.0 (2026-08-27)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.58.0...v2.59.0">v2.58.0...v2.59.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> beta files/skills namespaces use GA shapes;
drop dated beta header pins (<a
href="e4e0e25fec">e4e0e25</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>aws,bedrock:</strong> don't consume the request body while
SigV4 signing (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/257">#257</a>)
(<a
href="95238b1cdc">95238b1</a>)</li>
<li><strong>client:</strong> page backward via before_id and stop on
has_more=false (<a
href="81f16e718b">81f16e7</a>)</li>
<li><strong>webhooks:</strong> require headers to be passed to
<code>unwrap()</code> (<a
href="4b43e22ce0">4b43e22</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li><strong>api:</strong> clarify pagination on the organization
rate-limit list endpoints (<a
href="1d0e9877c2">1d0e987</a>)</li>
</ul>
<h2>2.58.0 (2026-08-26)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.57.0...v2.58.0">v2.57.0...v2.58.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> add <code>updates</code> thinking display mode
(beta) (<a
href="792b318a9b">792b318</a>)</li>
<li><strong>api:</strong> add missing anthropic-beta values (<a
href="60cc62afc6">60cc62a</a>)</li>
<li><strong>api:</strong> add support for Organization API endpoints (<a
href="3adde69133">3adde69</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>bedrock:</strong> stop clobbering body anthropic_beta with
header betas (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/58">#58</a>)
(<a
href="e2609a9346">e2609a9</a>)</li>
<li><strong>client:</strong> let explicit and ANTHROPIC_BASE_URL base
URLs override profile base_url (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/241">#241</a>)
(<a
href="7486e65be4">7486e65</a>)</li>
<li><strong>client:</strong> resolve base URL in ClientOptions instead
of the transport (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/242">#242</a>)
(<a
href="a3e988ac85">a3e988a</a>)</li>
<li><strong>tools:</strong> keep the tool runner going on pause_turn (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/196">#196</a>)
(<a
href="557c72df30">557c72d</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>docs:</strong> clarify skill version <code>latest</code>
support and memory version retention (<a
href="cc7fc00777">cc7fc00</a>)</li>
<li><strong>internal:</strong> cancel superseded CI runs (<a
href="ae7cc8f98e">ae7cc8f</a>)</li>
<li><strong>internal:</strong> minor workflow reformat (<a
href="36b5b98a15">36b5b98</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li><strong>api:</strong> clarify session thread agent and
usage.iterations compaction descriptions (beta) (<a
href="2283253bf6">2283253</a>)</li>
<li><strong>examples:</strong> use adaptive thinking in thinking
examples (<a
href="da9aabae51">da9aaba</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8722270844"><code>8722270</code></a>
release: 2.59.0</li>
<li><a
href="bc1e1995f1"><code>bc1e199</code></a>
docs(api): clarify pagination on the organization rate-limit list
endpoints</li>
<li><a
href="4da20e1818"><code>4da20e1</code></a>
fix(client): page backward via before_id and stop on has_more=false</li>
<li><a
href="b7046bca8d"><code>b7046bc</code></a>
feat(api): beta files/skills namespaces use GA shapes; drop dated beta
header...</li>
<li><a
href="6531a27dc1"><code>6531a27</code></a>
fix(webhooks): require headers to be passed to
<code>unwrap()</code></li>
<li><a
href="8786a4500d"><code>8786a45</code></a>
fix(aws,bedrock): don't consume the request body while SigV4 signing (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/257">#257</a>)</li>
<li><a
href="accd19e373"><code>accd19e</code></a>
codegen metadata</li>
<li><a
href="51bd4922ec"><code>51bd492</code></a>
release: 2.58.0</li>
<li><a
href="82b254480b"><code>82b2544</code></a>
codegen metadata</li>
<li><a
href="7bec4e1e67"><code>7bec4e1</code></a>
feat(api): add support for Organization API endpoints</li>
<li>Additional commits viewable in <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.57.0...v2.59.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps
[ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from
1.6.1 to 1.6.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/qos-ch/logback/releases">ch.qos.logback:logback-classic's
releases</a>.</em></p>
<blockquote>
<h2>Logback 1.6.3</h2>
<h1>2026-08-14 Release of logback version 1.6.3</h1>
<ul>
<li>
<p>In response <a
href="https://www.cve.org/cverecord?id=CVE-2026-19880">CVE-2026-19880</a>,
<code>MDCBasedDiscriminator</code> (used by
<code>SiftingAppender</code>) now strips forward and backward slashes
(<code>/</code>, <code>\</code>) from MDC values before they are used as
discriminating keys. This prevents path segments from escaping into
destinations controlled by an attacker. When sanitisation actually
changes a value, a warning is emitted; the warning is rate-limited (a
small batch, then a lull of about ten minutes).</p>
</li>
<li>
<p>Colour console support is split out into a dedicated <a
href="https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender"><code>JansiConsoleAppender</code></a>.
It wraps stdout or stderr with Jansi so ANSI escape sequences (for
example coloured patterns) render correctly on terminals that need it,
notably Windows. Prefer this class over the older path described next.
See the <a
href="https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender">appenders
documentation</a>.</p>
</li>
<li>
<p>The <code>withJansi</code> property on <code>ConsoleAppender</code>
is <strong>deprecated</strong>. Existing configurations that still set
<code><withJansi>true</withJansi></code> continue to work
for compatibility, but new setups should use
<code>JansiConsoleAppender</code> instead.</p>
</li>
<li>
<p><code>ConsoleAppender</code> no longer treats the process console as
an exclusive resource: stopping it does not close
<code>System.out</code> / <code>System.err</code>.
<code>JansiConsoleAppender</code> pairs each
<code>AnsiConsole.systemInstall()</code> with
<code>systemUninstall()</code> on stop, so repeated start/stop cycles do
not leave Jansi installed or tear down streams shared with the rest of
the JVM. Related behavior is covered by tests for <a
href="https://redirect.github.com/qos-ch/logback/issues/1063">issues/1063</a>.</p>
</li>
<li>
<p>Invocation throttling helpers were reworked:
<code>SimpleInvocationGate</code> is renamed
<code>FixedIntervalInvocationGate</code>, and
<code>BatchedFixedIntervalInvocationGate</code> allows a short burst of
invocations before applying a fixed lull. The sanitisation
warning above uses the batched gate.</p>
</li>
<li>
<p>The JPMS <code>module-info</code> for logback-core now exports the
<code>ch.qos.logback.core.property</code> package, which had been
missing from the module descriptor.</p>
</li>
<li>
<p>A bit-wise identical binary of this version can be reproduced by
building from <a href="https://github.com/qos-ch/logback">source
code</a> at commit <code>e8e824dede022a6d7208b36cfa875b0d1b7772f3</code>
associated with the tag <code>v_1.6.3</code>. The release was built
using Java "21" 2023-10-17 LTS build 21.0.1.+12-LTS-29 under
Linux Debian 11.6.</p>
</li>
</ul>
<p>--
Sponsoring SLF4J/logback/reload4j at <a
href="https://github.com/sponsors/qos-ch">https://github.com/sponsors/qos-ch</a></p>
<h2>Logback 1.6.2</h2>
<p><a
href="https://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd">https://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd</a></p>
<h1>2026-08-10 Release of logback version 1.6.2</h1>
<ul>
<li>
<p>Configuration analysis now detects <em>contradictory caller-data
inclusion instructions</em>. For example, an <code>AsyncAppender</code>,
<code>SocketAppender</code> or <code>SMTPAppender</code> with
<code>includeCallerData</code> left at the default <code>false</code> is
incompatible with a layout or encoder pattern that uses a caller-data
converter such as <code>%C</code>, <code>%M</code>, <code>%L</code>,
<code>%F</code>, <code>%l</code> or <code>%caller</code>. At runtime
those converters would print question marks and still incur extraction
cost on a worker thread. Logback now emits a configuration-time warning
when such instructions disagree. See <a
href="https://logback.qos.ch/codes.html#callerContradiction">codes.html#callerContradiction</a>
for details. This issue was reported in <a
href="https://redirect.github.com/qos-ch/logback/issues/1059">issues/1059</a>
by <a href="https://github.com/leeychee">leeychee</a>. The initial
analysis was contributed by <a
href="https://github.com/seonwooj0810">seonwoo_jung</a>.</p>
</li>
<li>
<p>Caller-contradiction analysis can be turned off by setting the
<code>logback.skipCallerContradictionAnalysis</code> variable to
<code>true</code>, either as a system property
(<code>-Dlogback.skipCallerContradictionAnalysis=true</code>) or as a
property in the configuration file:</p>
<pre lang="xml"><code><property
name="logback.skipCallerContradictionAnalysis"
value="true"/>
</code></pre>
</li>
<li>
<p><code>SimpleSocketServer</code> and
<code>SimpleSSLSocketServer</code> now require an explicit client IP
whitelist. On the command line, pass one or more allowed addresses
(single IPs or CIDR ranges) after the configuration file. An empty
whitelist means no clients are accepted. When embedding the server
programmatically, register allowed addresses with
<code>addAllowedClientAddress(String)</code> or
<code>setAllowedClientAddresses(Collection)</code> before clients
connect. See the documentation on <a
href="https://logback.qos.ch/manual/appenders.html#simpleSocketServerClientAccess">restricting
client access</a>.</p>
</li>
<li>
<p>Added <code>ThrowableProxyVOBuilder</code> for assembling a
<code>ThrowableProxyVO</code> field by field, with a corresponding
<code>ThrowableProxyVO.builder()</code> entry point.</p>
</li>
<li>
<p>Dependency analysis handlers now run their <code>postHandle</code>
method after child models have been processed, so checks that depend on
nested appenders (such as caller-contradiction analysis) see a complete
picture.</p>
</li>
<li>
<p>Updated several dependencies, including Angus Mail to 2.0.4 and Jetty
(test) to 12.1.12.</p>
</li>
<li>
<p>A bit-wise identical binary of this version can be reproduced by
building from <a href="https://github.com/qos-ch/logback">source
code</a> at commit e3d78330ad1ba024fd987fd00c3ffb9cfcdb07dc associated
with the tag <code>v_1.6.2</code>. The release was built using Java
"21" 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian
11.6.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e8e824dede"><code>e8e824d</code></a>
prepare release 1.6.3</li>
<li><a
href="761821bfaa"><code>761821b</code></a>
MDCBasedDiscriminator has a gated warning mechanism</li>
<li><a
href="53ed122900"><code>53ed122</code></a>
update copyright year</li>
<li><a
href="c7e2db2446"><code>c7e2db2</code></a>
rename SimpleInvocationGate as FixedIntervalInvocationGate</li>
<li><a
href="b5aa931b09"><code>b5aa931</code></a>
added BatchedSimpleInvocationGate</li>
<li><a
href="1f22af7686"><code>1f22af7</code></a>
add javadocs to SimpleInvocationGate</li>
<li><a
href="638ffa7e78"><code>638ffa7</code></a>
prevent forward and backward slashes to escape to other directories</li>
<li><a
href="7d6b9a4f8c"><code>7d6b9a4</code></a>
add missing ch.qos.logback.core.property package</li>
<li><a
href="fa25930346"><code>fa25930</code></a>
add an extension path in ConsoleAppender for JansiConsoleAppender</li>
<li><a
href="c73b43f201"><code>c73b43f</code></a>
deprecate the withJansi path</li>
<li>Additional commits viewable in <a
href="https://github.com/qos-ch/logback/compare/v_1.6.1...v_1.6.3">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the other-dependencies group with 2 updates in the
/samples/kotlin-mcp-client directory:
[gradle-wrapper](https://github.com/gradle/gradle) and
[com.anthropic:anthropic-java](https://github.com/anthropics/anthropic-sdk-java).
Bumps the other-dependencies group with 2 updates in the
/samples/kotlinlang-mcp-server directory:
[gradle-wrapper](https://github.com/gradle/gradle) and
[ch.qos.logback:logback-classic](https://github.com/qos-ch/logback).
Bumps the other-dependencies group with 2 updates in the
/samples/simple-streamable-server directory:
[gradle-wrapper](https://github.com/gradle/gradle) and
[org.junit.jupiter:junit-jupiter](https://github.com/junit-team/junit-framework).
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.anthropic:anthropic-java` from 2.52.0 to 2.57.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/releases">com.anthropic:anthropic-java's
releases</a>.</em></p>
<blockquote>
<h2>v2.57.0</h2>
<h2>2.57.0 (2026-08-19)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.56.0...v2.57.0">v2.56.0...v2.57.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> managed agents web search config and self
hosted sandbox memory (<a
href="83b03c0423">83b03c0</a>)</li>
</ul>
<h2>v2.56.0</h2>
<h2>2.56.0 (2026-08-19)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.55.0...v2.56.0">v2.55.0...v2.56.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> Files and Skills APIs are now GA; add computer
use and browser use toolsets (<a
href="762f3423d1">762f342</a>)</li>
</ul>
<h2>v2.55.0</h2>
<h2>2.55.0 (2026-08-18)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.54.0...v2.55.0">v2.54.0...v2.55.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> additions to files and memory stores (<a
href="1f89b9b41e">1f89b9b</a>)</li>
<li><strong>api:</strong> updates to skill, files, and user profiles (<a
href="a5febdadd6">a5febda</a>)</li>
<li><strong>client:</strong> add helpers for accessing the workspace ID
in response headers (<a
href="718d5c180e">718d5c1</a>)</li>
<li><strong>internal:</strong> upgrade to Gradle 9 and Kotlin 2.3 with a
shared version catalog (<a
href="596395e1bd">596395e</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>api:</strong> remove unsupported mid_conv_system content
block (<a
href="89bf90137d">89bf901</a>)</li>
<li><strong>client:</strong> don't let null usage fields in
message_delta overwrite accumulated usage (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/226">#226</a>)
(<a
href="603d2f5474">603d2f5</a>)</li>
<li><strong>client:</strong> keep unknown content block and delta types
when accumulating a message stream (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/225">#225</a>)
(<a
href="9bf944db26">9bf944d</a>)</li>
<li><strong>tool-runner:</strong> forward the server-assigned container
on follow-up requests (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/216">#216</a>)
(<a
href="b754c459b5">b754c45</a>)</li>
<li><strong>tool-runner:</strong> send the BetaToolRunner helper header
(<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/220">#220</a>)
(<a
href="95b359c5f9">95b359c</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>internal:</strong> lint and format build logic sources with
ktfmt (<a
href="9b52a2afc0">9b52a2a</a>)</li>
<li><strong>internal:</strong> remove leftover prism references (<a
href="76245235cb">7624523</a>)</li>
</ul>
<h2>v2.54.0</h2>
<h2>2.54.0 (2026-08-13)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.53.0...v2.54.0">v2.53.0...v2.54.0</a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/blob/main/CHANGELOG.md">com.anthropic:anthropic-java's
changelog</a>.</em></p>
<blockquote>
<h2>2.57.0 (2026-08-19)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.56.0...v2.57.0">v2.56.0...v2.57.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> managed agents web search config and self
hosted sandbox memory (<a
href="83b03c0423">83b03c0</a>)</li>
</ul>
<h2>2.56.0 (2026-08-19)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.55.0...v2.56.0">v2.55.0...v2.56.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> Files and Skills APIs are now GA; add computer
use and browser use toolsets (<a
href="762f3423d1">762f342</a>)</li>
</ul>
<h2>2.55.0 (2026-08-18)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.54.0...v2.55.0">v2.54.0...v2.55.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> additions to files and memory stores (<a
href="1f89b9b41e">1f89b9b</a>)</li>
<li><strong>api:</strong> updates to skill, files, and user profiles (<a
href="a5febdadd6">a5febda</a>)</li>
<li><strong>client:</strong> add helpers for accessing the workspace ID
in response headers (<a
href="718d5c180e">718d5c1</a>)</li>
<li><strong>internal:</strong> upgrade to Gradle 9 and Kotlin 2.3 with a
shared version catalog (<a
href="596395e1bd">596395e</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>api:</strong> remove unsupported mid_conv_system content
block (<a
href="89bf90137d">89bf901</a>)</li>
<li><strong>client:</strong> don't let null usage fields in
message_delta overwrite accumulated usage (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/226">#226</a>)
(<a
href="603d2f5474">603d2f5</a>)</li>
<li><strong>client:</strong> keep unknown content block and delta types
when accumulating a message stream (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/225">#225</a>)
(<a
href="9bf944db26">9bf944d</a>)</li>
<li><strong>tool-runner:</strong> forward the server-assigned container
on follow-up requests (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/216">#216</a>)
(<a
href="b754c459b5">b754c45</a>)</li>
<li><strong>tool-runner:</strong> send the BetaToolRunner helper header
(<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/220">#220</a>)
(<a
href="95b359c5f9">95b359c</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><strong>internal:</strong> lint and format build logic sources with
ktfmt (<a
href="9b52a2afc0">9b52a2a</a>)</li>
<li><strong>internal:</strong> remove leftover prism references (<a
href="76245235cb">7624523</a>)</li>
</ul>
<h2>2.54.0 (2026-08-13)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.53.0...v2.54.0">v2.53.0...v2.54.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> add output_behavior to dream creation (create
a new memory store or update the input store in place) (<a
href="a49ea9a1e9">a49ea9a</a>)</li>
<li><strong>client:</strong> add StructuredOutputConfig for combining
Class<T> structured outputs with other output options (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/192">#192</a>)
(<a
href="8caead30a1">8caead3</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8f5861c883"><code>8f5861c</code></a>
release: 2.57.0</li>
<li><a
href="71074ed7e3"><code>71074ed</code></a>
feat(api): managed agents web search config and self hosted sandbox
memory</li>
<li><a
href="76e0cfae22"><code>76e0cfa</code></a>
release: 2.56.0</li>
<li><a
href="ce2a502726"><code>ce2a502</code></a>
feat(api): Files and Skills APIs are now GA; add computer use and
browser use...</li>
<li><a
href="8752d28a57"><code>8752d28</code></a>
release: 2.55.0</li>
<li><a
href="fb3146713c"><code>fb31467</code></a>
feat(api): updates to skill, files, and user profiles</li>
<li><a
href="ddaf1ec146"><code>ddaf1ec</code></a>
fix(client): don't let null usage fields in message_delta overwrite
accumulat...</li>
<li><a
href="a544b28fb5"><code>a544b28</code></a>
fix(client): keep unknown content block and delta types when
accumulating a m...</li>
<li><a
href="27a08d0761"><code>27a08d0</code></a>
fix(tool-runner): send the BetaToolRunner helper header (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/220">#220</a>)</li>
<li><a
href="df22a5933b"><code>df22a59</code></a>
chore(internal): lint and format build logic sources with ktfmt</li>
<li>Additional commits viewable in <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.52.0...v2.57.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `ch.qos.logback:logback-classic` from 1.6.1 to 1.6.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/qos-ch/logback/releases">ch.qos.logback:logback-classic's
releases</a>.</em></p>
<blockquote>
<h2>Logback 1.6.3</h2>
<h1>2026-08-14 Release of logback version 1.6.3</h1>
<ul>
<li>
<p>In response <a
href="https://www.cve.org/cverecord?id=CVE-2026-19880">CVE-2026-19880</a>,
<code>MDCBasedDiscriminator</code> (used by
<code>SiftingAppender</code>) now strips forward and backward slashes
(<code>/</code>, <code>\</code>) from MDC values before they are used as
discriminating keys. This prevents path segments from escaping into
destinations controlled by an attacker. When sanitisation actually
changes a value, a warning is emitted; the warning is rate-limited (a
small batch, then a lull of about ten minutes).</p>
</li>
<li>
<p>Colour console support is split out into a dedicated <a
href="https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender"><code>JansiConsoleAppender</code></a>.
It wraps stdout or stderr with Jansi so ANSI escape sequences (for
example coloured patterns) render correctly on terminals that need it,
notably Windows. Prefer this class over the older path described next.
See the <a
href="https://logback.qos.ch/manual/appenders.html#JansiConsoleAppender">appenders
documentation</a>.</p>
</li>
<li>
<p>The <code>withJansi</code> property on <code>ConsoleAppender</code>
is <strong>deprecated</strong>. Existing configurations that still set
<code><withJansi>true</withJansi></code> continue to work
for compatibility, but new setups should use
<code>JansiConsoleAppender</code> instead.</p>
</li>
<li>
<p><code>ConsoleAppender</code> no longer treats the process console as
an exclusive resource: stopping it does not close
<code>System.out</code> / <code>System.err</code>.
<code>JansiConsoleAppender</code> pairs each
<code>AnsiConsole.systemInstall()</code> with
<code>systemUninstall()</code> on stop, so repeated start/stop cycles do
not leave Jansi installed or tear down streams shared with the rest of
the JVM. Related behavior is covered by tests for <a
href="https://redirect.github.com/qos-ch/logback/issues/1063">issues/1063</a>.</p>
</li>
<li>
<p>Invocation throttling helpers were reworked:
<code>SimpleInvocationGate</code> is renamed
<code>FixedIntervalInvocationGate</code>, and
<code>BatchedFixedIntervalInvocationGate</code> allows a short burst of
invocations before applying a fixed lull. The sanitisation
warning above uses the batched gate.</p>
</li>
<li>
<p>The JPMS <code>module-info</code> for logback-core now exports the
<code>ch.qos.logback.core.property</code> package, which had been
missing from the module descriptor.</p>
</li>
<li>
<p>A bit-wise identical binary of this version can be reproduced by
building from <a href="https://github.com/qos-ch/logback">source
code</a> at commit <code>e8e824dede022a6d7208b36cfa875b0d1b7772f3</code>
associated with the tag <code>v_1.6.3</code>. The release was built
using Java "21" 2023-10-17 LTS build 21.0.1.+12-LTS-29 under
Linux Debian 11.6.</p>
</li>
</ul>
<p>--
Sponsoring SLF4J/logback/reload4j at <a
href="https://github.com/sponsors/qos-ch">https://github.com/sponsors/qos-ch</a></p>
<h2>Logback 1.6.2</h2>
<p><a
href="https://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd">https://github.com/user-attachments/assets/9ceaf157-b758-4188-815d-edfe4e1b4edd</a></p>
<h1>2026-08-10 Release of logback version 1.6.2</h1>
<ul>
<li>
<p>Configuration analysis now detects <em>contradictory caller-data
inclusion instructions</em>. For example, an <code>AsyncAppender</code>,
<code>SocketAppender</code> or <code>SMTPAppender</code> with
<code>includeCallerData</code> left at the default <code>false</code> is
incompatible with a layout or encoder pattern that uses a caller-data
converter such as <code>%C</code>, <code>%M</code>, <code>%L</code>,
<code>%F</code>, <code>%l</code> or <code>%caller</code>. At runtime
those converters would print question marks and still incur extraction
cost on a worker thread. Logback now emits a configuration-time warning
when such instructions disagree. See <a
href="https://logback.qos.ch/codes.html#callerContradiction">codes.html#callerContradiction</a>
for details. This issue was reported in <a
href="https://redirect.github.com/qos-ch/logback/issues/1059">issues/1059</a>
by <a href="https://github.com/leeychee">leeychee</a>. The initial
analysis was contributed by <a
href="https://github.com/seonwooj0810">seonwoo_jung</a>.</p>
</li>
<li>
<p>Caller-contradiction analysis can be turned off by setting the
<code>logback.skipCallerContradictionAnalysis</code> variable to
<code>true</code>, either as a system property
(<code>-Dlogback.skipCallerContradictionAnalysis=true</code>) or as a
property in the configuration file:</p>
<pre lang="xml"><code><property
name="logback.skipCallerContradictionAnalysis"
value="true"/>
</code></pre>
</li>
<li>
<p><code>SimpleSocketServer</code> and
<code>SimpleSSLSocketServer</code> now require an explicit client IP
whitelist. On the command line, pass one or more allowed addresses
(single IPs or CIDR ranges) after the configuration file. An empty
whitelist means no clients are accepted. When embedding the server
programmatically, register allowed addresses with
<code>addAllowedClientAddress(String)</code> or
<code>setAllowedClientAddresses(Collection)</code> before clients
connect. See the documentation on <a
href="https://logback.qos.ch/manual/appenders.html#simpleSocketServerClientAccess">restricting
client access</a>.</p>
</li>
<li>
<p>Added <code>ThrowableProxyVOBuilder</code> for assembling a
<code>ThrowableProxyVO</code> field by field, with a corresponding
<code>ThrowableProxyVO.builder()</code> entry point.</p>
</li>
<li>
<p>Dependency analysis handlers now run their <code>postHandle</code>
method after child models have been processed, so checks that depend on
nested appenders (such as caller-contradiction analysis) see a complete
picture.</p>
</li>
<li>
<p>Updated several dependencies, including Angus Mail to 2.0.4 and Jetty
(test) to 12.1.12.</p>
</li>
<li>
<p>A bit-wise identical binary of this version can be reproduced by
building from <a href="https://github.com/qos-ch/logback">source
code</a> at commit e3d78330ad1ba024fd987fd00c3ffb9cfcdb07dc associated
with the tag <code>v_1.6.2</code>. The release was built using Java
"21" 2023-10-17 LTS build 21.0.1.+12-LTS-29 under Linux Debian
11.6.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e8e824dede"><code>e8e824d</code></a>
prepare release 1.6.3</li>
<li><a
href="761821bfaa"><code>761821b</code></a>
MDCBasedDiscriminator has a gated warning mechanism</li>
<li><a
href="53ed122900"><code>53ed122</code></a>
update copyright year</li>
<li><a
href="c7e2db2446"><code>c7e2db2</code></a>
rename SimpleInvocationGate as FixedIntervalInvocationGate</li>
<li><a
href="b5aa931b09"><code>b5aa931</code></a>
added BatchedSimpleInvocationGate</li>
<li><a
href="1f22af7686"><code>1f22af7</code></a>
add javadocs to SimpleInvocationGate</li>
<li><a
href="638ffa7e78"><code>638ffa7</code></a>
prevent forward and backward slashes to escape to other directories</li>
<li><a
href="7d6b9a4f8c"><code>7d6b9a4</code></a>
add missing ch.qos.logback.core.property package</li>
<li><a
href="fa25930346"><code>fa25930</code></a>
add an extension path in ConsoleAppender for JansiConsoleAppender</li>
<li><a
href="c73b43f201"><code>c73b43f</code></a>
deprecate the withJansi path</li>
<li>Additional commits viewable in <a
href="https://github.com/qos-ch/logback/compare/v_1.6.1...v_1.6.3">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `gradle-wrapper` from 9.7.0 to 9.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/gradle/releases">gradle-wrapper's
releases</a>.</em></p>
<blockquote>
<h2>9.7.1</h2>
<p>The Gradle team is excited to announce Gradle 9.7.1.</p>
<p>This is a patch release for 9.7.0. We recommend using 9.7.1 instead
of 9.7.0.</p>
<p>Here are the highlights of 9.7.0 release:</p>
<ul>
<li>Isolated Projects graduates to incubating</li>
<li>Broader Configuration Cache compatibility</li>
<li>Resilient Sync helps you fix broken builds</li>
<li>More source locations in problem reports</li>
</ul>
<p><a href="https://docs.gradle.org/9.7.1/release-notes.html">Read the
Release Notes</a></p>
<p>We would like to thank the following community members for their
contributions to this release of Gradle:
<a href="https://github.com/aSemy">Adam</a>,
<a href="https://github.com/Gautam-aman">Aman Gautam</a>,
<a href="https://github.com/YukiCodepth">Aman Kumar</a>,
<a href="https://github.com/adubrouski">Anton Dubrouski</a>,
<a href="https://github.com/liutikas">Aurimas</a>,
<a href="https://github.com/gbhavya07">gbhavya07</a>,
<a href="https://github.com/joshfriend">Josh Friend</a>,
<a href="https://github.com/nicklauslittle-gov">nicklauslittle-gov</a>,
<a href="https://github.com/psoni674">Pragati</a>,
<a href="https://github.com/Project516">project516</a>,
<a href="https://github.com/Uomocapra">Qin Mi</a>,
<a href="https://github.com/rkdfx">Ravi</a>,
<a href="https://github.com/sk-reddy17">sk-reddy17</a>,
<a href="https://github.com/Suvrat1629">Suvrat Acharya</a>,
<a href="https://github.com/ShreckYe">Yongshun Ye</a>.</p>
<h2>Upgrade instructions</h2>
<p>Switch your build to use Gradle 9.7.1 by updating your wrapper:</p>
<pre><code>./gradlew :wrapper --gradle-version=9.7.1 &&
./gradlew :wrapper
</code></pre>
<p>See the Gradle <a
href="https://docs.gradle.org/9.7.1/userguide/upgrading_version_9.html">9.x
upgrade guide</a> to learn about deprecations, breaking changes and
other considerations when upgrading.</p>
<p>For Java, Groovy, Kotlin and Android compatibility, see the <a
href="https://docs.gradle.org/9.7.1/userguide/compatibility.html">full
compatibility notes</a>.</p>
<h2>Reporting problems</h2>
<p>If you find a problem with this release, please file a bug on <a
href="https://github.com/gradle/gradle/issues">GitHub Issues</a>
adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the <a
href="https://discuss.gradle.org/c/help-discuss">forum</a>.</p>
<p>We hope you will build happiness with Gradle, and we look forward to
your feedback via <a href="https://twitter.com/gradle">Twitter</a> or on
<a href="https://github.com/gradle">GitHub</a>.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="92f0512e7f"><code>92f0512</code></a>
update fixed issues for 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38892">#38892</a>)</li>
<li><a
href="820ee75a99"><code>820ee75</code></a>
update fixed issues for 9.7.1</li>
<li><a
href="82c23f9bd2"><code>82c23f9</code></a>
Fix annotation parameter ordering problem in KTS (<a
href="https://redirect.github.com/gradle/gradle/issues/38878">#38878</a>)</li>
<li><a
href="ef11a7268f"><code>ef11a72</code></a>
Fix annotation parameter ordering issue</li>
<li><a
href="bb0d8a974a"><code>bb0d8a9</code></a>
Make relevant tests polyglot (run for multiple DSLs)</li>
<li><a
href="336e129d7f"><code>336e129</code></a>
Update signing configuration (<a
href="https://redirect.github.com/gradle/gradle/issues/38874">#38874</a>)</li>
<li><a
href="4bdf0da2da"><code>4bdf0da</code></a>
Update signing configuration</li>
<li><a
href="cd9b92c1b8"><code>cd9b92c</code></a>
List issues resolved in 9.7.1 (<a
href="https://redirect.github.com/gradle/gradle/issues/38839">#38839</a>)</li>
<li><a
href="5f4e381964"><code>5f4e381</code></a>
List issues resolved in 9.7.1</li>
<li><a
href="1e08ab5513"><code>1e08ab5</code></a>
Keep type-use annotations in extracted ABI classes (<a
href="https://redirect.github.com/gradle/gradle/issues/38810">#38810</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/gradle/compare/v9.7.0...v9.7.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.junit.jupiter:junit-jupiter`...
_Description has been truncated_
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the all-dependencies group in
/integration-test/src/jvmTest/typescript with 1 update:
[tsx](https://github.com/privatenumber/tsx).
Updates `tsx` from 4.23.11 to 4.23.12
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/privatenumber/tsx/releases">tsx's
releases</a>.</em></p>
<blockquote>
<h2>v4.23.12</h2>
<h2><a
href="https://github.com/privatenumber/tsx/compare/v4.23.11...v4.23.12">4.23.12</a>
(2026-08-10)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>shim <code>import.meta</code> when tokens are split by comments or
newlines (<a
href="https://redirect.github.com/privatenumber/tsx/issues/829">#829</a>)
(<a
href="ed9d33046a">ed9d330</a>),
closes <a
href="https://redirect.github.com/privatenumber/tsx/issues/828">#828</a></li>
</ul>
<hr />
<p>This release is also available on:</p>
<ul>
<li><a href="https://www.npmjs.com/package/tsx/v/4.23.12"><code>npm
package (@latest dist-tag)</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ed9d33046a"><code>ed9d330</code></a>
fix: shim <code>import.meta</code> when tokens are split by comments or
newlines (<a
href="https://redirect.github.com/privatenumber/tsx/issues/829">#829</a>)</li>
<li><a
href="651f5bec70"><code>651f5be</code></a>
test: cover CommonJS TypeScript import.meta paths</li>
<li>See full diff in <a
href="https://github.com/privatenumber/tsx/compare/v4.23.11...v4.23.12">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the all-actions group with 2 updates in the / directory:
[gradle/actions](https://github.com/gradle/actions) and
[github/codeql-action](https://github.com/github/codeql-action).
Updates `gradle/actions` from 6.2.0 to 6.3.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/gradle/actions/releases">gradle/actions's
releases</a>.</em></p>
<blockquote>
<h2>v6.3.0</h2>
<h2>Highlights</h2>
<h3>Enhanced Caching: Windows fixes and a cache-protocol bump</h3>
<p>This release updates <code>gradle-actions-caching</code> to
<strong>v1.0.0</strong> (up from v0.7.0), which fixes two significant
caching defects, both most visible on Windows:</p>
<ul>
<li>
<p><strong>Cache entries failed to store at all on Windows.</strong>.
Every entry failed
with <code>Path Validation Error: Path(s) specified in the action for
caching do(es) not exist</code>, even though the Gradle User Home was
fully intact. Nothing was stored, so
every downstream job ran against an empty Gradle User Home. The cause
was a nested,
unpatched copy of <code>@actions/glob</code> combined with a silently
swallowed <code>require()</code> in
the bundle, which left Windows path separators unnormalized.</p>
</li>
<li>
<p><strong>Cache cleanup deleted instrumented jars that were in
use.</strong> A bug in key
hashing for paths shorter than 64 characters made cleanup judge freshly
created
<code>caches/jars-9</code> entries as unused and remove them, so the
<code>instrumented-jars</code> entry
was never saved and every job re-instrumented its classpaths.</p>
<p>Also included: cache entry names are now consistent between the save
and restore
reports — restore previously fell back to showing the raw glob pattern
(e.g.
<code>/home/runner/.gradle/caches/modules-*/files-*/*/*/*/*/</code>)
instead of <code>dependencies</code>.</p>
</li>
</ul>
<blockquote>
<p>[!IMPORTANT]
<strong>Existing cache entries are invalidated by this release.</strong>
The cache protocol
version was bumped to <code>v2</code>, so the first run after upgrading
will be a cache miss
and will repopulate the cache. No configuration changes are
required.</p>
</blockquote>
<h3>Basic caching warns instead of failing silently</h3>
<p>The basic (open-source) caching provider now emits a warning and
reports
<code>(Entry not saved: save failed)</code> in the Job Summary when a
cache save fails, rather
than reporting success (<a
href="https://redirect.github.com/gradle/actions/issues/1028">#1028</a>).</p>
<h3>Dependency submission works with Isolated Projects</h3>
<p><code>dependency-submission</code> now disables Isolated Projects via
a promoted property, so
dependency graph generation works on builds that enable it (<a
href="https://redirect.github.com/gradle/actions/issues/1025">#1025</a>).
Thanks to <a
href="https://github.com/reinsch82"><code>@reinsch82</code></a> for the
contribution.</p>
<h3>Updated defaults</h3>
<ul>
<li>Injected Develocity Gradle plugin: <strong>4.4.2 →
4.5.0</strong></li>
<li>36 new known-good wrapper checksums added for
<code>wrapper-validation</code></li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>Render configuration-cache status in the caching Job Summary by <a
href="https://github.com/bigdaz"><code>@bigdaz</code></a> in <a
href="https://redirect.github.com/gradle/actions/pull/989">gradle/actions#989</a></li>
<li>Update gradle-actions-caching library to v0.8.0 by <a
href="https://github.com/bot-githubaction"><code>@bot-githubaction</code></a>
in <a
href="https://redirect.github.com/gradle/actions/pull/993">gradle/actions#993</a></li>
<li>Support experimental project-entry caching (configuration-cache +
build-logic) by <a
href="https://github.com/bigdaz"><code>@bigdaz</code></a> in <a
href="https://redirect.github.com/gradle/actions/pull/994">gradle/actions#994</a></li>
<li>Update gradle-actions-caching library to v0.9.0 by <a
href="https://github.com/bot-githubaction"><code>@bot-githubaction</code></a>
in <a
href="https://redirect.github.com/gradle/actions/pull/996">gradle/actions#996</a></li>
<li>Disable Isolated Projects via promoted property in
dependency-submission by <a
href="https://github.com/reinsch82"><code>@reinsch82</code></a> in <a
href="https://redirect.github.com/gradle/actions/pull/1025">gradle/actions#1025</a></li>
<li>Add Windows coverage for caching via a new smoke-test suite by <a
href="https://github.com/bigdaz"><code>@bigdaz</code></a> in <a
href="https://redirect.github.com/gradle/actions/pull/1027">gradle/actions#1027</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9c971963be"><code>9c97196</code></a>
Bump the github-actions group across 2 directories with 9 updates (<a
href="https://redirect.github.com/gradle/actions/issues/1024">#1024</a>)</li>
<li><a
href="760e4a476b"><code>760e4a4</code></a>
Bump the npm-dependencies group across 1 directory with 2 updates (<a
href="https://redirect.github.com/gradle/actions/issues/1037">#1037</a>)</li>
<li><a
href="73e4c4222b"><code>73e4c42</code></a>
Update gradle-actions-caching library to v1.0.0 (<a
href="https://redirect.github.com/gradle/actions/issues/1029">#1029</a>)</li>
<li><a
href="a9d14388b4"><code>a9d1438</code></a>
Add dependabot ignore rules for TypeScript 7.x and
<code>@types/node</code> 25.x/26.x</li>
<li><a
href="68f37005d7"><code>68f3700</code></a>
[bot] Update dist directory</li>
<li><a
href="5971332a8f"><code>5971332</code></a>
Bump Gradle Wrapper to 9.6.1, wrapper checksums, and Develocity plugin
to 4.5...</li>
<li><a
href="b5bc804016"><code>b5bc804</code></a>
[bot] Update dist directory</li>
<li><a
href="dcbab4e919"><code>dcbab4e</code></a>
Bump npm-dependencies group with TypeScript 6.0.3,
<code>@types/node</code> 24.x, and secu...</li>
<li><a
href="ca8d95717f"><code>ca8d957</code></a>
Move non-smoke restore-gradle-home tests back to the integ-test suite
(<a
href="https://redirect.github.com/gradle/actions/issues/1032">#1032</a>)</li>
<li><a
href="4318659b28"><code>4318659</code></a>
[bot] Update dist directory</li>
<li>Additional commits viewable in <a
href="https://github.com/gradle/actions/compare/v6.2.0...v6.3.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `github/codeql-action` from 4.37.4 to 4.37.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/github/codeql-action/releases">github/codeql-action's
releases</a>.</em></p>
<blockquote>
<h2>v4.37.6</h2>
<ul>
<li>Changed the default filepath for the new remote file address format
that was introduced in CodeQL Action 4.37.0 / 3.37.0 to
<code>.github/codeql-config.yml</code> to align it with the suggested
path that is used elsewhere. <a
href="https://redirect.github.com/github/codeql-action/pull/4070">#4070</a></li>
</ul>
<h2>v4.37.5</h2>
<ul>
<li>Fixed a bug where a network error while streaming the download of
the CodeQL bundle could terminate the <code>init</code> Action instead
of falling back to downloading the bundle before extracting it. <a
href="https://redirect.github.com/github/codeql-action/pull/4061">#4061</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/github/codeql-action/blob/main/CHANGELOG.md">github/codeql-action's
changelog</a>.</em></p>
<blockquote>
<h2>4.37.6 - 04 Aug 2026</h2>
<ul>
<li>Changed the default filepath for the new remote file address format
that was introduced in CodeQL Action 4.37.0 / 3.37.0 to
<code>.github/codeql-config.yml</code> to align it with the suggested
path that is used elsewhere. <a
href="https://redirect.github.com/github/codeql-action/pull/4070">#4070</a></li>
</ul>
<h2>4.37.5 - 03 Aug 2026</h2>
<ul>
<li>Fixed a bug where a network error while streaming the download of
the CodeQL bundle could terminate the <code>init</code> Action instead
of falling back to downloading the bundle before extracting it. <a
href="https://redirect.github.com/github/codeql-action/pull/4061">#4061</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5595ccaf91"><code>5595cca</code></a>
Merge pull request <a
href="https://redirect.github.com/github/codeql-action/issues/4071">#4071</a>
from github/update-v4.37.6-6a9359a1b</li>
<li><a
href="ec9c75796a"><code>ec9c757</code></a>
Add change note for PR 4070</li>
<li><a
href="45c8742e17"><code>45c8742</code></a>
Update changelog for v4.37.6</li>
<li><a
href="6a9359a1bd"><code>6a9359a</code></a>
Merge pull request <a
href="https://redirect.github.com/github/codeql-action/issues/4070">#4070</a>
from github/mbg/remote-address/change-file-default</li>
<li><a
href="065cdc0394"><code>065cdc0</code></a>
Change <code>DEFAULT_CONFIG_FILE_NAME</code></li>
<li><a
href="f99dd5aeee"><code>f99dd5a</code></a>
Merge pull request <a
href="https://redirect.github.com/github/codeql-action/issues/4066">#4066</a>
from github/dependabot/npm_and_yarn/js-yaml-5.2.2</li>
<li><a
href="1804b211a3"><code>1804b21</code></a>
Merge pull request <a
href="https://redirect.github.com/github/codeql-action/issues/4068">#4068</a>
from github/mergeback/v4.37.5-to-main-d1ba80a1</li>
<li><a
href="3020a2f462"><code>3020a2f</code></a>
Rebuild</li>
<li><a
href="93c3a5a40b"><code>93c3a5a</code></a>
Update changelog and version after v4.37.5</li>
<li><a
href="d1ba80a13d"><code>d1ba80a</code></a>
Merge pull request <a
href="https://redirect.github.com/github/codeql-action/issues/4067">#4067</a>
from github/update-v4.37.5-1cd4d01d5</li>
<li>Additional commits viewable in <a
href="https://github.com/github/codeql-action/compare/v4.37.4...v4.37.6">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the all-dependencies group with 2 updates in the
/integration-test/src/jvmTest/typescript directory:
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)
and [tsx](https://github.com/privatenumber/tsx).
Updates `@types/node` from 26.1.2 to 26.2.0
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare
view</a></li>
</ul>
</details>
<br />
Updates `tsx` from 4.23.4 to 4.23.11
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/privatenumber/tsx/releases">tsx's
releases</a>.</em></p>
<blockquote>
<h2>v4.23.11</h2>
<h2><a
href="https://github.com/privatenumber/tsx/compare/v4.23.10...v4.23.11">4.23.11</a>
(2026-08-07)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>preserve async ESM require fallback (<a
href="55cbecef8e">55cbece</a>)</li>
</ul>
<hr />
<p>This release is also available on:</p>
<ul>
<li><a href="https://www.npmjs.com/package/tsx/v/4.23.11"><code>npm
package (@latest dist-tag)</code></a></li>
</ul>
<h2>v4.23.10</h2>
<h2><a
href="https://github.com/privatenumber/tsx/compare/v4.23.9...v4.23.10">4.23.10</a>
(2026-08-07)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>support nyc coverage discovery (<a
href="https://redirect.github.com/privatenumber/tsx/issues/710">#710</a>)
(<a
href="ec1bcd5f71">ec1bcd5</a>)</li>
</ul>
<hr />
<p>This release is also available on:</p>
<ul>
<li><a href="https://www.npmjs.com/package/tsx/v/4.23.10"><code>npm
package (@latest dist-tag)</code></a></li>
</ul>
<h2>v4.23.9</h2>
<h2><a
href="https://github.com/privatenumber/tsx/compare/v4.23.8...v4.23.9">4.23.9</a>
(2026-08-06)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>map Node test locations (<a
href="2f55884195">2f55884</a>)</li>
<li>support data URLs in tsImport (<a
href="b94f46f6b6">b94f46f</a>)</li>
</ul>
<hr />
<p>This release is also available on:</p>
<ul>
<li><a href="https://www.npmjs.com/package/tsx/v/4.23.9"><code>npm
package (@latest dist-tag)</code></a></li>
</ul>
<h2>v4.23.8</h2>
<h2><a
href="https://github.com/privatenumber/tsx/compare/v4.23.7...v4.23.8">4.23.8</a>
(2026-08-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>preserve package subpath resolution (<a
href="be1315e3f3">be1315e</a>)</li>
<li>preserve typeless ESM dependency exports (<a
href="70dfc5e3db">70dfc5e</a>)</li>
</ul>
<hr />
<p>This release is also available on:</p>
<ul>
<li><a href="https://www.npmjs.com/package/tsx/v/4.23.8"><code>npm
package (@latest dist-tag)</code></a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="bd3bc6448e"><code>bd3bc64</code></a>
test: cover CommonJS loader source fallback</li>
<li><a
href="55cbecef8e"><code>55cbece</code></a>
fix: preserve async ESM require fallback</li>
<li><a
href="6c5ba85f7a"><code>6c5ba85</code></a>
docs: document CommonJS default interop</li>
<li><a
href="ec1bcd5f71"><code>ec1bcd5</code></a>
fix: support nyc coverage discovery (<a
href="https://redirect.github.com/privatenumber/tsx/issues/710">#710</a>)</li>
<li><a
href="b6e5b48a7b"><code>b6e5b48</code></a>
docs: clarify CommonJS default imports</li>
<li><a
href="2f55884195"><code>2f55884</code></a>
fix: map Node test locations</li>
<li><a
href="de935d588b"><code>de935d5</code></a>
docs: document Node source-map stack formatting</li>
<li><a
href="b94f46f6b6"><code>b94f46f</code></a>
fix: support data URLs in tsImport</li>
<li><a
href="be1315e3f3"><code>be1315e</code></a>
fix: preserve package subpath resolution</li>
<li><a
href="5efba41e14"><code>5efba41</code></a>
docs: organize transform backend research</li>
<li>Additional commits viewable in <a
href="https://github.com/privatenumber/tsx/compare/v4.23.4...v4.23.11">compare
view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [hono](https://github.com/honojs/hono) from 4.12.27 to 4.13.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/honojs/hono/releases">hono's
releases</a>.</em></p>
<blockquote>
<h2>v4.13.1</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(trie-router): count every slash a pattern consumes by <a
href="https://github.com/Jaybhade"><code>@Jaybhade</code></a> in <a
href="https://redirect.github.com/honojs/hono/pull/5189">honojs/hono#5189</a></li>
<li>fix(utils/stream): re-acquire writer lock when pipe() throws by <a
href="https://github.com/Sriharsha-dev369"><code>@Sriharsha-dev369</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4988">honojs/hono#4988</a></li>
<li>fix(etag): skip unsafe methods or error responses on non-* case by
<a
href="https://github.com/na-trium-144"><code>@na-trium-144</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/5196">honojs/hono#5196</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/Jaybhade"><code>@Jaybhade</code></a>
made their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/5189">honojs/hono#5189</a></li>
<li><a
href="https://github.com/Sriharsha-dev369"><code>@Sriharsha-dev369</code></a>
made their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/4988">honojs/hono#4988</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/honojs/hono/compare/v4.13.0...v4.13.1">https://github.com/honojs/hono/compare/v4.13.0...v4.13.1</a></p>
<h2>v4.13.0</h2>
<p>Hono v4.13.0 is now available!</p>
<p>The highlight of this release is performance: a batch of low-level
optimizations makes the core request/response path significantly faster
— up to 1.25x on common routes in our benchmark. This release also adds
first-class support for the HTTP QUERY method, defined in <a
href="https://www.rfc-editor.org/rfc/rfc10008.html">RFC 10008</a>, a new
Method Not Allowed middleware, and more.</p>
<h2>Performance improvements</h2>
<p>This release includes a series of small optimizations: skipping
unnecessary <code>Headers</code> allocations, replacing regex tests with
<code>indexOf</code>, allocating internal state lazily, and more.</p>
<p>Here is <a
href="https://github.com/honojs/hono/tree/main/benchmarks/fetch"><code>benchmarks/fetch</code></a>
comparing v4.12 and v4.13 (<code>ROUNDS=5 ./compare.sh</code>, Bun
1.4.0, Apple Silicon — each measurement runs in a fresh process, and the
variant order is reversed every round to avoid warm-up bias):</p>
<table>
<thead>
<tr>
<th>Benchmark</th>
<th align="right">v4.12</th>
<th align="right">v4.13</th>
<th align="right">Speedup</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>ping</code> — <code>GET /</code></td>
<td align="right">165.83 ns</td>
<td align="right">163.99 ns</td>
<td align="right">1.01x</td>
</tr>
<tr>
<td><code>query</code> — <code>GET /id/1?name=bun</code></td>
<td align="right">674.40 ns</td>
<td align="right">616.99 ns</td>
<td align="right"><strong>1.09x</strong></td>
</tr>
<tr>
<td><code>json</code> — <code>GET /user</code></td>
<td align="right">528.99 ns</td>
<td align="right">422.44 ns</td>
<td align="right"><strong>1.25x</strong></td>
</tr>
<tr>
<td><code>body</code> — <code>POST /json</code></td>
<td align="right">1.16 µs</td>
<td align="right">1.00 µs</td>
<td align="right"><strong>1.15x</strong></td>
</tr>
</tbody>
</table>
<p>The individual changes:</p>
<ul>
<li>perf(context): iterate the header record with <code>for..in</code>
<a
href="https://redirect.github.com/honojs/hono/pull/5118">honojs/hono#5118</a></li>
<li>perf(url): replace regex tests with <code>indexOf</code> <a
href="https://redirect.github.com/honojs/hono/pull/5121">honojs/hono#5121</a></li>
<li>perf(context): skip <code>Headers</code> creation when there are no
headers to merge <a
href="https://redirect.github.com/honojs/hono/pull/5122">honojs/hono#5122</a></li>
<li>perf(urls): refactor <code>tryDecodeURIComponent</code> <a
href="https://redirect.github.com/honojs/hono/pull/5158">honojs/hono#5158</a></li>
<li>perf(request): allocate <code>#validatedData</code> lazily <a
href="https://redirect.github.com/honojs/hono/pull/5175">honojs/hono#5175</a></li>
<li>perf(request): probe the body cache without allocating <a
href="https://redirect.github.com/honojs/hono/pull/5176">honojs/hono#5176</a></li>
</ul>
<p>In addition, the RegExpRouter rewrite described below makes route
registration plus the first match roughly 20% faster.</p>
<p>Thanks <a
href="https://github.com/kibertoad"><code>@kibertoad</code></a> for the
contributions!</p>
<h2>First-class QUERY method support</h2>
<p>The QUERY method — a safe, idempotent method that carries a request
body — is now a first-class citizen in Hono. You can define QUERY
handlers with <code>app.query()</code>:</p>
<pre lang="ts"><code>const app = new Hono()
<p></tr></table><br />
</code></pre></p>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="cf785287b5"><code>cf78528</code></a>
4.13.1</li>
<li><a
href="f6aa913c3f"><code>f6aa913</code></a>
fix(etag): skip unsafe methods or error responses on non-* case (<a
href="https://redirect.github.com/honojs/hono/issues/5196">#5196</a>)</li>
<li><a
href="cd31bc196e"><code>cd31bc1</code></a>
fix(utils/stream): re-acquire writer lock when pipe() throws (<a
href="https://redirect.github.com/honojs/hono/issues/4988">#4988</a>)</li>
<li><a
href="569b4191a2"><code>569b419</code></a>
fix(trie-router): count every slash a pattern consumes (<a
href="https://redirect.github.com/honojs/hono/issues/5189">#5189</a>)</li>
<li><a
href="192768fbaf"><code>192768f</code></a>
4.13.0</li>
<li><a
href="b0c2d90eb0"><code>b0c2d90</code></a>
Merge pull request <a
href="https://redirect.github.com/honojs/hono/issues/5154">#5154</a>
from honojs/next</li>
<li><a
href="8f07028270"><code>8f07028</code></a>
fix(compress): set Vary: Accept-Encoding on negotiated responses (<a
href="https://redirect.github.com/honojs/hono/issues/5137">#5137</a>)</li>
<li><a
href="8a0b18fd9b"><code>8a0b18f</code></a>
feat(reg-exp-router): throw UnsupportedPathError during route
registration (#...</li>
<li><a
href="3feb3551d4"><code>3feb355</code></a>
fix(jsx): allow a function component to return an array (<a
href="https://redirect.github.com/honojs/hono/issues/5179">#5179</a>)</li>
<li><a
href="5d911d2ab7"><code>5d911d2</code></a>
feat(utils/headers): add HTTP fields newly registered with IANA (<a
href="https://redirect.github.com/honojs/hono/issues/5153">#5153</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/honojs/hono/compare/v4.12.27...v4.13.1">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Summary
Part of #815.
Adds the core types and codecs needed for SEP-2575:
- experimental accessors for request-scoped metadata while preserving
legacy request shapes and unknown `_meta` entries;
- `server/discover` request/result types, cache fields, and
unsupported-version error data; and
- polymorphic request/result decoding with wire-format and
malformed-input coverage.
The discovery types match the merged draft schema in
modelcontextprotocol/modelcontextprotocol#3002: `protocolVersion` and
`clientCapabilities` are required, `clientInfo` is optional, and
optional server information remains in result `_meta`.
## Motivation and Context
SEP-2575 moves protocol and client context onto individual requests and
introduces `server/discover`. The shared `RequestMeta` accessors remain
nullable so legacy requests stay representable; `DiscoverRequestParams`
enforces the fields required by the new discovery request.
This PR stops at the core type and codec boundary. It does not add
server admission, request-scoped dispatch, Streamable HTTP,
authentication, subscriptions, MRTR, lifecycle hooks, or a discovery
DSL.
## How Has This Been Tested?
- JVM: 597/597 tests
- JS Node and Chrome: 528/528 tests per target
- WasmJS Node and Chrome: 528/528 tests per target
- iOS Simulator arm64 and macOS arm64: 528/528 tests per target
- API dump/check, ktlint, detekt, and diff checks
Coverage includes required discovery metadata, optional `clientInfo`,
required cache fields, unknown metadata round-trips, the legacy
`resultType` fallback, unsupported-version data, and polymorphic result
classification.
## Breaking Changes
This adds `DiscoverRequest` as a new `ClientRequest` subtype. Consumers
recompiling exhaustive `when` expressions over `ClientRequest` may need
to add a branch. Existing request types and wire representations are
unchanged.
## Types of changes
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [x] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
## Additional context
`ttlMs` and `cacheScope` have Kotlin construction defaults but remain
required when decoding. An absent `resultType` decodes as `"complete"`
for compatibility with legacy results. Discovery result selection
requires the complete required shape so unrelated result extensions are
not misclassified.
---------
Co-authored-by: Pavel Gorgulov <devcrocod@gmail.com>
Bumps `kotlin` from 2.4.0 to 2.4.10.
Updates `org.jetbrains.kotlin.jvm` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `kotlin` from 2.4.0 to 2.4.10.
Updates `org.jetbrains.kotlin.jvm` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `kotlin` from 2.4.0 to 2.4.10.
Updates `org.jetbrains.kotlin.jvm` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `kotlin` from 2.4.0 to 2.4.10.
Updates `org.jetbrains.kotlin.jvm` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the kotlin group with 2 updates in the / directory:
[org.jetbrains.kotlin:kotlin-gradle-plugin](https://github.com/JetBrains/kotlin)
and
[org.jetbrains.kotlin:kotlin-serialization](https://github.com/JetBrains/kotlin).
Updates `org.jetbrains.kotlin:kotlin-gradle-plugin` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin:kotlin-gradle-plugin's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin:kotlin-gradle-plugin's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin:kotlin-serialization` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin:kotlin-serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin:kotlin-serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin:kotlin-serialization` from 2.4.0 to 2.4.10
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin:kotlin-serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin:kotlin-serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `mcp-kotlin` from 0.14.0 to 0.15.0.
Updates `io.modelcontextprotocol:kotlin-sdk-client` from 0.14.0 to
0.15.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-server` from 0.14.0 to
0.15.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-server's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `mcp-kotlin` from 0.14.0 to 0.15.0.
Updates `io.modelcontextprotocol:kotlin-sdk-client` from 0.14.0 to
0.15.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-server` from 0.14.0 to
0.15.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-server's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `mcp-kotlin` from 0.14.0 to 0.15.0.
Updates `io.modelcontextprotocol:kotlin-sdk-server` from 0.14.0 to
0.15.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-server's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-client` from 0.14.0 to
0.15.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-testing` from 0.14.0 to
0.15.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-testing's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `mcp-kotlin` from 0.14.0 to 0.15.0.
Updates `io.modelcontextprotocol:kotlin-sdk-client` from 0.14.0 to
0.15.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-server` from 0.14.0 to
0.15.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-server's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps
[io.modelcontextprotocol:kotlin-sdk-client](https://github.com/modelcontextprotocol/kotlin-sdk)
from 0.14.0 to 0.15.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.15.0</h2>
<h2>Description</h2>
<p>This release makes inbound message handling concurrent after the
initialization handshake, adds SSE heartbeats and elicitation schema
validation, and fixes several Streamable HTTP response and
session-lifecycle bugs.</p>
<h3>Breaking Changes</h3>
<p><strong>Concurrent inbound dispatch</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/884">#884</a></p>
<p>Inbound messages were processed serially on the transport read loop,
so one slow or peer-awaiting handler (sampling, elicitation, roots)
blocked every later message on the connection, including the responses
and <code>notifications/cancelled</code> those handlers depend on. After
the handshake, handlers may now run concurrently; processing stays
serial during initialization.</p>
<ul>
<li><code>ProtocolOptions</code> / <code>ClientOptions</code> /
<code>ServerOptions</code> gain a <code>handlerCoroutineContext</code>
parameter (defaults to <code>Dispatchers.Default</code>). Concurrency is
bounded internally; there is no opt-out flag by design.</li>
<li><code>RequestHandlerExtra</code> is now a
<code>CoroutineContext.Element</code> and is no longer
user-constructible. It exposes <code>requestId</code>,
<code>method</code>, <code>sendRequest</code>, and
<code>sendNotification</code>, and can be read inside a handler via the
new <code>currentRequestHandlerExtra()</code>.</li>
</ul>
<pre lang="diff"><code>- val extra = RequestHandlerExtra()
+ val extra = currentRequestHandlerExtra()
</code></pre>
<p><strong>Duplicate feature names are rejected at registration</strong>
by <a href="https://github.com/devcrocod"><code>@devcrocod</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/883">#883</a></p>
<p><code>addTool</code>/<code>addPrompt</code>/<code>addResource</code>/<code>addResourceTemplate</code>
silently replaced an existing entry and emitted a spurious
<code>list_changed</code> notification. They now throw
<code>IllegalArgumentException</code> and leave the existing
registration intact. The batch variants
(<code>addTools</code>/<code>addPrompts</code>/<code>addResources</code>)
are all-or-nothing. To replace a feature, remove it first.</p>
<pre lang="diff"><code>- server.addTool(name = "search", ...)
// silently overwrote
+ server.removeTool("search")
+ server.addTool(name = "search", ...)
</code></pre>
<p><strong><code>eventStore</code> removed from
<code>mcpStatelessStreamableHttp</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/909">#909</a></p>
<p>The parameter was never read or written: a stateless endpoint answers
<code>GET</code> with <code>405</code>, so no stream exists to store or
replay events on. The old overload is retained at
<code>DeprecationLevel.ERROR</code> with a <code>ReplaceWith</code>
migration hint. Use <code>mcpStreamableHttp</code> when you need
resumability.</p>
<pre lang="diff"><code> application.mcpStatelessStreamableHttp(
path = "/mcp",
- eventStore = myEventStore,
) { server }
</code></pre>
<h3>Features</h3>
<ul>
<li>Optional SSE heartbeats for Streamable HTTP servers via
<code>mcpStreamableHttp(sseHeartbeatConfig = { ... })</code>, keeping
long-lived streams alive against clients that disconnect on idle.
Heartbeats stay off by default, by <a
href="https://github.com/UnscientificJsZhai"><code>@UnscientificJsZhai</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/761">#761</a></li>
<li>Accepted form-mode elicitation content is now validated against
<code>requestedSchema</code>; a mismatch fails
<code>createElicitation</code> with <code>McpException</code>
(<code>INVALID_PARAMS</code>) instead of reaching server code unchecked,
by <a href="https://github.com/rea9r"><code>@rea9r</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/896">#896</a></li>
<li>The Streamable HTTP client now sends the standard
<code>Mcp-Method</code> and <code>Mcp-Name</code> POST headers, by <a
href="https://github.com/AndreKalberer"><code>@AndreKalberer</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/894">#894</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Stateless Streamable HTTP now closes its per-request session, fixing
unbounded growth of the session registry and notification subscriptions,
by <a
href="https://github.com/KlyneChrysler"><code>@KlyneChrysler</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/872">#872</a></li>
<li>Streamable HTTP responses keep their status and body when the client
accepts only <code>text/event-stream</code>, by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/911">#911</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="76b8e7d63a"><code>76b8e7d</code></a>
release: 0.15.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/918">#918</a>)</li>
<li><a
href="dab340f9bf"><code>dab340f</code></a>
fix(server): drop inert eventStore from stateless Streamable HTTP (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/909">#909</a>)</li>
<li><a
href="24c3cd3a69"><code>24c3cd3</code></a>
fix(server): match Accept header as media ranges (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/912">#912</a>)</li>
<li><a
href="7fa438ce00"><code>7fa438c</code></a>
feat(client): send MCP standard POST headers (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/894">#894</a>)</li>
<li><a
href="94745e617c"><code>94745e6</code></a>
chore(deps): bump the kotest group across 1 directory with 3 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/915">#915</a>)</li>
<li><a
href="2b494b7637"><code>2b494b7</code></a>
chore(deps): bump the other-dependencies group across 5 directories with
3 up...</li>
<li><a
href="82fe56e1e8"><code>82fe56e</code></a>
fix(server): preserve Streamable HTTP response status and body (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/911">#911</a>)</li>
<li><a
href="a06d699d6c"><code>a06d699</code></a>
feat: SSE heartbeat (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/761">#761</a>)</li>
<li><a
href="cab669b108"><code>cab669b</code></a>
fix: classify malformed request params as invalid params (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/886">#886</a>)</li>
<li><a
href="b6cb547d58"><code>b6cb547</code></a>
fix(server): preserve id on duplicate initialize errors (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/868">#868</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.14.0...0.15.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the other-dependencies group with 1 update in the
/samples/kotlinlang-mcp-server directory:
[ch.qos.logback:logback-classic](https://github.com/qos-ch/logback).
Updates `ch.qos.logback:logback-classic` from 1.6.0 to 1.6.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/qos-ch/logback/releases">ch.qos.logback:logback-classic's
releases</a>.</em></p>
<blockquote>
<h2>Logback 1.6.1</h2>
<p><strong>2026-07-28 Release of logback version 1.6.1</strong></p>
<p>• In TimeBasedRollingPolicy, when the file option is set, the
intermediate file renamed before asynchronous compression now receives
the target archive name without the compression suffix (e.g.
<code>.gz</code>, <code>.zip</code>, <code>.xz</code>). Previously it
used a nanotime-based <code>.tmp</code> suffix. This makes the file
easier to identify if compression fails during rollover. (See also the
following paragraph.)</p>
<p>• On GZ, ZIP, or XZ compression failure, the original (uncompressed)
log file is no longer deleted. Compression strategies now delete the
source file only after successful compression and emit a warning that
the original was left intact.</p>
<p>• ConsoleAppender with <!-- raw HTML omitted --> now probes JLine's
org.jline.jansi.AnsiConsole first and falls back to the legacy
FuseSource org.fusesource.jansi.AnsiConsole class. This keeps ANSI
coloring working after Jansi moved under the JLine project. The optional
org.jline:jansi-core artifact is declared as a dependency alongside the
existing FuseSource jansi dependency. A preferredJansiClassName property
was added for tests. This issue was reported in <a
href="https://redirect.github.com/qos-ch/logback/issues/1043">issues/1043</a>
by <a href="https://github.com/seonwooj0810">seonwoo_jung</a> who also
provided the relevant PR.</p>
<p>• LayoutWrappingEncoder now reports an error at start() when no
layout is set and guards encode() against a null layout. Previously, a
missing layout (for example after an ignored <!-- raw HTML omitted
-->/<!-- raw HTML omitted -->/<!-- raw HTML omitted --> branch) allowed
the encoder to start and then fail with a NullPointerException on every
event, resulting in silent log loss. This issue was reported in <a
href="https://redirect.github.com/qos-ch/logback/issues/1046">issues/1046</a>
by <a href="https://github.com/seonwooj0810">seonwoo_jung</a> who also
provided the relevant PR.</p>
<p>• FileCollisionAnalyser now detects file collisions involving nested
appenders of SiftingAppender. When the nested file or fileNamePattern
does not textually reference the discriminator key (e.g. ${userId}), a
warning is issued at configuration time naming the appender, the key,
and the shared target. This closes a gap where statically declared file
appenders were checked but sifted nested appenders were not. This
enhancement was contributed in [PR <a
href="https://redirect.github.com/qos-ch/logback/issues/1041">#1041</a>](<a
href="https://redirect.github.com/qos-ch/logback/issues/1041">qos-ch/logback#1041</a>)
by <a href="https://github.com/seonwooj0810">seonwoo_jung</a>.</p>
<p>• More defensive handling in SyslogOutputStream and
SyslogAppenderBase: the close() method now ensures that resources are
closed, writes and flushes check that the underlying resources are in a
valid state and fallback to no-op otherwise.</p>
<p>• A bit-wise identical binary of this version can be reproduced by
building from source code at commit
57759f433000a133088ef0441038963134437fbd associated with the tag
v_1.6.1. The release was built using Java "21" 2023-10-17 LTS
build 21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
<p>• See <a
href="https://logback.qos.ch/news.html#1.6.1">https://logback.qos.ch/news.html#1.6.1</a>
for the original text.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="57759f4330"><code>57759f4</code></a>
prepare release 1.6.1</li>
<li><a
href="175f99f209"><code>175f99f</code></a>
fix imports</li>
<li><a
href="4b8773ed12"><code>4b8773e</code></a>
add compressionFailureLeavesOriginalFileIntact test for XZ
compression</li>
<li><a
href="cafaf1115f"><code>cafaf11</code></a>
do not delete original file if compression fails</li>
<li><a
href="ee50125b29"><code>ee50125</code></a>
let the temporary file before compression be target file without the .gz
or ....</li>
<li><a
href="5626acc301"><code>5626acc</code></a>
minor refactoring</li>
<li><a
href="d97da4fbc0"><code>d97da4f</code></a>
minor refactoring</li>
<li><a
href="159c045d8f"><code>159c045</code></a>
more defensive coding in SyslogOutputStream and in
SyslogAppenderBase</li>
<li><a
href="9427d6b23d"><code>9427d6b</code></a>
slight refactoring for clarity</li>
<li><a
href="79c4179c0b"><code>79c4179</code></a>
slight refactoring</li>
<li>Additional commits viewable in <a
href="https://github.com/qos-ch/logback/compare/v_1.6.0...v_1.6.1">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps
[ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from
1.5.38 to 1.6.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/qos-ch/logback/releases">ch.qos.logback:logback-classic's
releases</a>.</em></p>
<blockquote>
<h2>Logback 1.6.1</h2>
<p><strong>2026-07-28 Release of logback version 1.6.1</strong></p>
<p>• In TimeBasedRollingPolicy, when the file option is set, the
intermediate file renamed before asynchronous compression now receives
the target archive name without the compression suffix (e.g.
<code>.gz</code>, <code>.zip</code>, <code>.xz</code>). Previously it
used a nanotime-based <code>.tmp</code> suffix. This makes the file
easier to identify if compression fails during rollover. (See also the
following paragraph.)</p>
<p>• On GZ, ZIP, or XZ compression failure, the original (uncompressed)
log file is no longer deleted. Compression strategies now delete the
source file only after successful compression and emit a warning that
the original was left intact.</p>
<p>• ConsoleAppender with <!-- raw HTML omitted --> now probes JLine's
org.jline.jansi.AnsiConsole first and falls back to the legacy
FuseSource org.fusesource.jansi.AnsiConsole class. This keeps ANSI
coloring working after Jansi moved under the JLine project. The optional
org.jline:jansi-core artifact is declared as a dependency alongside the
existing FuseSource jansi dependency. A preferredJansiClassName property
was added for tests. This issue was reported in <a
href="https://redirect.github.com/qos-ch/logback/issues/1043">issues/1043</a>
by <a href="https://github.com/seonwooj0810">seonwoo_jung</a> who also
provided the relevant PR.</p>
<p>• LayoutWrappingEncoder now reports an error at start() when no
layout is set and guards encode() against a null layout. Previously, a
missing layout (for example after an ignored <!-- raw HTML omitted
-->/<!-- raw HTML omitted -->/<!-- raw HTML omitted --> branch) allowed
the encoder to start and then fail with a NullPointerException on every
event, resulting in silent log loss. This issue was reported in <a
href="https://redirect.github.com/qos-ch/logback/issues/1046">issues/1046</a>
by <a href="https://github.com/seonwooj0810">seonwoo_jung</a> who also
provided the relevant PR.</p>
<p>• FileCollisionAnalyser now detects file collisions involving nested
appenders of SiftingAppender. When the nested file or fileNamePattern
does not textually reference the discriminator key (e.g. ${userId}), a
warning is issued at configuration time naming the appender, the key,
and the shared target. This closes a gap where statically declared file
appenders were checked but sifted nested appenders were not. This
enhancement was contributed in [PR <a
href="https://redirect.github.com/qos-ch/logback/issues/1041">#1041</a>](<a
href="https://redirect.github.com/qos-ch/logback/issues/1041">qos-ch/logback#1041</a>)
by <a href="https://github.com/seonwooj0810">seonwoo_jung</a>.</p>
<p>• More defensive handling in SyslogOutputStream and
SyslogAppenderBase: the close() method now ensures that resources are
closed, writes and flushes check that the underlying resources are in a
valid state and fallback to no-op otherwise.</p>
<p>• A bit-wise identical binary of this version can be reproduced by
building from source code at commit
57759f433000a133088ef0441038963134437fbd associated with the tag
v_1.6.1. The release was built using Java "21" 2023-10-17 LTS
build 21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
<p>• See <a
href="https://logback.qos.ch/news.html#1.6.1">https://logback.qos.ch/news.html#1.6.1</a>
for the original text.</p>
<h2>Logback 1.6.0</h2>
<p><strong>2026-07-23 Release of logback version 1.6.0</strong></p>
<p>• Removed certain deprecated variables, methods, and classes. For the
list of removed members see <a
href="https://logback.qos.ch/notes/release_1.6.0.txt">release_1.6.0.txt.</a></p>
<p>• In <code>AsyncAppenderBase</code>, the
<code>put(ILoggingEvent)</code> method now has the protected modifier to
allow access from derived classes. This change was requested by Thomas
Skjølberg in <a
href="https://redirect.github.com/qos-ch/logback/pull/1053">pr#1053</a>.</p>
<p>• Bump SLF4J dependency to version 2.0.18.</p>
<p>• <strong>See also the overview of the <a
href="https://logback.qos.ch/news.html#latest_stable">1.6.x
series</a>.</strong></p>
<p>• A bit-wise identical binary of this version can be reproduced by
building from source code at commit
b07adf36019b51a10f824fdd94009985c587b1d3 associated with the tag
v_1.6.0. The release was built using Java "21" 2023-10-17 LTS
build 21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="57759f4330"><code>57759f4</code></a>
prepare release 1.6.1</li>
<li><a
href="175f99f209"><code>175f99f</code></a>
fix imports</li>
<li><a
href="4b8773ed12"><code>4b8773e</code></a>
add compressionFailureLeavesOriginalFileIntact test for XZ
compression</li>
<li><a
href="cafaf1115f"><code>cafaf11</code></a>
do not delete original file if compression fails</li>
<li><a
href="ee50125b29"><code>ee50125</code></a>
let the temporary file before compression be target file without the .gz
or ....</li>
<li><a
href="5626acc301"><code>5626acc</code></a>
minor refactoring</li>
<li><a
href="d97da4fbc0"><code>d97da4f</code></a>
minor refactoring</li>
<li><a
href="159c045d8f"><code>159c045</code></a>
more defensive coding in SyslogOutputStream and in
SyslogAppenderBase</li>
<li><a
href="9427d6b23d"><code>9427d6b</code></a>
slight refactoring for clarity</li>
<li><a
href="79c4179c0b"><code>79c4179</code></a>
slight refactoring</li>
<li>Additional commits viewable in <a
href="https://github.com/qos-ch/logback/compare/v_1.5.38...v_1.6.1">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Removes the `eventStore` parameter from `mcpStatelessStreamableHttp`,
where it was never read or written.
closes#908
## Breaking Changes
Source-breaking only
## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
The header is now parsed into media ranges (`parseHeaderValue` +
`ContentType.match`)
## Breaking Changes
none
## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
## Problem
SEP-2243 requires Streamable HTTP clients to mirror applicable JSON-RPC
request metadata into standard HTTP headers. The Kotlin client currently
sends `Mcp-Protocol-Version` and session metadata but does not emit
`Mcp-Method` or `Mcp-Name`.
## Solution
- Add `Mcp-Method` for JSON-RPC requests and notifications.
- Add `Mcp-Name` from a string `params.name`, falling back to a string
`params.uri`.
- Omit both headers for JSON-RPC responses.
- Add focused transport tests for name-, URI-, notification-, and
response-based behavior.
## Validation
- `.\gradlew.bat :kotlin-sdk-client:jvmTest --tests
"io.modelcontextprotocol.kotlin.sdk.client.streamable.http.StreamableHttpClientTransportTest"`
- `.\gradlew.bat :kotlin-sdk-client:ktlintCheck
:kotlin-sdk-client:detekt :kotlin-sdk-client:apiCheck`
- `git diff --check`
Closes#787
AI assistance was used while preparing this PR. I reviewed the final
change, ran the validation listed above, and take responsibility for it.
---------
Co-authored-by: Pavel Gorgulov <devcrocod@gmail.com>
Streamable HTTP responses now keep their status when the client accepts
only `text/event-stream`.
## How Has This Been Tested?
New `StreamableHttpResponseDeliveryTest`
## Breaking Changes
None
## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
## Summary
Adds optional SSE heartbeat configuration for streamable HTTP MCP server
connections.
This lets `Application.mcpStreamableHttp` callers pass Ktor's
`Heartbeat` configuration for SSE streams, including heartbeat period
and event payload. Heartbeats remain disabled by default, preserving the
existing stream behavior unless the new option is explicitly provided.
## Motivation and Context
Some MCP clients need heartbeat messages on SSE connections to keep the
connection alive. Without those heartbeats, the client may proactively
disconnect from the MCP server. MCP server developers need a way to
configure an SSE heartbeat mechanism so they can avoid unexpected client
disconnects.
In my case, my MCP server was consistently disconnected by Gemini CLI. I
worked around the issue with some fallback approaches, but I believe the
best implementation is to add heartbeat support by using Ktor's built-in
API.
## Implementation Notes
- Added a function overload of `Application.mcpStreamableHttp` to
introduce heartbeat parameter `sseHeartbeatConfig: (Heartbeat.() ->
Unit)?`.
- Applied the configuration inside the Ktor `sse { ... }` block before
handling the existing streamable HTTP transport request.
- Updated the server API dump for the new public API surface.
## How Has This Been Tested?
Added `StreamableHttpHeartbeatIntegrationTest` covering:
- Configured GET SSE streams apply the provided heartbeat configuration.
- GET SSE streams do not send default heartbeats when
`sseHeartbeatConfig` is omitted.
- Configured GET SSE streams emit heartbeat events repeatedly.
- Legacy MCP over SSE APIs do not expose the new heartbeat
configuration.
Verified locally with:
```bash
./gradlew :integration-test:jvmTest --tests "io.modelcontextprotocol.kotlin.sdk.integration.streamablehttp.StreamableHttpHeartbeatIntegrationTest"
```
Result: `BUILD SUCCESSFUL`.
## Breaking Changes
None.
This change adds a new `Application.mcpStreamableHttp` overload that
accepts
`sseHeartbeatConfig: (Heartbeat.() -> Unit)?` while keeping the existing
overload
unchanged. Existing callers continue to compile and keep the previous
behavior:
SSE heartbeats are not sent unless the new overload is used with an
explicit
heartbeat configuration.
## Types of changes
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
## Additional context
Heartbeat behavior is delegated to Ktor's SSE heartbeat support, so
applications can use the same configuration semantics they would use in
native Ktor SSE routes.
Related issue: [SSE needs a heartbeat #344
](https://github.com/modelcontextprotocol/kotlin-sdk/issues/344)
---------
Co-authored-by: Pavel Gorgulov <devcrocod@gmail.com>
## Summary
Fixes#866.
## Changes
- Preserve the parsed JSON-RPC request id when Streamable HTTP rejects a
duplicate `initialize` request.
- Keep pre-parse and transport-level rejection paths unchanged when the
request id is not available.
- Extend the duplicate-initialize regression test to assert the error
response id as well as the HTTP status.
## Verification
```bash
./gradlew :kotlin-sdk-server:jvmTest --tests 'io.modelcontextprotocol.kotlin.sdk.server.StreamableHttpServerTransportTest.second initialization request returns JSON-RPC error with request id'
./gradlew :kotlin-sdk-server:jvmTest --tests 'io.modelcontextprotocol.kotlin.sdk.server.StreamableHttpServerTransportTest'
./gradlew :kotlin-sdk-server:jvmTest
./gradlew :kotlin-sdk-server:ktlintCheck :kotlin-sdk-server:detekt
```
Co-authored-by: Pavel Gorgulov <devcrocod@gmail.com>
Reject duplicate feature registration instead of silently overwriting
the existing entry.
## Motivation and Context
`FeatureRegistry.add`/`addAll` silently replaced a feature registered
under the same key and emitted a spurious `list_changed` notification.
Tool/prompt names and resource URIs are unique identifiers in MCP, and
the TypeScript SDK already rejects duplicates at registration time
(`Tool X is already registered`).
- `addTool`/`addPrompt`/`addResource`/`addResourceTemplate` now throw
`IllegalArgumentException` on a duplicate name/URI; the existing
registration stays intact and no notification is emitted.
- `addTools`/`addPrompts`/`addResources` are all-or-nothing: batches
with intra-batch duplicates or conflicts with existing keys are rejected
without registering anything.
- To replace a feature, remove it first (`removeTool` + `addTool`),
matching the TypeScript SDK's remove-then-re-register path. No new
public API.
## How Has This Been Tested?
New `FeatureRegistryTest` unit suite (duplicate rejection, batch
atomicity, no notification on rejection, re-add after remove) plus
integration tests for tools, prompts, resources, and resource templates.
The check also surfaced a real duplicate `addResource` in
`AbstractResourceIntegrationTest`, fixed here. `jvmTest` (all modules),
`apiCheck`, `ktlintCheck`, and `detekt` pass locally.
## Breaking Changes
No public API signature changes (`apiCheck` passes against the existing
dump). Behavioral: registering a duplicate name/URI now throws
`IllegalArgumentException` instead of silently overwriting; remove the
feature first to replace it.
## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [x] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
Validate accepted form-mode elicitation `content` against the
`requestedSchema` on the server, rejecting mismatches with an
`INVALID_PARAMS` error.
fixes#895
<!-- Provide a brief summary of your changes -->
## Motivation and Context
<!-- Why is this change needed? What problem does it solve? -->
`createElicitation` returned accepted content to server code as-is. The
specification's
form-mode security guidance says "Servers SHOULD validate received data
matches the requested
schema" ([2025-11-25, Form Mode
Security](https://modelcontextprotocol.io/specification/2025-11-25/client/elicitation#form-mode-security)).
Comparable validation already exists in the TypeScript SDK's
`elicitInput` and Python's `elicit_with_validation` helper. Details and
design notes are in #895.
## How Has This Been Tested?
<!-- Have you tested this in a real application? Which scenarios were
tested? -->
New unit tests for the validator and integration tests over an in-memory
client–server pair.
## Breaking Changes
<!-- Will users need to update their code or configurations? -->
No API changes. Behavioral note: an accepted form-mode response that
does not match the requested schema now fails `createElicitation` with
`McpException` (`INVALID_PARAMS`) instead of being returned to the
caller.
## Types of changes
<!-- What types of changes does your code introduce? Put an `x` in all
the boxes that apply: -->
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
<!-- Go over all the following points, and put an `x` in all the boxes
that apply. -->
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
Co-authored-by: Pavel Gorgulov <devcrocod@gmail.com>
Bumps [org.jetbrains.kotlin.jvm](https://github.com/JetBrains/kotlin)
from 2.4.0 to 2.4.10.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.10</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
<h2>Kotlin 2.4.10-RC2</h2>
<h2>Changelog</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.10</h2>
<h3>Backend. Wasm</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87066"><code>KT-87066</code></a>
K/Wasm: Not all files are presented in compiler output directory with
multimodule-closed-world and incremental compilation</li>
</ul>
<h3>Compiler</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86939"><code>KT-86939</code></a>
JVM: IllegalStateException "No value for annotation parameter"
when using const val in nested Java annotation array argument</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83766"><code>KT-83766</code></a>
K2: Wrong sourcePsi is set for <code>SymbolPsiLiteral</code> in SLC for
annotation arguments referencing a const val</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86728"><code>KT-86728</code></a>
Reified type inference: expected type not propagated into inline call
inside lambda with elvis operator</li>
</ul>
<h3>Compose Compiler</h3>
<ul>
<li><a
href="https://issuetracker.google.com/issues/522127447"><code>b/522127447</code></a>
Compose Compiler 2.4: classes previously inferred <code>stable</code>
now reported <code>runtime</code>/<code>Uncertain</code></li>
</ul>
<h3>Klibs</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86501"><code>KT-86501</code></a>
Native: IrTypeAliasSymbolImpl is already bound. Signature:
kotlinx.datetime/Instant|null[0] on iosSimulatorArm64</li>
</ul>
<h3>Tools. CLI</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86930"><code>KT-86930</code></a>
Introduce <code>kotlinr</code> in the Kotlin distribution</li>
</ul>
<h3>Tools. Gradle. BCV</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87223"><code>KT-87223</code></a>
Gradle, BCV: open version range in kotlinAbiValidationCompatClasspath
causes kotlin-build-tools-impl to resolve to 2.4.20-Beta1 instead of
2.4.0</li>
</ul>
<h3>Tools. Gradle. JS</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87304"><code>KT-87304</code></a>
jsBrowserTest fails with "exited with errors (exit code:
1)"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86057"><code>KT-86057</code></a>
kotlinUpgradeYarnLock skips lock file regeneration when kotlinNpmInstall
is up-to-date, causing kotlinStoreYarnLock to fail</li>
</ul>
<h3>Tools. Gradle. Multiplatform</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87084"><code>KT-87084</code></a>
False positive warning for JS and Wasm compilations when CRI is
enabled</li>
</ul>
<h3>Tools. Scripts</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-87076"><code>KT-87076</code></a>
<code>@file</code>:CompilerOptions("-jvm-target", ...) ignored
in .main.kts scripts in Kotlin 2.4.0, falling back to JVM target
1.8</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-86352"><code>KT-86352</code></a>
K2 scripting: FirResolvedTypeRef exception when resolving extension
functions from imported scripts</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5687445832"><code>5687445</code></a>
Add Changelog for 2.4.10-RC2</li>
<li><a
href="ba30392c45"><code>ba30392</code></a>
[Wasm] Support regenerate unchanged modules flag on KGP</li>
<li><a
href="6307e7310d"><code>6307e73</code></a>
[Wasm] Implement Xwasm-IC-generate-unchanged-modules flag</li>
<li><a
href="39d7aee847"><code>39d7aee</code></a>
Add ChangeLog for 2.4.10-RC2</li>
<li><a
href="a2956bed85"><code>a2956be</code></a>
[Gradle] Update karma.conf.js to use 'require(...)' instead plain
strings</li>
<li><a
href="9b1361ce7a"><code>9b1361c</code></a>
[Gradle] KT-87223: Updated regression test</li>
<li><a
href="a4c153af52"><code>a4c153a</code></a>
[Gradle] KT-87223: Fix toochain to 2.4.0 for abiValidation compat
config</li>
<li><a
href="bc04b90d24"><code>bc04b90</code></a>
Add ChangeLog for 2.4.10-RC</li>
<li><a
href="bbcb94baa2"><code>bbcb94b</code></a>
[CRI] explicitly disable CRI generation for non-JVM targets to avoid
false-po...</li>
<li><a
href="6c2c458f1d"><code>6c2c458</code></a>
Scripting: fix jvmTarget processing from script annotations</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.4.0...v2.4.10">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Clear the recently-cancelled request id buffer in `doClose` so
connection teardown fully resets per-request bookkeeping.
## Motivation and Context
Follow-up to #884. `doClose` already resets `_responseHandlers`,
`_progressHandlers`, and `inFlightRequestJobs`, but left
`recentlyCancelledRequestIds` populated across a close. This aligns
teardown to clear all Protocol-scoped per-request state.
Not a correctness bug: the buffer is bounded (256) and self-evicting,
request ids are random UUIDs so stale entries cannot false-match a new
connection, and the post-close `onMessage` guard drops late messages
from the old transport before the buffer is consulted. The change
removes the lone asymmetry in `doClose`.
## How Has This Been Tested?
- `./gradlew :kotlin-sdk-core:compileKotlinJvm`
- `./gradlew :kotlin-sdk-core:jvmTest --tests "*ProtocolTest*"`
## Breaking Changes
None.
## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [ ] I have added appropriate error handling
- [ ] I have added or updated documentation as needed
## Additional context
`recentlyCancelledRequestIds` is Protocol-scoped (like
`_responseHandlers`/`_progressHandlers`), so it is reset in `doClose`
rather than on the per-connection `Connection` object.
Bumps
[ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from
1.5.37 to 1.5.38.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/qos-ch/logback/releases">ch.qos.logback:logback-classic's
releases</a>.</em></p>
<blockquote>
<h2>Logback 1.5.38</h2>
<p><strong>2026-07-09 Release of logback version 1.5.38</strong></p>
<p>• In <code>HardenedObjectInputStream</code>, fixed a typo preventing
<code>Throwable</code> objects from being white-filtered. This issue was
reported in [PR <a
href="https://redirect.github.com/qos-ch/logback/issues/1045">#1045</a>](<a
href="https://redirect.github.com/qos-ch/logback/pull/1045">qos-ch/logback#1045</a>)
by <a href="https://github.com/t0rchwo0d">t0rchwo0d</a>.</p>
<p>• A bitwise identical binary of this version can be reproduced by
building from source code at commit
d04984a41fce42977466f45a2f076f0ee5cc4207 associated with the tag
v_1.5.38. Release built using Java "21" 2023-10-17 LTS build
21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d04984a41f"><code>d04984a</code></a>
prepare release 1.5.38</li>
<li><a
href="4fffda6549"><code>4fffda6</code></a>
updateversion of maven-gpg-plugin</li>
<li><a
href="7ee48a17be"><code>7ee48a1</code></a>
Fixed a typo where java,lang.Throwable was written with a comma instead
of a ...</li>
<li><a
href="84580a24e6"><code>84580a2</code></a>
remove license profile</li>
<li><a
href="f817c8de7d"><code>f817c8d</code></a>
start work on 1.5.28-SNAPSHOT</li>
<li>See full diff in <a
href="https://github.com/qos-ch/logback/compare/v_1.5.37...v_1.5.38">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
fixes#786
stateless streamable http endpoint never closed its per request session,
so the session registry and notification subscriptions grew forever. now
the session is closed in a finally block after each request, which
triggers the existing cleanup. also removed the per request
server.onClose logging callback that accumulated on shared servers.
added tests proving sessions are removed after normal and rejected
requests. jvmTest, ktlint, detekt, apiCheck all pass. no public api
changes.
Co-authored-by: Pavel Gorgulov <devcrocod@gmail.com>
Make inbound message handling concurrent after the initialization
handshake, so a slow or peer-awaiting handler no longer blocks other
messages on the same connection
fixes#176, #572
## Motivation and Context
Inbound messages were processed serially on the transport read loop. One
slow or peer-awaiting request handler (sampling, elicitation, roots)
blocked every later message on that connection, including the responses
and `notifications/cancelled` those handlers depend on which could
deadlock request/response flows.
## How Has This Been Tested?
New and old tests
## Breaking Changes
- after the handshake, inbound handlers may run concurrently (processing
stays serial during initialization). There is no opt-out flag by design,
concurrency is bounded by `maxConcurrentHandlers` /
`maxInFlightHandlers`.
- `ProtocolOptions` / `ClientOptions` / `ServerOptions` gain new
parameters with defaults
- `RequestHandlerExtra` is now a coroutine-context element and is no
longer user-constructible
## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [x] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
`ChannelTransportTest` connected both sides concurrently, which is racy.
`ChannelTransport` starts delivering inbound messages when its read loop
launches, which happens before `start()` marks the transport
`Operational`. The two run on different dispatchers, so the client's
`initialize` could reach the server read loop first and the session's
`InitializeResult` was then rejected by the send state gate with
`Transport is not ready`. Measured ~3 failures in 600 rounds.
`createSession()` does not await the handshake, so creating the session
first is enough to order the two. This also matches the usage shown in
`createLinkedPair()`'s KDoc.
Not addressed here: the transport itself should not deliver inbound
messages before it is `Operational`. Fixing that needs a
post-`Operational` hook on `AbstractClientTransport` that the read loop
awaits.
Bumps the kotlin group with 2 updates in the / directory:
[org.jetbrains.kotlin:kotlin-gradle-plugin](https://github.com/JetBrains/kotlin)
and
[org.jetbrains.kotlin:kotlin-serialization](https://github.com/JetBrains/kotlin).
Updates `org.jetbrains.kotlin:kotlin-gradle-plugin` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin:kotlin-gradle-plugin's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin:kotlin-gradle-plugin's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin:kotlin-serialization` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin:kotlin-serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin:kotlin-serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin:kotlin-serialization` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin:kotlin-serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin:kotlin-serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: devcrocod <devcrocod@gmail.com>
Bumps `kotlin` from 2.3.21 to 2.4.0.
Updates `org.jetbrains.kotlin.jvm` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `kotlin` from 2.3.21 to 2.4.0.
Updates `org.jetbrains.kotlin.jvm` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `kotlin` from 2.3.21 to 2.4.0.
Updates `org.jetbrains.kotlin.jvm` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `kotlin` from 2.3.21 to 2.4.0.
Updates `org.jetbrains.kotlin.jvm` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `org.jetbrains.kotlin.plugin.serialization` from 2.3.21 to 2.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.plugin.serialization's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.plugin.serialization's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.jetbrains.kotlin.jvm](https://github.com/JetBrains/kotlin)
from 2.3.21 to 2.4.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/releases">org.jetbrains.kotlin.jvm's
releases</a>.</em></p>
<blockquote>
<h2>Kotlin 2.4.0</h2>
<h2>Changelog</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/JetBrains/kotlin/blob/master/ChangeLog.md">org.jetbrains.kotlin.jvm's
changelog</a>.</em></p>
<blockquote>
<h2>2.4.0</h2>
<h3>Analysis API</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83867"><code>KT-83867</code></a>
OVERLOAD_RESOLUTION_AMBIGUITY false positive with assertEquals in IJ
repo</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83723"><code>KT-83723</code></a>
[Analysis API] Enable experimental KDoc resolver by default</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83388"><code>KT-83388</code></a>
Analysis API: properly support KMP in KotlinPackageProvider</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-65683"><code>KT-65683</code></a>
Analysis API: Dangling file session creation causes a
<code>computeIfAbsent</code> contract violation</li>
</ul>
<h3>Analysis API. Code Compilation</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-78946"><code>KT-78946</code></a>
Evaluation of variable with local class in type parameter leads to
InventNamesForLocalClasses exception</li>
</ul>
<h3>Analysis API. FIR</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-68260"><code>KT-68260</code></a>
K2 AA: InvalidFirElementTypeException “For CALLABLE_REFERENCE_EXPRESSION
with text <code>::lam1</code>, unexpected element of type: no element
found” with illegal callable reference call</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-70896"><code>KT-70896</code></a>
AA: False positive deprecation warning with override of built-in method
in JDK mapped class</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84711"><code>KT-84711</code></a>
K2 IDE sometimes loses FIR plugin-generated declarations after file
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84625"><code>KT-84625</code></a>
Analysis API: collectDesignationPath fails for nested classes inside
plugin-generated top-level classes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84596"><code>KT-84596</code></a>
Improve K2 Jooq completion performance</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84525"><code>KT-84525</code></a>
KaValueParameterSymbol#getHasSynthesizedName returns false for
FirDeclarationOrigin.SubstitutionOverride.DeclarationSite</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83546"><code>KT-83546</code></a>
Kotlin analysis reach ClsCustomNavigationPolicy</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84259"><code>KT-84259</code></a>
Move CommonDefaultImportsProvider to the frontend independent
module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82945"><code>KT-82945</code></a>
Analysis API: KotlinIllegalArgumentExceptionWithAttachments: Expected
FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-71135"><code>KT-71135</code></a>
AA: exception from sealed inheritors checker when
<code>analyzeCopy</code></li>
</ul>
<h3>Analysis API. Infrastructure</h3>
<h4>Fixes</h4>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83905"><code>KT-83905</code></a>
Analysis API: Improve UX with test data</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84913"><code>KT-84913</code></a>
Extract compiler classes used by the PSI & Analysis API to a
separate module</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-64986"><code>KT-64986</code></a>
Analysis API: Implement Analysis API tests for different KMP
Platforms</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84776"><code>KT-84776</code></a>
The test data manager misses the redundancy check in the update
mode</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84962"><code>KT-84962</code></a>
The test data manager misses -ea flag</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84388"><code>KT-84388</code></a>
Preserve the EOF status in the test data manager to avoid extra
changes</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84362"><code>KT-84362</code></a>
Analysis API tests produce many warnings due to "not yet loaded
registry"</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84279"><code>KT-84279</code></a>
Test Data Manager fails on a clean build</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83913"><code>KT-83913</code></a>
Exclude compiler-based Analysis API tests from Git tracking</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-80379"><code>KT-80379</code></a>
Extract per-module test generators for AA tests</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84120"><code>KT-84120</code></a>
Move CLI modules out of kotlin-compiler-fe10-for-ide</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-83200"><code>KT-83200</code></a>
Track external dependencies of the Analysis API modules</li>
</ul>
<h3>Analysis API. Light Classes</h3>
<ul>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-82434"><code>KT-82434</code></a>
Light classes should prefer enum entries to properties</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-84200"><code>KT-84200</code></a>
SLC: return type is not boxed for delegated methods with generic
original method</li>
<li><a
href="https://youtrack.jetbrains.com/issue/KT-72451"><code>KT-72451</code></a>
"CCE: class PsiPrimitiveType cannot be cast to class
PsiClassType" with same-named enum class and typealias</li>
</ul>
<h3>Analysis API. PSI</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="add726ca8c"><code>add726c</code></a>
Add ChangeLog for 2.4.0-RC2</li>
<li><a
href="69a4a81ef2"><code>69a4a81</code></a>
[Wasm] Add binaryen per-file arguments</li>
<li><a
href="8907c635d4"><code>8907c63</code></a>
[KGP] Suppress duplicate compiler warning output when --warning-mode=all
is a...</li>
<li><a
href="f9bef128ea"><code>f9bef12</code></a>
[KGP] Add failing test for duplicate compiler warning output via
Problems API</li>
<li><a
href="7fe49c227a"><code>7fe49c2</code></a>
KT-86268: Use 2.4.0 toolchain for abiValidation with older CVs</li>
<li><a
href="13d25e2c58"><code>13d25e2</code></a>
KT-86268: Regression test added</li>
<li><a
href="f7d1a76541"><code>f7d1a76</code></a>
[JKlib] Fix JAR deserializer configuration.</li>
<li><a
href="5cec663aff"><code>5cec663</code></a>
[JKlib] Wire up JvmBuiltInClassDescriptorFactory</li>
<li><a
href="ef146114de"><code>ef14611</code></a>
Make the default stability of non-final classes <code>Unknown</code>
instead of <code>Stable</code></li>
<li><a
href="d76473afd2"><code>d76473a</code></a>
[Gradle] Fix GeneralNativeIT.shouldAllowToOverrideDownloadUrl test
failures</li>
<li>Additional commits viewable in <a
href="https://github.com/JetBrains/kotlin/compare/v2.3.21...v2.4.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
finished SEP-1686
closes#421
## Breaking Changes
none
## Types of changes
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
Caps the size of incoming HTTP POST bodies in both server transports so
an oversized request can no longer exhaust server memory
## How Has This Been Tested?
new tests
## Breaking Changes
binary incompatible for SseServerTransport constuctors
## Types of changes
- [x] Bug fix (non-breaking change which fixes a
- [x] New feature (non-breaking change which adds functionality)
- [x] Breaking change (fix or feature that would to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP Documentation](https:
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
## Summary
Fixes `StdioClientTransport.close()` so shutdown does not hang when the
stdin read loop is blocked waiting for input.
## Root Cause / Context
`StdioClientTransport.closeResources()` stopped the transport coroutine
scope and then waited for the scope job to finish. On the JVM, a
`Source.readAtMostTo()` call backed by a blocking Java stream does not
necessarily return when the coroutine is cancelled. If the read loop
stayed blocked, `close()` could wait indefinitely.
## Changes
- Close the stdin source during stdio client shutdown before waiting for
transport coroutines to finish.
- Also close the optional stderr source during shutdown.
- Keep source-close failures non-fatal and log them at debug level.
- Add a JVM regression test with a `RawSource` that blocks in
`readAtMostTo()` until `close()` is called.
- Assert the close path completes, emits `onClose`, and does not invoke
`onError`.
## Scope / Risk
This is limited to `StdioClientTransport` shutdown behavior. It does not
change the public API or server transports. The regression coverage is
JVM-focused because the reported hang is caused by a blocking Java
stream read.
## Verification
```bash
./gradlew :integration-test:jvmTest --tests 'io.modelcontextprotocol.kotlin.sdk.client.StdioClientTransportTest'
./gradlew :kotlin-sdk-client:jvmTest
./gradlew :kotlin-sdk-client:ktlintCheck :integration-test:ktlintCheck :kotlin-sdk-client:detekt :integration-test:detekt :kotlin-sdk-client:apiCheck
```
Closes#514
Gate `completion/complete` on the server's `completions` capability
instead of `prompts`.
closes#845
## Motivation and Context
A server that declares `completions` but not `prompts` is currently
rejected for completion. Details in #845.
## How Has This Been Tested?
New `ClientAssertCapabilityTest` cases; they fail on `main` and pass
with this change. `apiCheck` / `ktlintCheck` / `detekt` pass.
## Breaking Changes
None.
## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
Co-authored-by: Pavel Gorgulov <devcrocod@gmail.com>
Default the `Origin` allowlist to localhost when
`DnsRebindingProtection` relies on the localhost host defaults, so a
request with a valid `Host` but a hostile (or `null`) `Origin` is no
longer accepted.
## How Has This Been Tested?
unit tests
## Breaking Changes
Behavioral change only
## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
Bumps
[ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from
1.5.34 to 1.5.37.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/qos-ch/logback/releases">ch.qos.logback:logback-classic's
releases</a>.</em></p>
<blockquote>
<h2>Logback 1.5.37</h2>
<p><strong>2026-06-26 Release of logback version 1.5.37</strong></p>
<p>• Given the numerous vulnerabilities related to conditional
configuration processing based on the evaluation of Java expressions
using the Janino library, support for such expressions has been removed.
Users are offered the an <a
href="https://logback.qos.ch/translator/services/conditionalConfigMigrator.html">online
migration service</a> or the <!-- raw HTML omitted --> element
introduced in version 1.5.20. See the <a
href="https://logback.qos.ch/manual/configuration.html#conditional">relevant
documentation</a> for more details.</p>
<p>• A bitwise identical binary of this version can be reproduced by
building from source code at commit
c1df7f522e648eec7b4ef6a12c8758fec0f00048 associated with the tag
v_1.5.37. Release built using Java "21" 2023-10-17 LTS build
21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
<h2>Logback 1.5.36</h2>
<p><strong>2026-06-25 Release of logback version 1.5.36</strong></p>
<p>• The 'condition' attribute in <code><if></code> elements now
reject certain references that are associated with ACE attacks. This
issue was reported by "yulate" (<a
href="mailto:yulate531@gmail.com.com">yulate531@gmail.com.com</a>) and
registered as <a
href="https://www.cve.org/cverecord?id=CVE-2026-13006">CVE-2026-13006</a>.</p>
<p>• A bitwise identical binary of this version can be reproduced by
building from source code at commit
9b94c37562bf25a6a944146701d42ee6c4eee888 associated with the tag
v_1.5.36. Release built using Java "21" 2023-10-17 LTS build
21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
<h2>Logback 1.5.35</h2>
<p><strong>026-06-23 Release of logback version 1.5.35</strong></p>
<p>• The 'condition' attribute in <code><if></code> elements now
rejects unicode escape sequences (\u and \U). This closes a bypass of
the existing prohibition on the new operator in Janino-evaluated
conditions. This issue was reported by IcySun (<a
href="mailto:icysun@qq.com">icysun@qq.com</a>) and registered as <a
href="https://www.cve.org/cverecord?id=CVE-2026-13006">CVE-2026-13006</a>.</p>
<p>• Added <code>ConfiguratorRank.AUTHENTICATING</code> (rank 100), the
highest configurator rank, for certified/authenticating configurators
discovered via the ServiceLoader mechanism.
<code>ContextInitializer</code> now requires that at most one such
configurator exist on the classpath; if more than one is found,
initialization aborts with an error.</p>
<p>• <code>ConsoleCharsetPropertyDefiner</code> is no longer shipped.
The Java 21 multi-release compilation of logback-core has been disabled,
which removes this class from the published artifact. Configurations
that referenced
<code>ch.qos.logback.core.property.ConsoleCharsetPropertyDefiner</code>
will need an alternative approach for console charset detection.</p>
<p>• The logback-examples module is now included in artifacts published
to Maven Central.</p>
<p>• <code>JoranConfigurator.makeAnotherInstance()</code> and
<code>DefaultJoranConfigurator.performMultiStepConfigurationFileSearch()</code>
are now protected, allowing derived configurators to override these
methods.</p>
<p>• A bitwise identical binary of this version can be reproduced by
building from source code at commit
08bd1598d565d83444f72983935e7da4746783b7 associated with the tag
v_1.5.35. Release built using Java "21" 2023-10-17 LTS build
21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c1df7f522e"><code>c1df7f5</code></a>
prepare release 1.5.37</li>
<li><a
href="a189967457"><code>a189967</code></a>
remove conditional based on janino</li>
<li><a
href="aaa905292d"><code>aaa9052</code></a>
start work on 1.5.37-SNAPSHOT</li>
<li><a
href="9b94c37562"><code>9b94c37</code></a>
prepare release 1.5.36</li>
<li><a
href="e6a8280ba2"><code>e6a8280</code></a>
prevent attacks using disallowed references</li>
<li><a
href="24c4b63f60"><code>24c4b63</code></a>
start work on 1.5.36-SNAPSHOT</li>
<li><a
href="08bd1598d5"><code>08bd159</code></a>
preapre release 1.5.35</li>
<li><a
href="37d256b825"><code>37d256b</code></a>
indentation changes only</li>
<li><a
href="d3d73078af"><code>d3d7307</code></a>
minor comment</li>
<li><a
href="fa0411a939"><code>fa0411a</code></a>
radomize file location</li>
<li>Additional commits viewable in <a
href="https://github.com/qos-ch/logback/compare/v_1.5.34...v_1.5.37">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the gradle-plugins group with 1 update in the / directory:
[com.vanniktech:gradle-maven-publish-plugin](https://github.com/vanniktech/gradle-maven-publish-plugin).
Updates `com.vanniktech:gradle-maven-publish-plugin` from 0.36.0 to
0.37.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vanniktech/gradle-maven-publish-plugin/releases">com.vanniktech:gradle-maven-publish-plugin's
releases</a>.</em></p>
<blockquote>
<h2>0.37.0</h2>
<ul>
<li>When publishing to Maven Central, redundant checksum files are now
excluded by default: checksums of <code>.asc</code>
signature files (<a
href="https://redirect.github.com/gradle/gradle/issues/20232">gradle/gradle#20232</a>)
and the <code>sha256</code>/<code>sha512</code>
checksums, which are never read by Gradle or Maven Central. The
published checksums can be configured through
<code>checksums(...)</code> in the DSL or the
<code>mavenCentralChecksums</code> Gradle property (default
<code>md5,sha1</code>). Signature checksum
exclusion can be controlled through
<code>excludeSignatureChecksums()</code> or the
<code>mavenCentralExcludeSignatureChecksums</code>
Gradle property.</li>
<li>Maven Central deployment id is being logged after upload.</li>
</ul>
<h4>Minimum supported versions</h4>
<ul>
<li>JDK 17</li>
<li>Gradle 9.0.0</li>
<li>Android Gradle Plugin 8.13.0</li>
<li>Kotlin Gradle Plugin 2.2.0</li>
</ul>
<h4>Compatibility tested up to</h4>
<ul>
<li>JDK 26</li>
<li>Gradle 9.6.0</li>
<li>Gradle 9.7.0-milestone-1</li>
<li>Android Gradle Plugin 9.2.1</li>
<li>Android Gradle Plugin 9.3.0-rc01</li>
<li>Android Gradle Plugin 9.4.0-alpha01</li>
<li>Kotlin Gradle Plugin 2.4.0</li>
</ul>
<h2>0.37.0-rc1</h2>
<ul>
<li>When publishing to Maven Central, redundant checksum files are now
excluded by default: checksums of <code>.asc</code>
signature files (<a
href="https://redirect.github.com/gradle/gradle/issues/20232">gradle/gradle#20232</a>)
and the <code>sha256</code>/<code>sha512</code>
checksums, which are never read by Gradle or Maven Central. The
published checksums can be configured through
<code>checksums(...)</code> in the DSL or the
<code>mavenCentralChecksums</code> Gradle property (default
<code>md5,sha1</code>). Signature checksum
exclusion can be controlled through
<code>excludeSignatureChecksums()</code> or the
<code>mavenCentralExcludeSignatureChecksums</code>
Gradle property.</li>
<li>Maven Central deployment id is being logged after upload.</li>
</ul>
<h4>Minimum supported versions</h4>
<ul>
<li>JDK 17</li>
<li>Gradle 9.0.0</li>
<li>Android Gradle Plugin 8.13.0</li>
<li>Kotlin Gradle Plugin 2.2.0</li>
</ul>
<h4>Compatibility tested up to</h4>
<ul>
<li>JDK 26</li>
<li>Gradle 9.6.0</li>
<li>Gradle 9.7.0-milestone-1</li>
<li>Android Gradle Plugin 9.2.1</li>
<li>Android Gradle Plugin 9.3.0-rc01</li>
<li>Android Gradle Plugin 9.4.0-alpha01</li>
<li>Kotlin Gradle Plugin 2.4.0</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vanniktech/gradle-maven-publish-plugin/blob/main/CHANGELOG.md">com.vanniktech:gradle-maven-publish-plugin's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/vanniktech/gradle-maven-publish-plugin/releases/tag/0.37.0">0.37.0</a>
<em>(2026-06-21)</em></h2>
<ul>
<li>When publishing to Maven Central, redundant checksum files are now
excluded by default: checksums of <code>.asc</code>
signature files (<a
href="https://redirect.github.com/gradle/gradle/issues/20232">gradle/gradle#20232</a>)
and the <code>sha256</code>/<code>sha512</code>
checksums, which are never read by Gradle or Maven Central. The
published checksums can be configured through
<code>checksums(...)</code> in the DSL or the
<code>mavenCentralChecksums</code> Gradle property (default
<code>md5,sha1</code>). Signature checksum
exclusion can be controlled through
<code>excludeSignatureChecksums()</code> or the
<code>mavenCentralExcludeSignatureChecksums</code>
Gradle property.</li>
<li>Maven Central deployment id is being logged after upload.</li>
</ul>
<h4>Minimum supported versions</h4>
<ul>
<li>JDK 17</li>
<li>Gradle 9.0.0</li>
<li>Android Gradle Plugin 8.13.0</li>
<li>Kotlin Gradle Plugin 2.2.0</li>
</ul>
<h4>Compatibility tested up to</h4>
<ul>
<li>JDK 26</li>
<li>Gradle 9.6.0</li>
<li>Gradle 9.7.0-milestone-1</li>
<li>Android Gradle Plugin 9.2.1</li>
<li>Android Gradle Plugin 9.3.0-rc01</li>
<li>Android Gradle Plugin 9.4.0-alpha01</li>
<li>Kotlin Gradle Plugin 2.4.0</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="7017e3d3d1"><code>7017e3d</code></a>
enable feature preview (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1381">#1381</a>)</li>
<li><a
href="05f6b6ece1"><code>05f6b6e</code></a>
use 0.37.0-rc1 (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1380">#1380</a>)</li>
<li><a
href="0167c9cc7b"><code>0167c9c</code></a>
Changelog for 0.37.0 (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1379">#1379</a>)</li>
<li><a
href="b652eb3302"><code>b652eb3</code></a>
Update dependency java to v26 (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1353">#1353</a>)</li>
<li><a
href="a9f70b326d"><code>a9f70b3</code></a>
Update dependency com.freeletics.gradle:scripts-formatting-jvm to
v0.37.0 (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1">#1</a>...</li>
<li><a
href="541cf8fd79"><code>541cf8f</code></a>
Log deployment id and publishing type after Central Portal upload (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1354">#1354</a>)</li>
<li><a
href="d4873e5589"><code>d4873e5</code></a>
Update slf4j monorepo to v2 (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1365">#1365</a>)</li>
<li><a
href="42baf9d49f"><code>42baf9d</code></a>
Update android.gradle (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1335">#1335</a>)</li>
<li><a
href="2de1978ae4"><code>2de1978</code></a>
Update Gradle (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1362">#1362</a>)</li>
<li><a
href="6f03e46264"><code>6f03e46</code></a>
Update kotlin monorepo to v2.4.0 (<a
href="https://redirect.github.com/vanniktech/gradle-maven-publish-plugin/issues/1352">#1352</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/vanniktech/gradle-maven-publish-plugin/compare/0.36.0...0.37.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [hono](https://github.com/honojs/hono) from 4.12.23 to 4.12.27.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/honojs/hono/releases">hono's
releases</a>.</em></p>
<blockquote>
<h2>v4.12.27</h2>
<h2>Security fixes</h2>
<p>This release includes fixes for the following security issues:</p>
<h3>hono/jsx does not isolate context per request</h3>
<p>Affects: <code>hono/jsx</code>, <code>hono/jsx-renderer</code>.
During SSR, context was stored process-wide instead of per request, so
<code>useContext()</code>/<code>useRequestContext()</code> read after an
<code>await</code> in an async component could return another concurrent
request's value — leading to cross-request data disclosure or
authorization checks against the wrong request. GHSA-hvrm-45r6-mjfj</p>
<h3>Server-Side XSS via JSX escaping bypass in cx()</h3>
<p>Affects: <code>hono/css</code>. <code>cx()</code> marked its composed
class name as already-escaped without escaping the input, so untrusted
input passed as a class name could break out of the JSX
<code>class</code> attribute during SSR and inject markup (XSS).
GHSA-w62v-xxxg-mg59</p>
<h3>API Gateway v1 adapter can drop a repeated request header value</h3>
<p>Affects: <code>hono/aws-lambda</code>. The API Gateway v1 (and VPC
Lattice) adapter de-duplicated repeated header values by substring
instead of exact match, dropping a value that is a substring of another
(e.g. <code>203.0.113.1</code> dropped when <code>203.0.113.10</code> is
present) — affecting logic such as <code>X-Forwarded-For</code>-based IP
restriction. GHSA-xgm2-5f3f-mvvc</p>
<hr />
<p>Users of <code>hono/jsx</code>/<code>hono/jsx-renderer</code>,
<code>hono/css</code> (<code>cx()</code>), or the
<code>hono/aws-lambda</code> API Gateway v1 / VPC Lattice adapters are
encouraged to upgrade.</p>
<h2>v4.12.26</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(lambda-edge): satisfy Deno lib types for Content-Length body
encoding by <a
href="https://github.com/yusukebe"><code>@yusukebe</code></a> in <a
href="https://redirect.github.com/honojs/hono/pull/5013">honojs/hono#5013</a></li>
<li>ci: publish to npm from CI with OIDC trusted publishing by <a
href="https://github.com/yusukebe"><code>@yusukebe</code></a> in <a
href="https://redirect.github.com/honojs/hono/pull/5028">honojs/hono#5028</a></li>
<li>chore: remove unused devcontainer and gitpod configs by <a
href="https://github.com/yusukebe"><code>@yusukebe</code></a> in <a
href="https://redirect.github.com/honojs/hono/pull/5029">honojs/hono#5029</a></li>
<li>chore: replace arg and glob with Bun native APIs in build script by
<a href="https://github.com/yusukebe"><code>@yusukebe</code></a> in <a
href="https://redirect.github.com/honojs/hono/pull/5030">honojs/hono#5030</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/honojs/hono/compare/v4.12.25...v4.12.26">https://github.com/honojs/hono/compare/v4.12.25...v4.12.26</a></p>
<h2>v4.12.25</h2>
<h2>Security fixes</h2>
<p>This release includes fixes for the following security issues:</p>
<h3>CORS Middleware reflects any Origin with credentials when
<code>origin</code> defaults to the wildcard</h3>
<p>Affects: <code>hono/cors</code>. Fixes the wildcard origin reflecting
the request <code>Origin</code> and sending
<code>Access-Control-Allow-Credentials: true</code> when
<code>credentials: true</code> is set without an explicit
<code>origin</code>, where any site a logged-in user visited could make
credentialed cross-origin requests and read responses from
cookie-authenticated endpoints. GHSA-88fw-hqm2-52qc</p>
<h3>Body Limit Middleware can be bypassed on AWS Lambda by understating
<code>Content-Length</code></h3>
<p>Affects: <code>hono/body-limit</code> on AWS Lambda
(<code>hono/aws-lambda</code>, <code>hono/lambda-edge</code>). Fixes the
request being built with the client-declared <code>Content-Length</code>
while the body is delivered fully buffered, where a client could declare
a small <code>Content-Length</code> with a much larger body and slip
past the configured size limit. GHSA-rv63-4mwf-qqc2</p>
<h3>Path traversal in <code>serve-static</code> on Windows via encoded
backslash (<code>%5C</code>)</h3>
<p>Affects: <code>serveStatic</code> on Windows (Node, Bun, Deno
adapters). Fixes the path guard allowing a lone backslash, where an
encoded backslash (<code>%5C</code>) decoded to <code>\</code> was
treated as a separator by the Windows path resolver, letting a single
URL segment escape into a middleware-guarded subtree.
GHSA-wwfh-h76j-fc44</p>
<h3>AWS Lambda adapter merges multiple <code>Set-Cookie</code> headers
into one value, dropping cookies on ALB single-header and Lattice</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="97c6fe1f12"><code>97c6fe1</code></a>
4.12.27</li>
<li><a
href="aa921770d0"><code>aa92177</code></a>
Merge commit from fork</li>
<li><a
href="cd3f6f7194"><code>cd3f6f7</code></a>
Merge commit from fork</li>
<li><a
href="d4853a8f27"><code>d4853a8</code></a>
fix(jsx): make merged context-isolation tests pass tsc type check (<a
href="https://redirect.github.com/honojs/hono/issues/5037">#5037</a>)</li>
<li><a
href="6735fea78d"><code>6735fea</code></a>
fix(jsx): cast awaitedFallback through unknown to fix Deno type check
(<a
href="https://redirect.github.com/honojs/hono/issues/5036">#5036</a>)</li>
<li><a
href="fab3b13639"><code>fab3b13</code></a>
Merge commit from fork</li>
<li><a
href="9f0dadf141"><code>9f0dadf</code></a>
ci: use npm Staged publishing (<a
href="https://redirect.github.com/honojs/hono/issues/5035">#5035</a>)</li>
<li><a
href="27b7992f82"><code>27b7992</code></a>
4.12.26</li>
<li><a
href="d29982cc40"><code>d29982c</code></a>
chore: replace arg and glob with Bun native APIs in build script</li>
<li><a
href="16215d5f50"><code>16215d5</code></a>
chore: remove unused devcontainer and gitpod configs (<a
href="https://redirect.github.com/honojs/hono/issues/5029">#5029</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/honojs/hono/compare/v4.12.23...v4.12.27">compare
view</a></li>
</ul>
</details>
<details>
<summary>Maintainer changes</summary>
<p>This version was pushed to npm by <a
href="https://www.npmjs.com/~GitHub%20Actions">GitHub Actions</a>, a new
releaser for hono since your current version.</p>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
closes#410
## How Has This Been Tested?
integration and unit tests
## Breaking Changes
none
## Types of changes
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
Bound the size of a single inline SSE event parsed from a POST response
in `StreamableHttpClientTransport`, so a non-conforming or unbounded
server response cannot grow the client's buffer without limit.
## How Has This Been Tested?
New unit tests
## Breaking Changes
none
## Types of changes
- [x] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to change)
- [ ] Documentation update
## Checklist
- [x] I have read the [MCP
Documentation](https://modelcontextprotocol.io)
- [x] My code follows the repository's style guidelines
- [x] New and existing tests pass locally
- [x] I have added appropriate error handling
- [x] I have added or updated documentation as needed
## Summary
- reject empty sampling content in SamplingMessage and
CreateMessageResult constructors
- clarify sampling validation docs and emit an explicit error when
tool_use is not followed by tool_result
- return sampled text from the conformance test_sampling tool instead of
content object strings
Fixes#730
## Testing
- ./gradlew
-Dorg.gradle.java.installations.paths="/Users/ubl/Documents/New
project/oss-contributions/.jdks/jdk-21.0.11+10/Contents/Home"
:kotlin-sdk-core:jvmTest :kotlin-sdk-server:jvmTest
:conformance-test:compileKotlin
Co-authored-by: Pavel Gorgulov <devcrocod@gmail.com>
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.28.0 to 0.28.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.28.1</h2>
<ul>
<li>
<p>Disallow <code>\</code> in local development server HTTP requests (<a
href="https://github.com/evanw/esbuild/security/advisories/GHSA-g7r4-m6w7-qqqr">GHSA-g7r4-m6w7-qqqr</a>)</p>
<p>This release fixes a security issue where HTTP requests to esbuild's
local development server could traverse outside of the serve directory
on Windows using a <code>\</code> backslash character. It happened due
to the use of Go's <code>path.Clean()</code> function, which only
handles Unix-style <code>/</code> characters. HTTP requests with paths
containing <code>\</code> are no longer allowed.</p>
<p>Thanks to <a
href="https://github.com/dellalibera"><code>@dellalibera</code></a> for
reporting this issue.</p>
</li>
<li>
<p>Add integrity checks to the Deno API (<a
href="https://github.com/evanw/esbuild/security/advisories/GHSA-gv7w-rqvm-qjhr">GHSA-gv7w-rqvm-qjhr</a>)</p>
<p>The previous release of esbuild added integrity checks to esbuild's
npm install script. This release also adds integrity checks to esbuild's
Deno install script. Now esbuild's Deno API will also fail with an error
if the downloaded esbuild binary contains something other than the
expected content.</p>
<p>Note that esbuild's Deno API installs from
<code>registry.npmjs.org</code> by default, but allows the
<code>NPM_CONFIG_REGISTRY</code> environment variable to override this
with a custom package registry. This change means that the esbuild
executable served by <code>NPM_CONFIG_REGISTRY</code> must now match the
expected content.</p>
<p>Thanks to <a
href="https://github.com/sondt99"><code>@sondt99</code></a> for
reporting this issue.</p>
</li>
<li>
<p>Avoid inlining <code>using</code> and <code>await using</code>
declarations (<a
href="https://redirect.github.com/evanw/esbuild/issues/4482">#4482</a>)</p>
<p>Previously esbuild's minifier sometimes incorrectly inlined
<code>using</code> and <code>await using</code> declarations into
subsequent uses of that declaration, which then fails to dispose of the
resource correctly. This bug happened because inlining was done for
<code>let</code> and <code>const</code> declarations by avoiding doing
it for <code>var</code> declarations, which no longer worked when more
declaration types were added. Here's an example:</p>
<pre lang="js"><code>// Original code
{
using x = new Resource()
x.activate()
}
<p>// Old output (with --minify)<br />
new Resource().activate();</p>
<p>// New output (with --minify)<br />
{using e=new Resource;e.activate()}<br />
</code></pre></p>
</li>
<li>
<p>Fix module evaluation when an error is thrown (<a
href="https://redirect.github.com/evanw/esbuild/issues/4461">#4461</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4467">#4467</a>)</p>
<p>If an error is thrown during module evaluation, esbuild previously
didn't preserve the state of the module for subsequent module
references. This was observable if <code>import()</code> or
<code>require()</code> is used to import a module multiple times. The
thrown error is supposed to be thrown by every call to
<code>import()</code> or <code>require()</code>, not just the first.
With this release, esbuild will now throw the same error every time you
call <code>import()</code> or <code>require()</code> on a module that
throws during its evaluation.</p>
</li>
<li>
<p>Fix some edge cases around the <code>new</code> operator (<a
href="https://redirect.github.com/evanw/esbuild/issues/4477">#4477</a>)</p>
<p>Previously esbuild incorrectly printed certain edge cases involving
complex expressions inside the target of a <code>new</code> expression
(specifically an optional chain and/or a tagged template literal). The
generated code for the <code>new</code> target was not correctly wrapped
with parentheses, and either contained a syntax error or had different
semantics. These edge cases have been fixed so that they now correctly
wrap the <code>new</code> target in parentheses. Here is an example of
some affected code:</p>
<pre lang="js"><code>// Original code
new (foo()`bar`)()
new (foo()?.bar)()
<p>// Old output<br />
new foo()<code>bar</code>();<br />
new (foo())?.bar();</p>
<p></code></pre></p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h2>0.28.1</h2>
<ul>
<li>
<p>Disallow <code>\</code> in local development server HTTP requests (<a
href="https://github.com/evanw/esbuild/security/advisories/GHSA-g7r4-m6w7-qqqr">GHSA-g7r4-m6w7-qqqr</a>)</p>
<p>This release fixes a security issue where HTTP requests to esbuild's
local development server could traverse outside of the serve directory
on Windows using a <code>\</code> backslash character. It happened due
to the use of Go's <code>path.Clean()</code> function, which only
handles Unix-style <code>/</code> characters. HTTP requests with paths
containing <code>\</code> are no longer allowed.</p>
<p>Thanks to <a
href="https://github.com/dellalibera"><code>@dellalibera</code></a> for
reporting this issue.</p>
</li>
<li>
<p>Add integrity checks to the Deno API (<a
href="https://github.com/evanw/esbuild/security/advisories/GHSA-gv7w-rqvm-qjhr">GHSA-gv7w-rqvm-qjhr</a>)</p>
<p>The previous release of esbuild added integrity checks to esbuild's
npm install script. This release also adds integrity checks to esbuild's
Deno install script. Now esbuild's Deno API will also fail with an error
if the downloaded esbuild binary contains something other than the
expected content.</p>
<p>Note that esbuild's Deno API installs from
<code>registry.npmjs.org</code> by default, but allows the
<code>NPM_CONFIG_REGISTRY</code> environment variable to override this
with a custom package registry. This change means that the esbuild
executable served by <code>NPM_CONFIG_REGISTRY</code> must now match the
expected content.</p>
<p>Thanks to <a
href="https://github.com/sondt99"><code>@sondt99</code></a> for
reporting this issue.</p>
</li>
<li>
<p>Avoid inlining <code>using</code> and <code>await using</code>
declarations (<a
href="https://redirect.github.com/evanw/esbuild/issues/4482">#4482</a>)</p>
<p>Previously esbuild's minifier sometimes incorrectly inlined
<code>using</code> and <code>await using</code> declarations into
subsequent uses of that declaration, which then fails to dispose of the
resource correctly. This bug happened because inlining was done for
<code>let</code> and <code>const</code> declarations by avoiding doing
it for <code>var</code> declarations, which no longer worked when more
declaration types were added. Here's an example:</p>
<pre lang="js"><code>// Original code
{
using x = new Resource()
x.activate()
}
<p>// Old output (with --minify)<br />
new Resource().activate();</p>
<p>// New output (with --minify)<br />
{using e=new Resource;e.activate()}<br />
</code></pre></p>
</li>
<li>
<p>Fix module evaluation when an error is thrown (<a
href="https://redirect.github.com/evanw/esbuild/issues/4461">#4461</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4467">#4467</a>)</p>
<p>If an error is thrown during module evaluation, esbuild previously
didn't preserve the state of the module for subsequent module
references. This was observable if <code>import()</code> or
<code>require()</code> is used to import a module multiple times. The
thrown error is supposed to be thrown by every call to
<code>import()</code> or <code>require()</code>, not just the first.
With this release, esbuild will now throw the same error every time you
call <code>import()</code> or <code>require()</code> on a module that
throws during its evaluation.</p>
</li>
<li>
<p>Fix some edge cases around the <code>new</code> operator (<a
href="https://redirect.github.com/evanw/esbuild/issues/4477">#4477</a>)</p>
<p>Previously esbuild incorrectly printed certain edge cases involving
complex expressions inside the target of a <code>new</code> expression
(specifically an optional chain and/or a tagged template literal). The
generated code for the <code>new</code> target was not correctly wrapped
with parentheses, and either contained a syntax error or had different
semantics. These edge cases have been fixed so that they now correctly
wrap the <code>new</code> target in parentheses. Here is an example of
some affected code:</p>
<pre lang="js"><code>// Original code
new (foo()`bar`)()
new (foo()?.bar)()
<p>// Old output<br />
new foo()<code>bar</code>();<br />
new (foo())?.bar();<br />
</code></pre></p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="bb9db84c02"><code>bb9db84</code></a>
publish 0.28.1 to npm</li>
<li><a
href="9ff053e53b"><code>9ff053e</code></a>
security: add integrity checks to the Deno API</li>
<li><a
href="0a9bf2135b"><code>0a9bf21</code></a>
enforce non-negative size in gzip parser</li>
<li><a
href="e2a1a71320"><code>e2a1a71</code></a>
security: forbid <code>\\</code> in local dev server requests</li>
<li><a
href="83a2cbfc35"><code>83a2cbf</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4482">#4482</a>:
don't inline <code>using</code> declarations</li>
<li><a
href="308ad745d8"><code>308ad74</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4471">#4471</a>:
renaming of nested <code>var</code> declarations</li>
<li><a
href="f013f5f99a"><code>f013f5f</code></a>
fix some typos</li>
<li><a
href="aafd6e48b1"><code>aafd6e4</code></a>
chore: fix some minor issues in comments (<a
href="https://redirect.github.com/evanw/esbuild/issues/4462">#4462</a>)</li>
<li><a
href="15300c30b5"><code>15300c3</code></a>
follow up: cjs evaluation fixes</li>
<li><a
href="1bda0c31d7"><code>1bda0c3</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4461">#4461</a>,
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4467">#4467</a>:
esm evaluation fixes</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.28.0...v0.28.1">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `mcp-kotlin` from 0.12.0 to 0.13.0.
Updates `io.modelcontextprotocol:kotlin-sdk-client` from 0.12.0 to
0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-server` from 0.12.0 to
0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-server's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `mcp-kotlin` from 0.12.0 to 0.13.0.
Updates `io.modelcontextprotocol:kotlin-sdk-client` from 0.12.0 to
0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-server` from 0.12.0 to
0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-server's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `mcp-kotlin` from 0.12.0 to 0.13.0.
Updates `io.modelcontextprotocol:kotlin-sdk-client` from 0.12.0 to
0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-server` from 0.12.0 to
0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-server's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps
[io.modelcontextprotocol:kotlin-sdk-client](https://github.com/modelcontextprotocol/kotlin-sdk)
from 0.12.0 to 0.13.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `mcp-kotlin` from 0.12.0 to 0.13.0.
Updates `io.modelcontextprotocol:kotlin-sdk-server` from 0.12.0 to
0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-server's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-client` from 0.12.0 to
0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-client's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.modelcontextprotocol:kotlin-sdk-testing` from 0.12.0 to
0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/releases">io.modelcontextprotocol:kotlin-sdk-testing's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Description</h2>
<p>Adds a <code>tasks</code> capability and a typed
<code>elicitation</code> capability, hardens transport lifecycle,
dispatchers, and back-pressure, and enables DNS rebinding protection by
default.</p>
<h3>Breaking Changes</h3>
<p><strong>Typed <code>elicitation</code> capability and new
<code>tasks</code> capability</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></p>
<p><code>ClientCapabilities.elicitation</code> is now a typed
<code>ClientCapabilities.Elicitation</code> (<code>form</code>,
<code>url</code>) instead of a raw <code>JsonObject?</code>, and both
<code>ClientCapabilities</code> and <code>ServerCapabilities</code>
gained a typed <code>tasks</code> capability. The constructors of both
types changed and are binary-incompatible; recompilation is
required.</p>
<p><strong>Transport handlers now run on
<code>Dispatchers.Default</code></strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></p>
<p>Handlers moved from <code>Dispatchers.IO</code> to
<code>Dispatchers.Default</code> (override via
<code>handlerDispatcher</code>), <code>send()</code> now suspends under
back-pressure instead of buffering unbounded, and the two-argument
<code>StdioServerTransport(input, output)</code> constructor is
deprecated in favor of the builder-lambda form. Also fixes a
<code>start()</code>/<code>close()</code> race, consistent
<code>CancellationException</code> propagation, and an
input-<code>Source</code> leak (closes <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/573">#573</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/574">#574</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/708">#708</a>).</p>
<p><strong>DNS rebinding protection enabled by default</strong> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></p>
<p><code>enableDnsRebindingProtection</code> now defaults to
<code>true</code> on
<code>mcpStreamableHttp</code>/<code>mcpStatelessStreamableHttp</code>,
and the <code>Route.mcp()</code> / <code>Application.mcp()</code>
overloads gained <code>enableDnsRebindingProtection</code>,
<code>allowedHosts</code>, and <code>allowedOrigins</code> parameters
(binary-incompatible on JVM). Only <code>localhost</code>,
<code>127.0.0.1</code>, and <code>[::1]</code> are allowed by default;
opt out with <code>enableDnsRebindingProtection = false</code>. The
<code>Configuration.enableDnsRebindingProtection</code>,
<code>.allowedHosts</code>, and <code>.allowedOrigins</code> properties
are deprecated in favor of the new <code>DnsRebindingProtection</code>
plugin.</p>
<h3>Features</h3>
<ul>
<li>Add a <code>tasks</code> capability (<code>list</code>,
<code>cancel</code>, and per-request augmentation for sampling and
elicitation) on <code>ClientCapabilities</code> and
<code>ServerCapabilities</code>, with assertions for
<code>tasks/*</code> and <code>notifications/tasks/status</code>
enforced by <code>Client</code> and <code>ServerSession</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/732">#732</a></li>
<li>Configurable <code>handlerDispatcher</code> and
<code>ioDispatcher</code>, plus an optional caller-supplied
<code>CoroutineScope</code>, on transports by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/778">#778</a></li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Fire <code>onClose</code> callbacks on
<code>SseClientTransport</code> when the SSE session ends — whether
closed gracefully or terminated by an error — matching the other client
transports by <a
href="https://github.com/jskjw157"><code>@jskjw157</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/738">#738</a></li>
</ul>
<h3>Security</h3>
<ul>
<li>Enable DNS rebinding protection by default across all HTTP
transports, including the SSE endpoints that previously had none (see
Breaking Changes for migration) by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/659">#659</a></li>
<li>Cap a single stdio JSON-RPC frame at 16 MiB, throwing the new
<code>TooLongFrameException</code> instead of buffering unbounded when a
peer never sends a newline terminator by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="6e6f80512f">6e6f805</a></li>
</ul>
<h3>Maintenance</h3>
<ul>
<li>Remove the test-only <code>dev.mokksy:mokksy</code> dependency in
favor of <code>MockEngine</code> and <code>embeddedServer</code> by <a
href="https://github.com/devcrocod"><code>@devcrocod</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/754">#754</a></li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>Ktor to v3.4.3 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/785">#785</a></li>
<li>kotlinx.coroutines to v1.11.0 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/760">#760</a></li>
<li>kotlin-logging to v8.0.03 in <a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/752">#752</a>,
<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/pull/783">#783</a></li>
<li>24 further Dependabot updates across sample projects, TypeScript
conformance-test fixtures, and build/test tooling (JUnit, slf4j-simple,
Gradle wrapper, anthropic-java)</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="b7eeeb1205"><code>b7eeeb1</code></a>
release: 0.13.0 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/796">#796</a>)</li>
<li><a
href="6e6f80512f"><code>6e6f805</code></a>
Merge commit from fork</li>
<li><a
href="0eb1822853"><code>0eb1822</code></a>
Update Ktor to version 3.4.3 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/785">#785</a>)</li>
<li><a
href="0adfb3bcdb"><code>0adfb3b</code></a>
fix!: harden lifecycle, dispatchers, back-pressure (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/778">#778</a>)</li>
<li><a
href="37ee423308"><code>37ee423</code></a>
chore(deps): bump the infrastructure group with 2 updates (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/783">#783</a>)</li>
<li><a
href="ff4b6232ba"><code>ff4b623</code></a>
chore(deps): bump the other-dependencies group across 3 directories with
3 up...</li>
<li><a
href="78066a9cf6"><code>78066a9</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li><a
href="1ff5f003b6"><code>1ff5f00</code></a>
chore(deps): bump qs from 6.14.2 to 6.15.2 in
/integration-test/src/jvmTest/t...</li>
<li><a
href="6d5bac1e67"><code>6d5bac1</code></a>
chore(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 (<a
href="https://redirect.github.com/modelcontextprotocol/kotlin-sdk/issues/776">#776</a>)</li>
<li><a
href="c8545606bb"><code>c854560</code></a>
chore(deps): bump the all-dependencies group across 1 directory with 2
update...</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/kotlin-sdk/compare/0.12.0...0.13.0">compare
view</a></li>
</ul>
</details>
<br />
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [hono](https://github.com/honojs/hono) from 4.12.18 to 4.12.23.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/honojs/hono/releases">hono's
releases</a>.</em></p>
<blockquote>
<h2>v4.12.23</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(serve-static): normalize all backslashes in file paths, not just
the first in <a
href="https://redirect.github.com/honojs/hono/pull/4962">honojs/hono#4962</a></li>
<li>feat(context): export the Context class publicly by <a
href="https://github.com/BlankParticle"><code>@BlankParticle</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4543">honojs/hono#4543</a></li>
<li>docs(contribution): add AI Usage Policy by <a
href="https://github.com/yusukebe"><code>@yusukebe</code></a> in <a
href="https://redirect.github.com/honojs/hono/pull/4970">honojs/hono#4970</a></li>
<li>feat(compress): add contentTypeFilter option and
<code>COMPRESSIBLE_CONTENT_TYPE_REGEX</code> re-export by <a
href="https://github.com/na-trium-144"><code>@na-trium-144</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4961">honojs/hono#4961</a></li>
<li>fix(utils/ipaddr): do not compress a single 0 group to
<code>::</code> by <a
href="https://github.com/yusukebe"><code>@yusukebe</code></a> in <a
href="https://redirect.github.com/honojs/hono/pull/4971">honojs/hono#4971</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/honojs/hono/compare/v4.12.22...v4.12.23">https://github.com/honojs/hono/compare/v4.12.22...v4.12.23</a></p>
<h2>v4.12.22</h2>
<h2>What's Changed</h2>
<ul>
<li>chore: update vitest to v4 and cleanups by <a
href="https://github.com/BlankParticle"><code>@BlankParticle</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4952">honojs/hono#4952</a></li>
<li>fix(mime): specify charset parameter per MIME type instead of
mechanical detection by <a
href="https://github.com/renatograsso10"><code>@renatograsso10</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4912">honojs/hono#4912</a></li>
<li>fix(compress): respect Accept-Encoding when encoding option is set
by <a href="https://github.com/LeSingh1"><code>@LeSingh1</code></a> in
<a
href="https://redirect.github.com/honojs/hono/pull/4951">honojs/hono#4951</a></li>
<li>fix(deno): echo negotiated WebSocket subprotocol in upgrade response
by <a href="https://github.com/ATOM00blue"><code>@ATOM00blue</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4955">honojs/hono#4955</a></li>
<li>feat: add msgpack as a compressible content type by <a
href="https://github.com/na-trium-144"><code>@na-trium-144</code></a>
in <a
href="https://redirect.github.com/honojs/hono/pull/4957">honojs/hono#4957</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/renatograsso10"><code>@renatograsso10</code></a>
made their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/4912">honojs/hono#4912</a></li>
<li><a href="https://github.com/LeSingh1"><code>@LeSingh1</code></a>
made their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/4951">honojs/hono#4951</a></li>
<li><a
href="https://github.com/ATOM00blue"><code>@ATOM00blue</code></a> made
their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/4955">honojs/hono#4955</a></li>
<li><a
href="https://github.com/na-trium-144"><code>@na-trium-144</code></a>
made their first contribution in <a
href="https://redirect.github.com/honojs/hono/pull/4957">honojs/hono#4957</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/honojs/hono/compare/v4.12.21...v4.12.22">https://github.com/honojs/hono/compare/v4.12.21...v4.12.22</a></p>
<h2>v4.12.21</h2>
<h2>Security fixes</h2>
<p>This release includes fixes for the following security issues:</p>
<h3>app.mount() strips mount prefix using undecoded path, causing
incorrect routing for percent-encoded paths</h3>
<p>Affects: <code>app.mount()</code>. Fixes prefix stripping using the
raw URL pathname instead of the decoded path, where percent-encoded
characters in the mount prefix or path could cause the prefix to be
removed at the wrong position, resulting in the sub-application
receiving an incorrect path. GHSA-2gcr-mfcq-wcc3</p>
<h3>IP Restriction bypasses static deny rules for non-canonical
IPv6</h3>
<p>Affects: <code>hono/ip-restriction</code>. Fixes IP address
comparison using string equality, where non-canonical IPv6
representations of a denied address — such as compressed forms or
hex-notation IPv4-mapped addresses — could bypass static deny rules.
GHSA-xrhx-7g5j-rcj5</p>
<h3>Cookie helper does not sanitize sameSite and priority, allowing
Set-Cookie injection</h3>
<p>Affects: <code>hono/cookie</code>. Fixes missing validation of
<code>sameSite</code> and <code>priority</code> options against
injection characters (<code>;</code>, <code>\r</code>, <code>\n</code>),
where user-controlled input passed to either option could inject
additional attributes into the Set-Cookie response header.
GHSA-3hrh-pfw6-9m5x</p>
<h3>JWT middleware accepts any Authorization scheme, not only
Bearer</h3>
<p>Affects: <code>hono/jwt</code>, <code>hono/jwk</code>. Fixes missing
scheme validation in the Authorization header, where any two-part header
value was accepted regardless of the scheme name, allowing non-Bearer
schemes to pass JWT authentication. GHSA-f577-qrjj-4474</p>
<hr />
<p>Users who use <code>app.mount()</code>,
<code>hono/ip-restriction</code>, <code>hono/cookie</code>, or
<code>hono/jwt</code>/<code>hono/jwk</code> are encouraged to upgrade to
this version.</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="83bfb3bb4a"><code>83bfb3b</code></a>
4.12.23</li>
<li><a
href="bcd290a64c"><code>bcd290a</code></a>
fix(utils/ipaddr): do not compress a single 0 group to <code>::</code>
(<a
href="https://redirect.github.com/honojs/hono/issues/4971">#4971</a>)</li>
<li><a
href="c968177d9c"><code>c968177</code></a>
feat(compress): add contentTypeFilter option and
`COMPRESSIBLE_CONTENT_TYPE_R...</li>
<li><a
href="0265a5453a"><code>0265a54</code></a>
docs(contribution): add AI Usage Policy (<a
href="https://redirect.github.com/honojs/hono/issues/4970">#4970</a>)</li>
<li><a
href="c84c5d2d46"><code>c84c5d2</code></a>
feat(context): export the Context class publicly (<a
href="https://redirect.github.com/honojs/hono/issues/4543">#4543</a>)</li>
<li><a
href="82dad6297c"><code>82dad62</code></a>
fix(serve-static): normalize all backslashes in file paths, not just the
firs...</li>
<li><a
href="2f01b774b1"><code>2f01b77</code></a>
4.12.22</li>
<li><a
href="6bc0dff277"><code>6bc0dff</code></a>
feat: add msgpack as a compressible content type (<a
href="https://redirect.github.com/honojs/hono/issues/4957">#4957</a>)</li>
<li><a
href="7e0555d14c"><code>7e0555d</code></a>
fix(deno): echo negotiated WebSocket subprotocol in upgrade response (<a
href="https://redirect.github.com/honojs/hono/issues/4955">#4955</a>)</li>
<li><a
href="f0ed246591"><code>f0ed246</code></a>
fix(compress): respect Accept-Encoding when encoding option is set (<a
href="https://redirect.github.com/honojs/hono/issues/4951">#4951</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/honojs/hono/compare/v4.12.18...v4.12.23">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/modelcontextprotocol/kotlin-sdk/network/alerts).
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps
[ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from
1.5.32 to 1.5.34.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/qos-ch/logback/releases">ch.qos.logback:logback-classic's
releases</a>.</em></p>
<blockquote>
<h2>Logback 1.5.34</h2>
<p><strong>2026-06-01 Release of logback version 1.5.34</strong></p>
<p>• In case certain StackTraceElement values returned by the
Throwable.getStackTrace method are null, StackTraceElementProxy
substitutes a dummy instance instead of throwing an
IllegalArgumentException. This resolves [issues <a
href="https://redirect.github.com/qos-ch/logback/issues/1040">#1040</a>](<a
href="https://redirect.github.com/qos-ch/logback/issues/1040">qos-ch/logback#1040</a>),
reported by Naotsugu Kobayashi.</p>
<p>• HardenedObjectInputStream will now throw an InvalidClassException
during deserialization attempts of Proxy classes. This change addresses
potential deserialization whitelist bypass vulnerability reported by <a
href="https://github.com/york-shen">York Shen</a> and registered as <a
href="https://www.cve.org/cverecord?id=CVE-2026-10532">CVE-2026-10532</a>.</p>
<p>• A bitwise identical binary of this version can be reproduced by
building from source code at commit
e62272ac152469aec1ede056c3c7d0d7314e7bfe associated with the tag
v_1.5.34. This release was built using Java "21" 2023-10-17
LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
<h2>Logback 1.5.33</h2>
<p><strong>2026-05-27 Release of logback version 1.5.33</strong></p>
<p>• <code>PropertiesConfiguratorModelHandler</code> now registers
properties file URLs to the <code>ConfigurationWatchList</code> when
scan is enabled (via local scan="true" attribute or top-level
configuration scan), ensuring changes are detected and reconfiguration
occurs. This problem was reported in <a
href="https://redirect.github.com/qos-ch/logback/issues/1034">issues/1034</a>.</p>
<p>• When processing <code><conversionRule></code> elements and
both <code>class</code> and <code>converterClass</code> attributes are
specified, silently use the class attribute without issuing a warning.
However, if the attribute values differ, a warning will be issued. This
change was requested in <a
href="https://redirect.github.com/qos-ch/logback/issues/1031">issues/1031</a>.</p>
<p>• <code>HardenedModelInputStream</code> will no longer accept to
deserialize all classes located under the "java.lang" and
"java.util" packages but a limited number of explicitly
authorized classes in those packages. This potential deserialization
whitelist bypass vulnerability was reported by <a
href="https://github.com/york-shen">York Shen</a> and registered as <a
href="https://www.cve.org/cverecord?id=CVE-2026-9828">CVE-2026-9828</a>.</p>
<p>• SSL parameters for <code>SSLSocketAppender</code> now enable
hostname verification by default. Moreover, the default protocol is now
"TLSv1.2". This potential vulnerability was reported by York
Shen.</p>
<p>• When printing the status message field,
<code>ViewStatusMessagesServletBase</code> now escapes special
characters such as "&" as character entities. This
potential vulnerability was reported by York Shen.</p>
<p>• A bit-wise identical binary of this version can be reproduced by
building from source code at commit
124e8b49b55ac34d08743a0646bd463410192647 associated with the tag
v_1.5.33. Release built using Java "21" 2023-10-17 LTS build
21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e62272ac15"><code>e62272a</code></a>
prepare release 1.5.34</li>
<li><a
href="1e9e926db1"><code>1e9e926</code></a>
add resolveProxyClassRejectsDynamicProxies unit test</li>
<li><a
href="2de5cbe90b"><code>2de5cbe</code></a>
added StackTraceElementProxyTest, minor edits to AGENTS.md</li>
<li><a
href="0e9b9278b5"><code>0e9b927</code></a>
in case StackTraceElement is null use a substitute, fixing
issues/1040</li>
<li><a
href="f7a0654c2b"><code>f7a0654</code></a>
prevent resolveProxyClass bypass</li>
<li><a
href="249b81f375"><code>249b81f</code></a>
docs are no longer distributed</li>
<li><a
href="1c3b26a839"><code>1c3b26a</code></a>
start work on 1.5.34-SNAPSHOT</li>
<li><a
href="124e8b49b5"><code>124e8b4</code></a>
prepare release 1.5.33</li>
<li><a
href="d8fd6f25c7"><code>d8fd6f2</code></a>
escapeTags in message field when printing status messages</li>
<li><a
href="95edbeb8db"><code>95edbeb</code></a>
hostnameVerification default to true in SSLParametersConfiguration,
SSL.DEFAU...</li>
<li>Additional commits viewable in <a
href="https://github.com/qos-ch/logback/compare/v_1.5.32...v_1.5.34">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the other-dependencies group with 2 updates in the
/samples/kotlin-mcp-client directory:
[com.anthropic:anthropic-java](https://github.com/anthropics/anthropic-sdk-java)
and [com.gradleup.shadow](https://github.com/GradleUp/shadow).
Bumps the other-dependencies group with 1 update in the
/samples/kotlin-mcp-server directory:
[com.gradleup.shadow](https://github.com/GradleUp/shadow).
Bumps the other-dependencies group with 2 updates in the
/samples/kotlinlang-mcp-server directory:
[com.gradleup.shadow](https://github.com/GradleUp/shadow) and
[ch.qos.logback:logback-classic](https://github.com/qos-ch/logback).
Bumps the other-dependencies group with 1 update in the
/samples/simple-streamable-server directory:
[com.gradleup.shadow](https://github.com/GradleUp/shadow).
Bumps the other-dependencies group with 2 updates in the
/samples/weather-stdio-server directory:
[com.gradleup.shadow](https://github.com/GradleUp/shadow) and
[io.github.oshai:kotlin-logging-jvm](https://github.com/oshai/kotlin-logging).
Updates `com.anthropic:anthropic-java` from 2.34.0 to 2.35.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/releases">com.anthropic:anthropic-java's
releases</a>.</em></p>
<blockquote>
<h2>v2.35.0</h2>
<h2>2.35.0 (2026-05-28)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.34.1...v2.35.0">v2.34.1...v2.35.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> Add support for claude-opus-4-8,
mid-conversation system blocks, and usage.output_tokens_details (<a
href="3e4621e676">3e4621e</a>)</li>
</ul>
<h2>v2.34.1</h2>
<h2>2.34.1 (2026-05-27)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.34.0...v2.34.1">v2.34.0...v2.34.1</a></p>
<h3>Bug Fixes</h3>
<ul>
<li><strong>structured-outputs:</strong> support all nullability
annotations (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/1254">#1254</a>)
(<a
href="95e4391443">95e4391</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>replace literal newlines (<a
href="c5573d98ef">c5573d9</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/anthropics/anthropic-sdk-java/blob/main/CHANGELOG.md">com.anthropic:anthropic-java's
changelog</a>.</em></p>
<blockquote>
<h2>2.35.0 (2026-05-28)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.34.1...v2.35.0">v2.34.1...v2.35.0</a></p>
<h3>Features</h3>
<ul>
<li><strong>api:</strong> Add support for claude-opus-4-8,
mid-conversation system blocks, and usage.output_tokens_details (<a
href="3e4621e676">3e4621e</a>)</li>
</ul>
<h2>2.34.1 (2026-05-27)</h2>
<p>Full Changelog: <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.34.0...v2.34.1">v2.34.0...v2.34.1</a></p>
<h3>Bug Fixes</h3>
<ul>
<li><strong>structured-outputs:</strong> support all nullability
annotations (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/1254">#1254</a>)
(<a
href="95e4391443">95e4391</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>replace literal newlines (<a
href="c5573d98ef">c5573d9</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="65d26cc371"><code>65d26cc</code></a>
release: 2.35.0</li>
<li><a
href="f901010691"><code>f901010</code></a>
feat(api): Add support for claude-opus-4-8, mid-conversation system
blocks, a...</li>
<li><a
href="bc1bdd9a38"><code>bc1bdd9</code></a>
release: 2.34.1</li>
<li><a
href="f27e209ac9"><code>f27e209</code></a>
fix(structured-outputs): support all nullability annotations (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/1254">#1254</a>)</li>
<li><a
href="62ef906b3c"><code>62ef906</code></a>
docs: replace literal newlines</li>
<li><a
href="dc19d08217"><code>dc19d08</code></a>
ci: run breaking change detection on every branch (<a
href="https://redirect.github.com/anthropics/anthropic-sdk-java/issues/1224">#1224</a>)</li>
<li><a
href="1382286f46"><code>1382286</code></a>
codegen metadata</li>
<li>See full diff in <a
href="https://github.com/anthropics/anthropic-sdk-java/compare/v2.34.0...v2.35.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `ch.qos.logback:logback-classic` from 1.5.32 to 1.5.34
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/qos-ch/logback/releases">ch.qos.logback:logback-classic's
releases</a>.</em></p>
<blockquote>
<h2>Logback 1.5.34</h2>
<p><strong>2026-06-01 Release of logback version 1.5.34</strong></p>
<p>• In case certain StackTraceElement values returned by the
Throwable.getStackTrace method are null, StackTraceElementProxy
substitutes a dummy instance instead of throwing an
IllegalArgumentException. This resolves [issues <a
href="https://redirect.github.com/qos-ch/logback/issues/1040">#1040</a>](<a
href="https://redirect.github.com/qos-ch/logback/issues/1040">qos-ch/logback#1040</a>),
reported by Naotsugu Kobayashi.</p>
<p>• HardenedObjectInputStream will now throw an InvalidClassException
during deserialization attempts of Proxy classes. This change addresses
potential deserialization whitelist bypass vulnerability reported by <a
href="https://github.com/york-shen">York Shen</a> and registered as <a
href="https://www.cve.org/cverecord?id=CVE-2026-10532">CVE-2026-10532</a>.</p>
<p>• A bitwise identical binary of this version can be reproduced by
building from source code at commit
e62272ac152469aec1ede056c3c7d0d7314e7bfe associated with the tag
v_1.5.34. This release was built using Java "21" 2023-10-17
LTS build 21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
<h2>Logback 1.5.33</h2>
<p><strong>2026-05-27 Release of logback version 1.5.33</strong></p>
<p>• <code>PropertiesConfiguratorModelHandler</code> now registers
properties file URLs to the <code>ConfigurationWatchList</code> when
scan is enabled (via local scan="true" attribute or top-level
configuration scan), ensuring changes are detected and reconfiguration
occurs. This problem was reported in <a
href="https://redirect.github.com/qos-ch/logback/issues/1034">issues/1034</a>.</p>
<p>• When processing <code><conversionRule></code> elements and
both <code>class</code> and <code>converterClass</code> attributes are
specified, silently use the class attribute without issuing a warning.
However, if the attribute values differ, a warning will be issued. This
change was requested in <a
href="https://redirect.github.com/qos-ch/logback/issues/1031">issues/1031</a>.</p>
<p>• <code>HardenedModelInputStream</code> will no longer accept to
deserialize all classes located under the "java.lang" and
"java.util" packages but a limited number of explicitly
authorized classes in those packages. This potential deserialization
whitelist bypass vulnerability was reported by <a
href="https://github.com/york-shen">York Shen</a> and registered as <a
href="https://www.cve.org/cverecord?id=CVE-2026-9828">CVE-2026-9828</a>.</p>
<p>• SSL parameters for <code>SSLSocketAppender</code> now enable
hostname verification by default. Moreover, the default protocol is now
"TLSv1.2". This potential vulnerability was reported by York
Shen.</p>
<p>• When printing the status message field,
<code>ViewStatusMessagesServletBase</code> now escapes special
characters such as "&" as character entities. This
potential vulnerability was reported by York Shen.</p>
<p>• A bit-wise identical binary of this version can be reproduced by
building from source code at commit
124e8b49b55ac34d08743a0646bd463410192647 associated with the tag
v_1.5.33. Release built using Java "21" 2023-10-17 LTS build
21.0.1.+12-LTS-29 under Linux Debian 11.6.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e62272ac15"><code>e62272a</code></a>
prepare release 1.5.34</li>
<li><a
href="1e9e926db1"><code>1e9e926</code></a>
add resolveProxyClassRejectsDynamicProxies unit test</li>
<li><a
href="2de5cbe90b"><code>2de5cbe</code></a>
added StackTraceElementProxyTest, minor edits to AGENTS.md</li>
<li><a
href="0e9b9278b5"><code>0e9b927</code></a>
in case StackTraceElement is null use a substitute, fixing
issues/1040</li>
<li><a
href="f7a0654c2b"><code>f7a0654</code></a>
prevent resolveProxyClass bypass</li>
<li><a
href="249b81f375"><code>249b81f</code></a>
docs are no longer distributed</li>
<li><a
href="1c3b26a839"><code>1c3b26a</code></a>
start work on 1.5.34-SNAPSHOT</li>
<li><a
href="124e8b49b5"><code>124e8b4</code></a>
prepare release 1.5.33</li>
<li><a
href="d8fd6f25c7"><code>d8fd6f2</code></a>
escapeTags in message field when printing status messages</li>
<li><a
href="95edbeb8db"><code>95edbeb</code></a>
hostnameVerification default to true in SSLParametersConfiguration,
SSL.DEFAU...</li>
<li>Additional commits viewable in <a
href="https://github.com/qos-ch/logback/compare/v_1.5.32...v_1.5.34">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `io.github.oshai:kotlin-logging-jvm` from 8.0.03 to 8.0.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/oshai/kotlin-logging/releases">io.github.oshai:kotlin-logging-jvm's
releases</a>.</em></p>
<blockquote>
<h2>8.0.4</h2>
<p>Align to semver.</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/oshai/kotlin-logging/compare/8.0.03...8.0.4">https://github.com/oshai/kotlin-logging/compare/8.0.03...8.0.4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="0aaa57ccef"><code>0aaa57c</code></a>
bump to semver 8.0.5</li>
<li><a
href="bf60363f6c"><code>bf60363</code></a>
change to semver 8.0.4</li>
<li>See full diff in <a
href="https://github.com/oshai/kotlin-logging/compare/8.0.03...8.0.4">compare
view</a></li>
</ul>
</details>
<br />
Updates `com.gradleup.shadow` from 9.4.1 to 9.4.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/GradleUp/shadow/releases">com.gradleup.shadow's
releases</a>.</em></p>
<blockquote>
<h2>9.4.2</h2>
<h3>Changed</h3>
<ul>
<li>Update jdependency to support Java 27. (<a
href="https://redirect.github.com/GradleUp/shadow/pull/2033">#2033</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="29c432a7b6"><code>29c432a</code></a>
Prepare version 9.4.2</li>
<li><a
href="8aa8e6c1fb"><code>8aa8e6c</code></a>
Update dependency org.vafer:jdependency to v2.16 (<a
href="https://redirect.github.com/GradleUp/shadow/issues/2033">#2033</a>)</li>
<li>See full diff in <a
href="https://github.com/GradleUp/shadow/compare/9.4.1...9.4.2">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-02 13:59:56 +02:00
112 changed files with 7193 additions and 675 deletions