fix(deps): update all dependencies #4

Merged
christian.keller merged 1 commit from renovate/all into main 2025-08-21 07:50:12 +00:00
Member

This PR contains the following updates:

Package Type Update Change Age Confidence
actions/checkout action major v3 -> v5 age confidence
https://github.com/actions/setup-java action major v3 -> v4 age confidence
org.jetbrains.kotlin:kotlin-maven-allopen (source) build minor 2.1.20 -> 2.2.10 age confidence
org.jetbrains.kotlin:kotlin-maven-noarg (source) build minor 2.1.20 -> 2.2.10 age confidence
org.jetbrains.kotlin:kotlin-maven-plugin (source) build minor 2.1.20 -> 2.2.10 age confidence
org.jetbrains.kotlin:kotlin-bom (source) import minor 2.1.20 -> 2.2.10 age confidence
org.springframework.boot:spring-boot-dependencies (source) import minor 3.4.4 -> 3.5.4 age confidence

⚠️ Warning

Some dependencies could not be looked up. Check the warning logs for more information.


Release Notes

actions/checkout (actions/checkout)

v5

Compare Source

v4

Compare Source

actions/setup-java (https://github.com/actions/setup-java)

v4

Compare Source

JetBrains/kotlin (org.jetbrains.kotlin:kotlin-maven-allopen)

v2.2.10

Compare Source

Compiler
  • KT-79276 Dexing fails with "Cannot read field X because is null" with 2.2.0
  • KT-79442 "Multiple annotations of type kotlin.coroutines.jvm.internal.DebugMetadata": 2.2.0-Beta1 generates broken code with JVM default suspend methods in interfaces
  • KT-78815 Symbol not found: __ZNSt3__117bad_function_callD1Ev error on iOS 15.5 simulator in Xcode 16.3 after update to 2.2.0-Beta2
  • KT-78501 K2: Missing [ABSTRACT_SUPER_CALL] diagnostics for delegated interface method leads to AssertionError: isCompiledToJvmDefault during IR lowering
  • KT-78479 IR lowering failed / Unexpected null argument for composable call
  • KT-76477 Kotlin/Native: fix compiler performance reporting in sources->klib and klibs->binary
  • KT-78736 Missing [NOT_YET_SUPPORTED_IN_INLINE] diagnostics because of incorrect context update
  • KT-77685 "IllegalArgumentException: Sequence contains more than one matching element"
  • KT-76365 K2: Missing ABSTRACT_SUPER_CALL
  • KT-78352 False-positive IDENTITY_SENSITIVE_OPERATIONS_WITH_VALUE_TYPE when comparing with equality operator (==)
Compose compiler
  • KT-78479 Ensure that default transform affects functions entered through a call
  • KT-78490 Fix visibility for default wrappers of protected methods
  • b/408492167 Emit parameter names in Compose source information
JavaScript
  • KT-79050 KJS / IC: "Unexpected body of primary constructor for processing irClass"
  • KT-79089 KJS: Could not load reporter / Cannot find module 'mocha' when running jsNode tests
Native
  • KT-79075 Stuck on Kotlin_getSourceInfo_core_symbolication
  • KT-76178 LLVM Update: symbol '__ZnwmSt19__type_descriptor_t' missing
Native. Runtime. Memory
  • KT-78925 Crash SIGABRT on Apple Watch after updating Kotlin to 2.2.0
Tools. CLI
  • KT-77445 UNRESOLVED_REFERENCE when importing classes from kotlin-stdlib
  • KT-78263 java.lang.NoClassDefFoundError: Could not initialize class com.intellij.psi.impl.PsiSubstitutorImpl
  • KT-78318 Unresolved reference when compiling kotlin/JS project on fresh master
Tools. Compiler Plugins
  • KT-78490 "AssertionError: SyntheticAccessorLowering should not attempt to modify other files" when calling protected open composable with default argument
  • KT-78038 Make jvm-abi-gen compiler plugin output classloader-friendly
Tools. Gradle
  • KT-77023 Support creating KotlinJvmAndroidCompilation in KotlinBaseApiPlugin
Tools. Gradle. JS
  • KT-78504 [2.2.0-RC3] NPM Tasks in 2.2 RCs produce broken/unusable build cache entries
Tools. Gradle. Multiplatform
  • KT-77466 KMP - testFixturesApi and similar configurations do not affect jvmTestFixtures source set
  • KT-68646 Compose extension's metrics/reports dir should use subdirs based on target
Tools. Gradle. Native
  • KT-77977 "Unknown hardware platform: riscv64" on JVM project build
Tools. Incremental Compile
  • KT-78807 Changing ABI fingerprint on non-ABI changes when lambda passed to inlined function
Tools. Kapt
  • KT-77853 K2 KAPT: backend internal error: exception during IR fake override builder
  • KT-79138 K2: KAPT Java Stub Gen: Unresolved reference with @kotlin.Metadata in Java in 2.2.0

v2.2.0

Compare Source

Analysis API
  • KT-73337 Migrate analysis sources to new IR parameter API
  • KT-75880 K2 Mode: Typealias reference resolves to the underlying class in KMP project
  • KT-74246 KaVisibilityChecker.isVisible is inefficient with multiple calls on the same use-site
  • KT-57733 Analysis API: Use optimized ModuleWithDependenciesScopes in combined symbol providers
  • KT-69535 Redesign 'containingSymbol'
  • KT-69950 Analysis API: Introduce isSubtypeOf(ClassId)
  • KT-68393 Analysis API: Rename KaClassLikeSymbol. classIdIfNonLocal to classId
  • KT-62924 Analysis API: rename KtCallableSymbol.callableIdIfNonLocal -> callableId
Analysis API. Code Compilation
  • KT-75502 K2: IDEA hangs when evaluating inside kotlin-stdlib modules in the Kotlin project
  • KT-73077 Evaluation of inline functions is broken inside Kotlin project and Amper module in Idea sources
  • KT-73936 K2: CyclicInlineDependencyException: Inline functions have a cyclic dependency in evaluator
  • KT-74582 InterpreterMethodNotFoundError when trying to evaluate simple expressions after recent fixes
  • KT-74524 Compilation exception with incorrect JvmName annotation arguments
  • KT-74443 Compilation peer collector ignores inline property accessors
Analysis API. FIR
New Features
Performance Improvements
  • KT-75790 Experiment with increasing DEFAULT_LOCKING_INTERVAL time
  • KT-72159 LLFirCompilerRequiredAnnotationsTargetResolver: consider rewriting it to use honest jumping locks
Fixes
  • KT-76331 Cleanup FileStructureElement for classes
  • KT-73117 K2 AA: Exception "Setter is not found" when val has a setter without body
  • KT-76540 K2: Missing library dependency on Android SDK from androidx.activity-1.8.2 causes LiveEdit failures
  • KT-73266 K2. "Declaration should have non-local container" with unclosed annotation on top-level function
  • KT-76432 JavaClassUseSiteMemberScope: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl
  • KT-76217 K2 AA: "No fir element was found for KtParameter" with multiple context parameter lists
  • KT-74740 Highlighting is broken after the built-in serialization refactoring
  • KT-76366 ContextCollector: annotations on class members don't have the class as implicit receiver
  • KT-76352 ContextCollector: wrong class annotation context in BODY mode
  • KT-76341 ContextCollector: support dangling modifiers
  • KT-76332 "Declaration should have non-local container" for declaration inside file annotation
  • KT-76115 Disable FirElementBuilder#getFirForElementInsideAnnotations optimization for files, classes and scripts
  • KT-76347 ContextCollector: avoid resolution for enum entry annotations
  • KT-76272 Cleanup AbstractFileStructureTest
  • KT-75542 K2 AA: "FirDeclaration was not found for class KtNamedFunction, fir is class FirErrorExpressionImpl" for unclosed annotation on member function
  • KT-73719 K2. "FirDeclaration was not found for class KtDestructuringDeclaration, fir is class FirBlockImpl" on incorrect chain call
  • KT-72908 K2 Analysis API: "FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtFunctionLiteral" with non-local destructuring declaration without initializer before init block
  • KT-75532 ContextCollector: scope for an anonymous function type parameter contains regular parameters
  • KT-74508 FirElementBuilder#findElementInside should reuse logic from KtToFirMapping#getFir
  • KT-73066 [LL] Enable low-level-api-fir-native even with the disabled native part
  • KT-75132 Investigate failures of sandbox diagnostic test
  • KT-75130 Set up LL FIR tests for sandbox test data
  • KT-73386 Standardize LL FIR test for compiler test data
  • KT-75125 ISE “Value classes cannot have 0 fields” on instantiating inline class without fields
  • KT-75179 ContextCollector: support error properties
  • KT-74632 K2: ISE FirLazyDelegatedConstructorCall should be calculated before accessing
  • KT-74818 K2 AA: "FirDeclaration was not found for class KtTypeParameter, fir is null" with TYPE_PARAMETERS_NOT_ALLOWED on anonymous function
  • KT-73183 Support context parameters in ContextCollectorVisitor
  • KT-60350 K2 IDE: top level destructuring RHS should be resolvable
  • KT-74794 K2: FirLazyExpression should be calculated before accessing with context parameter and implicit return type
  • KT-72938 Get rid of KaFirAnnotationListForReceiverParameter
  • KT-73727 Exception in implicit type resolution
Analysis API. Infrastructure
  • KT-74917 [Analysis API, Test Framework] Introduce a way to acquire PsiFile for a given TestFile in KtTestModule
Analysis API. Light Classes
  • KT-73405 Get rid of KtElement#{symbolPointer, symbolPointerOfType} API usages
  • KT-75391 Reduce the amount of psi-based logic in light classes
  • KT-70001 SLC adds @Override with zero text offset on override member
  • KT-75755 K2. False positive red code on vararg parameters in Kotlin class with @JvmOverloads when called from Java
  • KT-75397 Constructors and functions with non-last vararg parameters are treated as varargs
  • KT-74868 Support context parameters
  • KT-74733 SymbolPsiLiteral.text == value for Java constant
  • KT-74620 Delegated functions with value classes are present in light classes
  • KT-74595 Static functions with value classes are present in light classes
  • KT-74284 Synthetic data class methods using value class types present in LC
Analysis API. Providers and Caches
Performance Improvements
  • KT-62115 Analysis API: Package providers are not cached per search scope
  • KT-74463 Analysis API: LLNativeForwardDeclarationsSymbolProvider queries its cache even when the ClassId cannot represent a native forward declaration
Fixes
  • KT-74541 Analysis API: Include files generated by resolve extensions in KaModule content scopes
  • KT-64236 Analysis API: Introduce a separate module for fallback dependencies of library source modules
  • KT-74090 Analysis API: Support dumb mode (restricted analysis)
  • KT-63780 Analysis API: Invalidate resolvable library sessions when binary library modules are modified
  • KT-72388 KaFirStopWorldCacheCleaner: Control-flow exceptions
  • KT-74943 Analysis API: Replace KotlinGlobalModificationService with simpler global modification event publishing and listener-based modification trackers
  • KT-70518 K2: Analysis API: Access indices outside of ConcurrentMap computation in symbol providers
  • KT-74302 Analysis API: LLFirProvider should disregard self-declarations in getFirClassifierBy*
  • KT-67868 Analysis API: Improve the architecture of LLFirKotlinSymbolProviders
Analysis API. Standalone
  • KT-72810 withMultiplatformLightClassSupport is inconvenient in Standalone
Analysis API. Stubs and Decompilation
  • KT-71787 PsiRawFirBuilder.Visitor#visitStringTemplateExpression forces AST loading
  • KT-68484 K2 IDE, Analysis API: "We should be able to find a symbol for function" for getting KaType of Iterable<T>.map(transform: (T) -> R) parameter in J2K
Analysis API. Surface
New Features
  • KT-74475 Add isInline for KaPropertySymbol
  • KT-75063 KaScopeContext: support context parameters
Performance Improvements
  • KT-73669 Support psi-based symbol pointer for implicit primary constructors
  • KT-76008 Provide PSI-based implementation for KaFirNamedClassSymbol#companionObject
  • KT-70165 Introduce PSI-based KaSymbols for K2
Fixes
  • KT-72730 K2: "Unexpected owner function: KtNamedFunction" on vararg val parameter in function
  • KT-75123 K2. KaFirNamedFunctionSymbol should contain a receiver
  • KT-75894 Cannot build KaFirJavaFieldSymbol for FirFieldImpl
  • KT-75115 Analysis API: The JavaModuleResolver compiler class is leaked to Analysis API platform implementations
  • KT-76018 K2: Stop the wold leads to deadlock/freeze
  • KT-76011 KaFirNamedClassSymbol#companionObject doesn't provide generated objects generated by compiled plugins
  • KT-72482 "KotlinIllegalArgumentExceptionWithAttachments: Expected all candidates to have same callableId but some of them but was different" on trying to add the import
  • KT-75586 KaFirPropertyGetterSymbol#isInline and KaFirPropertySetterSymbol#isInline is incorrect for accessors with explicit modifier
  • KT-58572 Analysis API: Enforcing STATUS resolve in 'KtFirNamedClassOrObjectSymbol.visibility' may cause lazy resolve contract violation
  • KT-75574 Recognize injected code fragment copies
  • KT-75573 Recognize physical file copies as dangling files
  • KT-74801 Analysis API: Publish/subscribe to modification events with a single message bus topic
  • KT-73290 Analysis API: Improve the architecture of content scopes and resolution scopes
  • KT-68901 Constructor delegation call receiver missing in fir implementation
  • KT-72639 Support context parameter API
  • KT-73112 AA: FirExpression.toKtReceiverValue should handle context receivers properly
  • KT-74905 Cannot find context receiver in FIR declaration
  • KT-74563 createPointer is overloaded not for all implementations
  • KT-73722 Analysis API: Automatically check that the API surface is fully documented
  • KT-65065 Provide KtTypeReference#getShortTypeText()
Backend. Native. Debug
  • KT-75991 Xcode 16.3: Fix lldb stepping test over an inline function
Backend. Wasm
New Features
  • KT-59032 Support instantiation of annotation classes on WASM
Fixes
  • KT-77622 K/Wasm: investigate CMP crash on mobile Safari
  • KT-76747 [Wasm] Wasm name section absent for wasm structs
  • KT-76701 K/Wasm: custom formatters are not loaded when a project is built with incremental compilation
  • KT-66081 K/WASM: 0/0, 5/0 and 5%0throw not ArithmeticException, but RuntimeError
  • KT-76287 [Wasm] Enable stdlib and kotlin.test tests after compiler bootstrap
  • KT-75871 [Wasm] Implement new RTTI approach
  • KT-75872 Wasm / IC: IllegalStateException: IC internal error: can not find library
  • KT-74441 K/Wasm: incorrect 1e-45.toString()
  • KT-59118 WASM: floating point toString inconsistencies
  • KT-68948 Wasm: float from variable is printed with many decimal points
  • KT-69107 [wasm] Seemingly incorrect rounding
  • KT-73362 Migrate K/Wasm sources to new IR parameter API
Compiler
New Features
  • KT-70722 Implement better Kotlin warnings for value classes and JEP 390 (Warnings for Value-Based Classes)
  • KT-71768 Enable -Xjvm-default=all-compatibility by default to generate JVM default interface methods
  • KT-54205 Support jakarta Nullability annotations
  • KT-57919 Store all annotations in Kotlin metadata on JVM under a flag
  • KT-73255 Change defaulting rule for annotations
  • KT-74382 Annotating Java record components for @JvmRecord data class
  • KT-74811 Prohibit usages of @MustUseValue / @IgnorableValue if RV checker is not enabled
  • KT-74806 Implement feature flag for improved unused return value checker
  • KT-74809 Support unnamed local variables
  • KT-73508 Add a warning diagnostic for using kotlin.concurrent.AtomicRef
  • KT-72941 ANNOTATIONS_ON_BLOCK_LEVEL_EXPRESSION_ON_THE_SAME_LINE missing in K2
  • KT-74497 Warn about incompatible Kotlin and Java targets in annotations
  • KT-75061 Support context-sensitive resolution in type position
  • KT-75315 Support context-sensitive resolution in the call-argument position
  • KT-75316 Support context-sensitive resolution for expression-position with expected type
  • KT-76088 Support context-sensitive resolution for annotation arguments
  • KT-74049 Introduce special override rule to allow overriding T! with T & Any
Performance Improvements
  • KT-76395 Performance degradation on 28.03.2025
  • KT-76422 FirJavaFacade#createFirJavaClass: do not compute super type references right away
  • KT-75957 K2: PsiRawFirBuilder.Visitor#toFirExpression forces AST loading via getSpreadElement
  • KT-74824 Exponential performance caused by nested flexible types
  • KT-62855 K2: extra allocation for SAM conversion compared to K1
  • KT-74977 K/N: support stack array for Array(size) call
  • KT-74369 Exponential compiler memory usage in specific situations with type inference
Fixes
  • KT-76606 Enable 'Indy: Allow lambdas with annotations' by default
  • KT-77301 False positive Context Parameter resolution when using DslMarker
  • KT-74389 K2: False positive NON_EXPORTABLE_TYPE on non-Unit Promise<...> in K/JS
  • KT-77219 "@Composable annotation is not applicable" on vararg @Composable () -> Unit in Kotlin 2.2.0
  • KT-76357 K2: a nested class annotation observes member declarations of the outer class
  • KT-72734 Support new callable reference nodes in Kotlin Native
  • KT-74421 K2: Missing "val cannot be reassigned" when trying to assign a value to parent's "val"
  • KT-63720 Coroutine debugger: do not optimise out local variables
  • KT-74470 NSME on calling in runtime internal constructor of value class with default arg from tests
  • KT-77640 Context parameters: using 'contextOf()' function leads to [NO_CONTEXT_ARGUMENT]
  • KT-73909 Add an inspection discouraging usage of kotlin.concurrent Native atomics in favor of the new atomics
  • KT-76583 CCE: suspend lambda attempts to unbox value class parameter twice after lambda suspended
  • KT-76663 KJS: KotlinNothingValueException caused by expression return since 2.1.20
  • KT-75457 Native: cache machinery uses stdlib cache with default runtime options even if custom runtime options are supplied when partial linkage is disabled
  • KT-76615 K2: "IllegalArgumentException: Inline class types should have the same representation: Lkotlin/UByte; != B" for mixed Java/Kotlin code
  • KT-77220 Annotation with EXPRESSION is not allowed on lambdas in Kotlin 2.2.0
  • KT-76381 K2: Expected expression 'FirPropertyAccessExpressionImpl' to be resolved
  • KT-74739 Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION_REFERENCE"
  • KT-74325 Explicit API mode does not enforce explicit return types for extension properties
  • KT-77259 Confusing message for ANNOTATION_WILL_BE_APPLIED_ALSO_TO_PROPERTY_OR_FIELD
  • KT-73771 K2: Infinite compilation caused by buildList without type
  • KT-61258 Kotlin/Native: CLASS CLASS name: modality:FINAL visibility:local superTypes:[.Base]
  • KT-75317 Kotlin/Native: segfault in kotlin::gc::Markkotlin::gc::mark::ConcurrentMark::MarkTraits
  • KT-75965 The iOS app did not run successfully in Release mode
  • KT-77397 Report UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL when calling declaration with contextual function type in signature
  • KT-77137 K2: Controversial behavior allows resolving annotation arguments on a companion inside it
  • KT-77150 Native: compilation fails with an assertion error
  • KT-51960 ClassCastException: Inline function with both context and extension receiver produces this when invoked
  • KT-73611 Remove -Xextended-compiler-checks in favor of a deprecation cycle
  • KT-74649 Deprecate language versions 1.8 and 1.9
  • KT-77283 Binary compatibility of FirDeclarationChecker
  • KT-73445 K2: do not report "cannot infer visibility" when inheriting multiple implementations
  • KT-75945 Indy: Allow lambdas with annotations
  • KT-76898 K2: ClassCastException when data class shadows supertype's componentX method with wrong type
  • KT-75992 Xcode 16.3: stacktraces on simulators are not symbolicated
  • KT-76805 Wrong NPE occurs when assigning synthetic properties with platform types in Kotlin 2.1.20
  • KT-76171 "KotlinIllegalArgumentExceptionWithAttachments: Expected expression 'FirSingleExpressionBlock' to be resolved"
  • KT-77078 K2: anonymous object is wrongly allowed to implement interfaces by unsafe Delegation
  • KT-72722 Treat 'copy' calls of a data class as explicit constructor usages
  • KT-77001 Leave ForbidParenthesizedLhsInAssignments as a warning
  • KT-75828 Store backing field/delegate annotations and extension receiver annotations in metadata
  • KT-58369 K2: enable DFA warnings
  • KT-51258 Annotations should go before context receivers
  • KT-76253 K2 Compiler: Less precise diagnostic COMPONENT_FUNCTION_AMBIGUITY for flexible type
  • KT-59526 Store annotation default values in metadata on JVM
  • KT-63850 K2: setter with an annotated parameter has isNotDefault == false flag in metadata
  • KT-75712 -Wextra: false positive UNUSED_LAMBDA_EXPRESSION on functional type variable assignment with inferred type
  • KT-4779 Generate default methods for implementations in interfaces
  • KT-69624 Debugger: Missing local variable in Variables view (inline function)
  • KT-75518 NO_CONTEXT_ARGUMENT should report the name of the context parameter in addition to the type
  • KT-76199 Introduce -Xcontext-sensitive-resolution compiler flag
  • KT-75553 MISSING_DEPENDENCY_SUPERCLASS and MISSING_DEPENDENCY_SUPERCLASS_WARNING is reported at the same time on the same element
  • KT-76159 Obsolete error "'@JvmDefaultWithCompatibility' annotation is only allowed on interfaces" should be removed
  • KT-76660 False negative RETURN_NOT_ALLOWED in lambda in default argument leads to NoClassDefFoundError: $$$$$NON_LOCAL_RETURN$
  • KT-76301 Fail to infer types after syntactical change
  • KT-74999 K2: KotlinNothingValueException within Extension Function
  • KT-76675 KIAEWA exception at KaFirDataFlowProvider with non-local return from nested inline call
  • KT-75756 Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom script
  • KT-76345 Enhance variable fixation
  • KT-76578 [FIR, K1/K2 Regression] lateinit is allowed on loop parameters
  • KT-76448 FirOverrideChecker: class ClsMethodImpl is not a subtype of class KtNamedDeclaration for factory VIRTUAL_MEMBER_HIDDEN
  • KT-73360 Migrate K/JVM sources to new IR parameter API
  • KT-74852 Kotlin/Native: allow caches for thread state checker and sanitizers
  • KT-76130 IR evaluator does not support array literals in annotation parameter default values
  • KT-76436 Missing K2 checker: non-local return through lambda passed to inline f/o
  • KT-74326 False negative: no variable must be initialized error though code doesn't compile
  • KT-76572 FIR_NON_SUPPRESSIBLE_ERROR_NAMES does not contain deprecation errors
  • KT-75704 Refactor FirWhenSubjectExpression
  • KT-76284 Flexible captured type is not approximated in receiver position
  • KT-76192 RETURN_TYPE_MISMATCH with same expected and actual type: nullability of actual type is omitted
  • KT-75944 Allow using invokedynamic for lambdas with no 'Runtime' level retention annotations
  • KT-76396 FirIntegerConstantOperatorScope: NoSuchElementException: Collection contains no element matching the predicate
  • KT-76209 CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-59506 Context receivers: Unable to use trailing comma in receiver list
  • KT-46119 NONE_APPLICABLE instead of NAMED_ARGUMENTS_NOT_ALLOWED with overloaded Java constructor call
  • KT-75503 Run lazy resolution in CallableCopyTypeCalculator and use withForcedTypeCalculator everywhere in checkers
  • KT-76485 Don't report EXTENSION_SHADOWED_BY_MEMBER if extension can be called with named arguments
  • KT-76154 False positive "EXTENSION_SHADOWED_BY_MEMBER" when extension adds default values to parameters
  • KT-76527 False positive UNSUPPORTED_CONTEXTUAL_DECLARATION_CALL with -Xcontext-receivers and implicit invoke
  • KT-63246 K2: False positive NOTHING_TO_OVERRIDE in generic property with context receiver in non generic class extending generic class
  • KT-58534 K2: "Argument type mismatch" with typealias to context receiver functional type
  • KT-71792 Switch latest stable version in Kotlin project to 2.2
  • KT-74827 CompilationErrorException : Could not load module in an attempt to find deserializer when trying to evaluate an expression
  • KT-70352 K2: False-negative CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-71481 K2: drop pre-1.6 language features from compiler code
  • KT-74454 Support trailing comma in context parameters
  • KT-74069 False positive UNUSED_EXPRESSION due to Long/Int conversion
  • KT-74337 Local Delegated properties don't preserve their annotations and don't show up in reflection
  • KT-55187 Context receivers in function types can have labels
  • KT-58498 Context receivers: ClassCastException with object and extension function in interface
  • KT-58165 K2: "IllegalArgumentException: No argument for parameter VALUE_PARAMETER" on overridden contextual property
  • KT-75234 Add error for callsInPlace contracts on context parameters
  • KT-73805 K2: Investigate missing diagnostic in implicit invoke call on context function type with receiver from module with disabled context parameters
  • KT-41934 NI: a type variable for lambda parameter has been inferred to nullable type instead of not null one
  • KT-75983 Backend Internal error: Exception during IR lowering 'IllegalStateException: Internal error: cannot convert Any to Int'
  • KT-75535 Compilation of typealias does not check for clashes
  • KT-72313 K2 IDE / KMP Debugger: Evaluation of inline functions declared in a common source set causes a crash
  • KT-76290 False positive UNUSED_EXPRESSION while returning Unit in the when branches
  • KT-32358 NI: Smart cast doesn't work with inline function after elvis operator
  • KT-76316 K2: Missing NON_PUBLIC_CALL_FROM_PUBLIC_INLINE on object extending private class in public inline function
  • KT-76324 Frontend diagnostic says "... this will be an error in Kotlin N.M" but N.M is already released
  • KT-76058 PCLA: compile-time failure on calling a higher-order function from another module inside a lambda assigned to a variable of a type with a postponed type variable
  • KT-75571 K2: type mismatch error provides unsubstituted types
  • KT-31391 'Recursive call is not a tail call' with elvis operator in tailrec function
  • KT-73420 False-positive NON_TAIL_RECURSIVE_CALL on tailrec function with elvis in the return statement
  • KT-75815 Disable warnings about different context parameter names in overrides
  • KT-75169 Unnecessary EXTENSION_SHADOWED_BY_MEMBER on generic declarations
  • KT-75483 Native: redundant unboxing generated with smart cast
  • KT-76339 K2: Dangling modifier list is missed for enum entries in PSI mode
  • KT-75513 Avoid overrides traversal without preinitialization
  • KT-74587 Report an error when JvmDefaultWithoutCompatibility is used with -Xjvm-default=all
  • KT-76257 Annotations with class references are not supported when marking IR declarations as visible to metadata
  • KT-71793 Drop language versions 1.6 and 1.7
  • KT-59272 Incorrect bytecode generated: wrong line number table after condition
  • KT-69248 K2: IAE “class KtDotQualifiedExpression is not a subtype of class KtCallExpression for factory ENUM_CLASS_CONSTRUCTOR_CALL” with qualified enum constructor call
  • KT-73778 Kotlin Debugger: NSFE on accessing private property from dependencies during evaluation
  • KT-74131 Incorrect line numbers for static initializer with delegated local variable
  • KT-76320 K2: PsiRawFirBuilder: import alias triggers ast loading
  • KT-63851 K2: No setterValueParameter in metadata for property setter with an annotated parameter
  • KT-55083 JVM: AbstractMethodError caused by lambda with sealed base interface and fun sub interface and overridden method
  • KT-16727 Names for anonymous classes in interfaces are malformed on JDK 8
  • KT-12466 NoClassDefFoundError: B$DefaultImpls on super interface call through K-J-K inheritance
  • KT-71002 Possible inheritance from nullable type through typealias
  • KT-75293 K2: Missing [HAS_NEXT_FUNCTION_TYPE_MISMATCH] diagnostics
  • KT-75498 Forbid .declarations access from checkers
  • KT-72335 KotlinIllegalArgumentExceptionWithAttachments when using illegal selector
  • KT-68375 K2: FirPrimaryConstructorSuperTypeChecker fails on generated superclasses
  • KT-71718 K2: drop TypePreservingVisibilityWrtHack
  • KT-75112 FE resolves wrong receivers order for property passed to delegate
  • KT-75924 K2. Incorrect generic type Inference "R? & Any" appears for "Add explicit type arguments"
  • KT-75969 java.lang.IllegalArgumentException: source must not be null on red code
  • KT-75322 ConeDiagnosticToFirDiagnosticKt: source must not be null
  • KT-73800 Wrong method executed on super call in -Xjvm-default=all/all-compatibility with an extraneous super-interface
  • KT-38029 Wrong method executed on super call in diamond hierarchy with covariant override
  • KT-75242 Any use-site target can be applied to a lambda and an expression
  • KT-73051 incorrect direction of subtyping violation in type mismatch error's message for A<X> </: A<Y> given a Tv <: Rv == C constraint from a lambda return position
  • KT-75090 Argument type mismatch: actual type is 'SuspendFunction0', but 'SuspendFunction0' was expected when anonymous function is passed to function expecting suspend function type
  • KT-74956 K2: No USAGE_IS_NOT_INLINABLE with compiling an inlined function call
  • KT-76049 K2: drop explicitTypeArgumentIfMadeFlexibleSynthetically creation when DontMakeExplicitJavaTypeArgumentsFlexible is enabled
  • KT-76055 K2: drop prepareCustomReturnTypeSubstitutorForFunctionCall logic when DontMakeExplicitJavaTypeArgumentsFlexible is enabled
  • KT-76057 K2: don't do reverse Java overridability checks when DontMakeExplicitJavaTypeArgumentsFlexible is enabled
  • KT-75197 K2: Missing [COMPARE_TO_TYPE_MISMATCH] diagnostics
  • KT-75639 Inline context function leads to ClassCastException
  • KT-75677 K2: change runtime behavior of KT-75649 case in 2.2
  • KT-75961 K2: PsiRawFirBuilder.Visitor#visitSimpleNameExpressionforces AST loading via getReferencedNameElement().node.text
  • KT-67869 Make inference for lambda working consistently inside and outside of the call
  • KT-74885 K2: IAE "source must not be null" in FirCyclicTypeBoundsChecker
  • KT-75578 K2: False negative [SUPER_CALL_WITH_DEFAULT_PARAMETERS] when calling the upper-class implementation of a method with the default value argument
  • KT-73954 Generate implementations in classes for inherited non-abstract methods in -Xjvm-default=all-compatibility
  • KT-75173 Context parameters: KotlinIllegalArgumentExceptionWithAttachments if you override function with value/extension parameter by fun with context
  • KT-75742 Native: "IllegalArgumentException: unknown pass name '' " when specifying an empty list of LLVM passes
  • KT-74819 K2: False-positive overload resolution ambiguity for flatMap inside PCLA
  • KT-75093 K2 IDE: "Unreachable code" highlighting range is confusing
  • KT-74572 Context parameters: contracts don't work with context parameters
  • KT-74765 Move K1 lazy IR implementation from 'ir.tree' to 'psi2ir'
  • KT-71425 IR Inliner: investigate return type of an inlined block
  • KT-74764 Native: merge init nodes generated within the same LLVM module for the same klib
  • KT-75561 K/N: place InteropLowering after UpgradeCallableReferences phase
  • KT-73369 K/N: move interop lowering up the pipeline
  • KT-75517 K2: Refactor FirCallableSymbol.resolvedContextParameters to return symbols
  • KT-75821 K2: REPL resolution doesn't take into account the property type when processing its initializer
  • KT-75705 IllegalArgumentException when isInitialized is used with java field
  • KT-75334 Java target shouldn't be specified if Kotlin target isn't specified
  • KT-75157 Missing PARAMETER_NAME_CHANGED_ON_OVERRIDE and DIFFERENT_NAMES_FOR_THE_SAME_PARAMETER_IN_SUPERTYPES for context parameters
  • KT-75160 Check usages of value parameters in checkers and adapt to context parameters
  • KT-75729 KtPsiFactory: no type-safe way to create triple-quoted KtStringTemplateExpression
  • KT-75040 Unify subject and subjectVariable in FirWhenExpression
  • KT-75323 FirSyntheticProperty: Unexpected status. Expected is FirResolvedDeclarationStatus, but was FirDeclarationStatusImpl
  • KT-75602 Introduce concept of shared library session in Fir sessions
  • KT-75509 PARAMETER_NAME_CHANGED_ON_OVERRIDE is reported randomly
  • KT-75124 IAE “class org.jetbrains.kotlin.psi.KtContextReceiver is not a subtype of class org.jetbrains.kotlin.psi.KtParameter for factory EXPOSED_PARAMETER_TYPE” on private context receiver
  • KT-73585 K2: ABSTRACT_SUPER_CALL is not reported
  • KT-75531 K2 REPL: local name doesn't shadow one from implicit receiver
  • KT-73359 Migrate frontend sources to new IR parameter API
  • KT-75380 K2: Modality is configured incorrectly for some FirDefaultPropertyAccessor
  • KT-75526 Regression in K2 scripting: local name doesn't shadow one from the implicit receiver
  • KT-59379 K2: Missing MIXING_NAMED_AND_POSITIONED_ARGUMENTS
  • KT-75106 K2: type parameters of anonymous functions are unresolved
  • KT-73387 Unexpected implicit type during enhancement
  • KT-72618 Cannot define operator inc/dec in class context
  • KT-74546 Serialize context parameters to metadata
  • KT-68768 K2: unsuccessful inference fork with jspecify annotations
  • KT-75345 Add a test for KT-42271
  • KT-75012 K2: Compiler crash on dynamic == null
  • KT-75195 IllegalStateException: No value for annotation parameter when @all meta-target is used with annotation with constructor
  • KT-75163 WRONG_ANNOTATION_TARGET_WITH_USE_SITE_TARGET for @all meta-target although there are applicable targets
  • KT-75198 @all meta-target should be forbidden for delegated properties
  • KT-74958 K2: UNEXPECTED_TRAILING_LAMBDA_ON_A_NEW_LINE isn't reported on accidental trailing closure
  • KT-74982 Improve UNSUPPORTED message handling
  • KT-75111 False negative "This declaration needs opt-in" for usage of enum entry with OptIn marker in another module
  • KT-74924 Infinite recursion in substitution of captured type with recursive supertype
  • KT-75289 NPE: getParent(...) must not be null
  • KT-75275 Inline class member inherited from interface is not mangled in '-Xjvm-default=all-compatibility'
  • KT-74340 FIR: folding binary expression chains for psi parser
  • KT-73831 Do not choose field target in annotation classes
  • KT-73494 Enable first-only-warn annotation defaulting mode
  • KT-75174 K2: incorrect influence of return type nullability on required receiver type in KJK hierarchy with property
  • KT-74920 Overriding T! with T & Any is not allowed to the extension property receiver type
  • KT-75150 False ambiguous context parameter reported because context is not chosen via generic parameter
  • KT-74965 CLI compiler doesn't report syntax errors for JS, Metadata backends if light-tree mode is disabled
  • KT-74303 K2 IDE / Kotlin Debugger: AE “Trying to inline an anonymous object which is not part of the public ABI” on evaluating private inline function with object inside
  • KT-75177 NoSuchMethodError on suspend default interface method fake override returning inline class in -Xjvm-default=all-compatibility
  • KT-74718 K/N: Move TestProcessor phase to the top of the pipeline
  • KT-75015 Context parameters: it is possible to declare anonymous function with modifiers but they don't have any effect
  • KT-75092 K2: Missing errors for modifiers on anonymous function in statement position
  • KT-75009 Context parameters: context is unresolved inside anonymous function if passed as an argument
  • KT-75017 Context parameters: "IllegalStateException: Cannot find variable a: R|kotlin/String| in local storage " when context from another local function is called
  • KT-75154 Context receiver deprecation warning should depend on langauge version, not on LATEST_STABLE
  • KT-74979 Context parameters: anonymous functions with a context aren't parsed in complex cases
  • KT-74673 K2: ClassCastException when passing suspending functional interface with generic
  • KT-74469 K2: False positive: "Argument type mismatch" during Java interop
  • KT-75105 K2: False negative NAME_IN_CONSTRAINT_IS_NOT_A_TYPE_PARAMETER for type constraint of anonymous function
  • KT-74929 False positive TYPE_PARAMETER_OF_PROPERTY_NOT_USED_IN_RECEIVER if it is used with T&Any
  • KT-74227 K2: "Cannot infer type for this parameter. Please specify it explicitly" caused by lambda in another lambda with a parameterized function type
  • KT-64558 K2 compiler does not report UNNECESSARY_SAFE_CALL, UNNECESSARY_NOT_NULL_ASSERTION, USELESS_ELVIS, while K2 IDEA does
  • KT-74728 K2: Java method overriding Kotlin method with receiver loses vararg modifier
  • KT-70789 CLI error "mixing legacy and modern plugin arguments is prohibited" on using -Xcompiler-plugin unless default scripting plugin is disabled
  • KT-72829 Forbid 'entries' name of enum entry, and deprioritize it in resolve
  • KT-75037 K2: IrGeneratedDeclarationsRegistrar.registerFunctionAsMetadataVisible doesn't handle extension receivers and context parameters
  • KT-73149 Annotations support for context parameters
  • KT-74798 Report error on local contextual properties
  • KT-74092 Context parameters: it is not possible to declare an anonymous function with a context
  • KT-52152 K2: Investigate suspicious code at SAM conversions
  • KT-75016 K2: BackendException when context var property is declared in interface
  • KT-74474 K2: Report more precise diagnostic when last expression of non-unit lambda is a statement
  • KT-74478 K2: False negative RETURN TYPE_MISMATCH if the last statement of a lambda is indexed assignment
  • KT-73685 K2 IDE / Kotlin Debugger: NSME “Method not found” on evaluating function with constant value in @JvmName
  • KT-74449 Report RETURN_TYPE_MISMATCH instead of ARGUMENT_TYPE_MISMATCH for return expressions in lambdas
  • KT-74918 FIR: account for K/Wasm diagnostics in generateNonSuppressibleErrorNamesFile
  • KT-74897 K2: Report UNSUPPORTED_FEATURE instead of TOPLEVEL_TYPEALIASES_ONLY for nested type aliases
  • KT-74963 K2: Fir2Ir: Avoid a situation when startOffset > endOffset in generated IrBranch
  • KT-74697 Overriding a method that's both deprecated and non-deprecated should not cause warnings
  • KT-74928 K2: "IllegalStateException: Cannot find cached type parameter by FIR symbol" in KJK hierarchy with extension property
  • KT-74630 K2: local class arguments in annotations on types and type parameters are not serialized
  • KT-74445 Commonize Native Function/Property reference lowerings
  • KT-74670 Warning message CONTEXT_CLASS_OR_CONSTRUCTOR isn't reported for context receiver on the constructor
  • KT-74617 Trivial SMAP optimization leads to missing debug info after inline
  • KT-74812 compile-time failure on a callable reference with an input type inferred to an inaccessible generic type
  • KT-66195 K2: Java method is not enhanced from overridden's context receivers
  • KT-74501 Context parameters: ABSTRACT_MEMBER_NOT_IMPLEMENTED if fun with context is implemented in Java in KJK hierarchy
  • KT-74385 Missing diagnostic on repeated suspend modifier in function type
  • KT-74749 Provide explanation IR before script compilation
  • KT-74751 K2: IllegalStateException: Can't apply receivers of FirPropertyAccessExpressionImpl to IrTypeOperatorCallImpl
  • KT-74729 NPE when suspend lambda has inline class parameter
  • KT-74336 Not supported: class org.jetbrains.kotlin.fir.types.ConeIntersectionType
  • KT-74203 K2: False negative NO_ELSE_IN_WHEN of a generic type with star projection <*> bounded by a sealed hierarchy
  • KT-48085 Kotlin/Native: LLD removes live code with --gc-sections when producing DLL
  • KT-69164 Native: use lld from bundled LLVM distribution when compiling on Windows for a MinGW target
  • KT-74081 Context parameters: implicit call resolves to extension when there is a context
  • KT-74682 Implement internal type exposure via parameter bounds deprecation postponement
  • KT-74556 K2: "IAE: class KtDestructuringDeclaration is not a subtype of class KtNamedDeclaration for factory REDECLARATION" with two non-local destructuring declarations
  • KT-73146 Context parameters CLI & diagnostics
  • KT-72104 Consider enabling check for unbound symbols in JVM before lowerings
  • KT-74568 Synthetic nested classes missing JVM attributes
  • KT-73703 [Native] Move KonanIrLinker to serialization.native module
  • KT-61175 K2: FirReceiverParameter does not extend FirDeclaration
  • KT-73961 'lateinit is unnecessary' on transient properties should not be reported for serializable classes
  • KT-73858 Compose / iOS: NullPointerException on building
  • KT-62953 JVM IR: Use SimpleNamedCompilerPhase instead of NamedCompilerPhase
  • KT-72929 Consider caching typealiased constructor symbols created by TypeAliasConstructorsSubstitutingScope
  • KT-74459 K2: false positive MISSING_DEPENDENCY_CLASS for types inside default argument
  • KT-73705 [Native] Decouple native caches support from KonanIrLinker and KonanPartialModuleDeserializer
  • KT-74091 K2: @JvmOverloads-produced overloads have generated line number table
  • KT-69754 Drop -Xuse-k2 compiler flag
  • KT-73352 K2: false negative ARRAY_EQUALITY_OPERATOR_CAN_BE_REPLACED_WITH_EQUALS
  • KT-72962 Consider enabling ConsiderForkPointsWhenCheckingContradictions LF earlier
  • KT-73027 IllegalStateException: Annotation argument value cannot be null: since
  • KT-74242 Freeze on runCatching call in finally block inside SAM conversion
  • KT-29222 FIR: consider folding binary expression chains
  • KT-73760 Cannot implement two Java interfaces with @NotNull-annotated type argument and Kotlin's plain (nullable) type parameter
  • KT-58933 Applying suggested signature from WRONG_NULLABILITY_FOR_JAVA_OVERRIDE leads to red code
  • KT-70507 Should parentheses prevent from plus/set operator desugaring?
  • KT-67520 Change of behaviour of inline function with safe cast on value type
  • KT-67518 Value classes leak their carrier type implementation details via inlining
  • KT-72305 K2: Report error when using synthetic properties in case of mapped collections
  • KT-71226 K2 Evaluator: Code fragment compilation with unresolved classes does not fail with exception
  • KT-70233 Implement a deprecation error for FIELD-targeted annotations on annotation properties
  • KT-67517 Value class upcast to Any leaks carrier type interfaces
  • KT-72814 FIR: don't use function references in FirThisReference
  • KT-73153 K2: Standalone diagnostics on type arguments are not reported
  • KT-73011 K2: Allow overloads resolution for callable references based on expected type variable with constraints
  • KT-70139 Remove dependencies of debugger on K1 and old JVM backend
  • KT-69223 Drop parallel lowering mode in JVM backend
  • KT-7461 Forbid using projection modifiers inside top-level Array in annotation's value parameter
  • KT-53804 Restore old and incorrect logic of generating InnerClasses attributes for kotlin-stdlib
  • KT-52774 Resolve unqualified enum constants based on expected type
Compose compiler
New features

v2.1.21: Kotlin 2.1.21

Compare Source

Changelog

Backend. Native. Debug
  • KT-75991 Xcode 16.3: Fix lldb stepping test over an inline function
Compiler
  • KT-75992 Xcode 16.3: stacktraces on simulators are not symbolicated
  • KT-76663 KJS: KotlinNothingValueException caused by expression return since 2.1.20
  • KT-75756 Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom script
  • KT-76209 CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-70352 K2: False-negative CONFLICTING_UPPER_BOUNDS on Nothing bound
  • KT-74739 Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION_REFERENCE"
  • KT-75483 Native: redundant unboxing generated with smart cast
  • KT-71425 IR Inliner: investigate return type of an inlined block
Native
  • KT-76252 Native: executable crash with generic value classes with 2.1.20
Native. C and ObjC Import
  • KT-75781 Xcode 16.3: Fix cinterop tests failing with fatal error: could not build module '_stdint'
Native. Runtime. Memory
  • KT-74280 Native: GC.collect crashes with -Xallocator=std
Tools. CLI
  • KT-75588 [2.1.20-RC] "was compiled by a pre-release version of Kotlin and cannot be loaded by this version of the compiler" warnings despite using the same compiler version
  • KT-74663 kotlinc-js CLI: not providing -ir-output-dir results in NullPointerException
Tools. Compiler Plugins
  • KT-76162 "IllegalStateException: No mapping for symbol: VALUE_PARAMETER INSTANCE_RECEIVER" after updating to 2.1.20
Tools. Gradle
  • KT-73682 Compatibility with Gradle 8.12 release
  • KT-73142 Kotlin Gradle plugin: Remove usage of Gradle's internal ExecHandleBuilder
  • KT-36004 Update 'org.gradle.usage' attribute rules to support the 'JAVA_API' and 'JAVA_RUNTIME' value
  • KT-73968 KotlinDependencyManagement tries to mutate configuration after it was resolved
  • KT-73684 Run integration tests against Gradle 8.12
  • KT-72694 Accessing Task.project during execution is being deprecated in Gradle 8.12
  • KT-73683 Compile against Gradle API 8.12
Tools. Gradle. JS
  • KT-77119 KJS: Gradle: Setting custom environment variables in KotlinJsTest tasks no longer works
  • KT-74735 KGP uses Gradle internal CompositeProjectComponentArtifactMetadata
  • KT-71879 Notice of upcoming deprecation for Boolean 'is-' properties in Gradle Groovy scripts
Tools. Gradle. Multiplatform
  • KT-75808 KGP: MPP with jvm target and Gradle java-test-fixtures is broken
  • KT-75605 Dependency resolution fails in commonTest/nativeTest source sets for KMP module when depending on another project due to missing PSM
  • KT-75512 Maven-publish: ArtifactId is not correct inpom file with customized withXml
Tools. Incremental Compile
  • KT-62555 Wrong ABI fingerprint for inline function containing a lambda
  • KT-75883 Follow-up: switch from INSTANCE heuristic to outerClass chain
Tools. Kapt
  • KT-75936 K2 KAPT: unsupported FIR element kinds in constant evaluation
  • KT-75942 K2 KAPT: underscore not allowed here
Tools. Scripts
  • KT-76424 Dependencies in main.kts not working with 2.1.20
  • KT-76296 Kotlin script compiler crashes when secondary constructor calls a function
  • KT-75589 Scripts: "IndexOutOfBoundsException in jdk.internal.util.Preconditions.outOfBounds" when trying to extend a class which uses global variable
Tools. Wasm
  • KT-76161 Wasm: "export startUnitTests was not found" after updating to Kotlin 2.1.20
spring-projects/spring-boot (org.springframework.boot:spring-boot-dependencies)

v3.5.4

Compare Source

🐞 Bug Fixes

  • LambdaSafe.withFilter is not public #​46474
  • Executable JAR application class encounters performance issues when used with Palo Alto Network Cortex XDR agent #​46402
  • Runtime dependencies are missing from aotCompileClasspath and aotTestCompileClasspath when using Kotlin #​46398
  • Additional fields for structured JSON logging incompatible with nested ecs logging in 3.5.x #​46351
  • Change in DefaultErrorAttributes alters the shape of API validation error responses #​46260
  • jdbc.connections.active and jdbc.connections.idle metrics are not available when using Hikari in a native image #​46225
  • developmentOnly and testAndDevelopmentOnly dependencies may prevent implementation dependencies from being included in the uber-jar #​46205
  • Hash calculation for uber archive entries that require unpacking is inefficient #​46203
  • Permissions are applied inconsistently when building uber archives with Gradle #​46194
  • Environment variables using legacy dash format can no longer be bound #​46184
  • EmbeddedWebServerFactoryCustomizerAutoConfiguration fails when undertow-core is on the classpath and undertow-servlet is not #​46180
  • Executable JAR application class encounters performance issues #​46177
  • Executable JAR application class encounters performance issues #​46176
  • Setting spring.reactor.context-propagation has no effect when lazy initialization is enabled #​46174
  • Setting spring.netty.leak-detection has no effect when lazy initialization is enabled #​46170
  • SslInfo does not use its Clock when checking certificate validity #​46011

📔 Documentation

  • Fix description of spring.batch.job.enabled #​46247
  • Fix broken Kotlin examples in reference documentation #​46168
  • Add Logback Access Reactor Netty to community starters #​46060

🔨 Dependency Upgrades

❤️ Contributors

Thank you to all the contributors who worked on this release:

@​Dockerel, @​PiyalAhmed, @​benelog, @​dmitrysulman, @​izeye, @​ngocnhan-tran1996, @​nosan, and @​quaff

v3.5.3

Compare Source

🐞 Bug Fixes

  • Binder context does not restore previous source causing missing data on Spring Boot 3.5 or above #​46040

v3.5.2

Compare Source

🐞 Bug Fixes

  • IllegalArgumentException: 'name' must not be null thrown when property source filtering applied twice #​46032

v3.5.1

Compare Source

⚠️ Noteworthy Changes

  • This release upgrades to Tomcat 10.1.42 which has introduced limits for part count and header size in multipart/form-data requests. These limits can be customized using server.tomcat.max-part-count and server.tomcat.max-part-header-size respectively.

⭐ New Features

  • Allow Specifying ConfigData.Options On ConfigDataEnvironmentContributors #​42932

🐞 Bug Fixes

  • Executable JAR application class encounters performance issues when classpath URLs reference a host #​46028
  • Loading from spring.factories may fail with a ClassNotFoundException when the TCCL changes between calls #​46019
  • spring.couchbase.authentication.jks.private-key-password has no effect #​46006
  • Actuator heapdump endpoint is failing on modern OpenJ9 JVMs #​46005
  • UnboundConfigurationPropertiesException is no longer thrown from IndexedElementsBinder #​45994
  • DataSouceBuilder can fail with a NPE when the driver is null #​45992
  • JSON writer incorrectly escapes forward slash which can cause structure logging issues #​45980
  • ManagementContextAutoConfiguration adds a property source that degrades binding performance #​45968
  • ClientHttpConnectorAutoConfiguration fails to load when 'java.net.http.HttpClient' is unavailable #​45955
  • It is not possible to opt-out of profile validation or use profile names that contain '.' #​45947
  • GraphQlProperties.DeprecatedSse is not annotated as deprecated #​45878
  • SpringApplication.setEnvironmentPrefix is ignored when reading MANAGEMENT_SERVER_PORT #​45857
  • Write and delete operations no longer work in the Cloud Foundry actuator support with Spring Security due to CSRF protection #​45848
  • ConditionalOnAvailableEndpoint does not use the ConditionContext's ClassLoader to load exposure outcome contributors #​45803
  • Binding no longer works with sytem environment properties that are not upper case #​45741
  • ManagementWebServerFactoryCustomizer and ManagementErrorPageCustomizer should not have the same order #​45736
  • Default version of Awailitility is not compatible with Kotlin 1.9 baseline #​45673
  • Spring Boot 3.5's dependency management should have been upgraded to Lettuce 6.6.0.RELEASE #​45670
  • Spring Boot 3.5's dependency management should have been upgraded to Jedis 6.0.0 #​45669
  • SAML2 autoconfiguration is not imported by @WebMvcTest #​45666
  • Spring Boot 3.5's dependency management should have been upgraded to MongoDB 5.5.0 #​45660

📔 Documentation

  • Fix Docker security options links in Packaging OCI images sections #​46021
  • Improve documentation for configuring Spring Security with '/error' #​46009
  • Timestamps in Retrieving Audit Events examples do not match the accompanying text #​45997
  • Add SSL response structure to actuator info endpoint documentation #​45921
  • Update javadoc of test slice annotations to suggest MockitoBean rather than MockBean #​45915
  • Include configuration classes from all modules in the "Auto-configuration Classes" appendix #​45863
  • Links to Testcontainers javadoc for many classes not in the core testcontainers module do not work #​45844
  • Update documentation to reflect changes in TestRestTemplate's default redirect behavior #​45842
  • Deprecation replacement for spring.codec.* properties has a typo #​45743
  • Gradle Shadow Plugin link in the reference guide is outdated #​45740
  • Example of using prometheus-metrics-exporter-pushgateway has wrong artifactId #​45684
  • Document use of git-commit-id-maven-plugin consistently #​45683
  • Update javadoc of Configurer classes that apply sensible defaults to describe how they're typically used #​45656

🔨 Dependency Upgrades

❤️ Contributors

Thank you to all the contributors who worked on this release:

@​Peksa, @​Rutujakolte03, @​chanbinme, @​csbiy, @​davidlj95, @​izeye, @​juliojgd, @​ngocnhan-tran1996, @​nicolasgarea, @​nosan, @​quaff, @​shekharAggarwal, @​tanruian, and @​wonyongg

v3.5.0

Compare Source

Full release notes for Spring Boot 3.5 are available on the wiki.

⭐ New Features

  • Make heapdump endpoint restricted by default #​45624
  • Remove SSL status tag from metrics #​45602
  • Remove 'spring.http.client' deprecation and change 'spring.http.reactiveclient.settings' to 'spring.http.reactiveclient' #​45507

🐞 Bug Fixes

  • Unable to override/set nested ConfigurationProperties by passing as a system property #​45639
  • ValidationAutoConfiguration triggers early initialization of properties binding #​45618
  • Micrometer "enable" annotations property does not cover observed aspect #​45617
  • spring.graphql.sse.timeout is no longer exposed #​45613
  • SpringApplication.setEnvironmentPrefix is ignored when reading SPRING_PROFILES_ACTIVE #​45549
  • IllegalStateException when extracting using layers a module with no code of its own #​45449
  • Removed spring.batch.initialize-schema property is still considered #​45380
  • ReactorHttpClientBuilder does not offer a factory method to create the HttpClient #​45378
  • Suggested values for spring.jpa.hibernate.ddl-auto are not aligned with Hibernate #​45351
  • Custom default units declared on a field are ignored when binding properties in a native image #​45347
  • DockerRegistryConfigAuthentication uses the wrong serverUrl as a fallback for the Credentials helper #​45345
  • Various spring.datasource properties are mistakenly marked as ignored #​45342
  • JerseyWebApplicationInitializer always gets loaded, setting a ServletContext initParameter #​45297
  • DockerRegistryConfigAuthentication does not align with Docker CLI #​45292
  • Unlike the Docker CLI, "\x00" characters are not trimmed from a decoded Docker Registry password #​45290
  • CloudFoundry security matcher logs a warning due to use of the 'ignoring()' method #​32622

📔 Documentation

  • Document the java info contribution #​45634
  • Document the process info contribution #​45632
  • Document the os info contribution #​45630
  • Document typical spring.application.group and name use #​45628
  • Document that bean methods should be static when annotated with @ConfigurationPropertiesBinding #​45626
  • Document the way that primary Kotlin constructors are used when binding #​45553
  • Improve "profile" reference documentation with additional admonitions #​45551
  • Improve setEnvironmentPrefix(...) reference documentation #​45376
  • Document all the available Testcontainers integrations #​45367
  • Document when a spring.config.import value is relative and when it is fixed #​45363
  • Update org.cyclonedx.bom version in docs to 2.3.0 #​45320
  • Update link to "Parameter Name Retention" section of Spring Framework's release notes #​45299

🔨 Dependency Upgrades

❤️ Contributors

Thank you to all the contributors who worked on this release:

@​ahrytsiuk, @​izeye, @​lhotari, @​ngocnhan-tran1996, @​nosan, @​quaff, @​thecooldrop, and @​yybmion

v3.4.8

Compare Source

🐞 Bug Fixes

  • LambdaSafe.withFilter is not public #​46472
  • Executable JAR application class encounters performance issues when used with Palo Alto Network Cortex XDR agent #​46401
  • Runtime dependencies are missing from aotCompileClasspath and aotTestCompileClasspath when using Kotlin #​46397
  • jdbc.connections.active and jdbc.connections.idle metrics are not available when using Hikari in a native image #​46214
  • Hash calculation for uber archive entries that require unpacking is inefficient #​46202
  • Permissions are applied inconsistently when building uber archives with Gradle #​46193
  • EmbeddedWebServerFactoryCustomizerAutoConfiguration fails when undertow-core is on the classpath and undertow-servlet is not #​46178
  • Setting spring.netty.leak-detection has no effect when lazy initialization is enabled #​46164
  • Executable JAR application class encounters performance issues #​46063
  • developmentOnly and testAndDevelopmentOnly dependencies may prevent implementation dependencies from being included in the uber-jar #​46043
  • Binder context does not restore previous source causing missing data on Spring Boot 3.5 or above #​46039
  • Setting spring.reactor.context-propagation has no effect when lazy initialization is enabled #​45846

📔 Documentation

  • Fix description of spring.batch.job.enabled #​46228
  • Fix broken Kotlin examples in reference documentation #​46064

🔨 Dependency Upgrades

❤️ Contributors

Thank you to all the contributors who worked on this release:

@​Dockerel, @​PiyalAhmed, @​benelog, @​dmitrysulman, @​izeye, @​nosan, and @​quaff

v3.4.7

Compare Source

⚠️ Noteworthy Changes

  • This release upgrades to Tomcat 10.1.42 which has introduced limits for part count and header size in multipart/form-data requests. These limits can be customized using server.tomcat.max-part-count and server.tomcat.max-part-header-size respectively.

🐞 Bug Fixes

  • Executable JAR application class encounters performance issues when classpath URLs reference a host #​46027
  • Loading from spring.factories may fail with a ClassNotFoundException when the TCCL changes between calls #​46018
  • Actuator heapdump endpoint is failing on modern OpenJ9 JVMs #​46004
  • DataSouceBuilder can fail with a NPE when the driver is null #​45991
  • JSON writer incorrectly escapes forward slash which can cause structure logging issues #​45972
  • spring.couchbase.authentication.jks.private-key-password has no effect #​45883
  • ConditionalOnAvailableEndpoint does not use the ConditionContext's ClassLoader to load exposure outcome contributors #​45800
  • ManagementWebServerFactoryCustomizer and ManagementErrorPageCustomizer should not have the same order #​45728
  • SAML2 autoconfiguration is not imported by @WebMvcTest #​45650

📔 Documentation

  • Fix Docker security options links in Packaging OCI images sections #​46020
  • Improve documentation for configuring Spring Security with '/error' #​46008
  • Timestamps in Retrieving Audit Events examples do not match the accompanying text #​45996
  • Update javadoc of test slice annotations to suggest MockitoBean rather than MockBean #​45887
  • Include configuration classes from all modules in the "Auto-configuration Classes" appendix #​45861
  • Links to Testcontainers javadoc for many classes not in the core testcontainers module do not work #​45843
  • Add SSL response structure to actuator info endpoint documentation #​45792
  • Gradle Shadow Plugin link in the reference guide is outdated #​45739
  • Document use of git-commit-id-maven-plugin consistently #​45682
  • Update javadoc of Configurer classes that apply sensible defaults to describe how they're typically used #​45655
  • Clarify the situation with support for Prometheus PushGateway and the deprecated simpleclient #​45649

🔨 Dependency Upgrades

❤️ Contributors

Thank you to all the contributors who worked on this release:

@​chanbinme, @​csbiy, @​davidlj95, @​izeye, @​ngocnhan-tran1996, @​nicolasgarea, @​nosan, @​quaff, @​shekharAggarwal, and @​wonyongg

v3.4.6

Compare Source

🐞 Bug Fixes

  • Micrometer "enable" annotations property does not cover observed aspect #​45616
  • SpringApplication.setEnvironmentPrefix is ignored when reading SPRING_PROFILES_ACTIVE #​45548
  • IllegalStateException when extracting using layers a module with no code of its own #​45448
  • Suggested values for spring.jpa.hibernate.ddl-auto are not aligned with Hibernate #​45350
  • Custom default units declared on a field are ignored when binding properties in a native image #​45346
  • JerseyWebApplicationInitializer always gets loaded, setting a ServletContext initParameter #​45296

📔 Documentation

  • Document the java info contribution #​45633
  • Document the process info contribution #​45631
  • Document the os info contribution #​45629
  • Document typical spring.application.group and name use #​45627
  • Document that bean methods should be static when annotated with @ConfigurationPropertiesBinding #​45625
  • Document the way that primary Kotlin constructors are used when binding #​45552
  • Improve "profile" reference documentation with additional admonitions #​45550
  • Improve setEnvironmentPrefix(...) reference documentation #​45375
  • Document all the available Testcontainers integrations #​45366
  • Document when a spring.config.import value is relative and when it is fixed #​45362
  • Update link to "Parameter Name Retention" section of Spring Framework's release notes #​45298

🔨 Dependency Upgrades

❤️ Contributors

Thank you to all the contributors who worked on this release:

@​ahrytsiuk, @​izeye, @​ngocnhan-tran1996, @​nosan, @​quaff, @​thecooldrop, and @​yybmion

v3.4.5

Compare Source

🐞 Bug Fixes

  • Spring Boot with native image container image build fails on podman due to directory permissions #​45256
  • Neo4jReactiveDataAutoConfiguration assumes that certain beans are available #​45235
  • Wrong jOOQ exception translator with empty db name #​45219
  • MessageSourceMessageInterpolator does not replace a parameter when the message matches its code #​45213
  • IntegrationMbeanExporter is not eligible for getting processed by all BeanPostProcessors warnings are shown when using JMX #​45194
  • OAuth2AuthorizationServerJwtAutoConfiguration uses @ConditionalOnClass incorrectly #​45178
  • MongoDB's dependency management is missing Kotlin coroutine driver modules #​45159
  • ImagePlatform can cause "OS must not be empty" IllegalArgumentException #​45153
  • TypeUtils does not handle generics with identical names in different positions #​45039
  • HttpClient5 5.4.3 breaks local Docker transport #​45028
  • spring.datasource.hikari.data-source-class-name cannot be used as a driver class name is always required and Hikari does not accept both #​45002
  • Post-processing to apply custom JdbcConnectionDetails triggers an NPE in Hikari if the JDBC URL is for an unknown driver #​44998
  • DataSourceBuilder triggers an NPE in Hikari when trying to build a DataSource with a JDBC URL for an unknown driver #​44995
  • SSL config does not watch for symlink file changes #​44887
  • EmbeddedLdapAutoConfiguration should not rely on PreDestroy #​44874
  • DataSourceTransactionManagerAutoConfiguration should run after DataSourceAutoConfiguration #​44819
  • JsonValueWriter can throw StackOverflowError on deeply nested items #​44627
  • In a reactive web app, SslBundle can no longer open store file locations without using a 'file:' prefix #​44535
  • Logging a Path object using structured logging throws StackOverflowError #​44507

📔 Documentation

  • Make @Component a javadoc link #​45258
  • Fix documentation links to buildpacks.io #​45241
  • Clarify the use of multiple profile expressions with "spring.config.activate.on-profile" #​45224
  • Show the use of token properties in authorization server clients configuration example #​45176
  • Add details of the purpose of the metrics endpoint #​45047
  • Escape the asterisk in spring-application.adoc #​45033
  • Add reference to Styra (OPA) Spring Boot SDK #​44976
  • Update CDS documentation to cover AOTCache #​44970
  • WebFlux security documentation incorrectly links to servlet classes #​44966
  • Replace mentions of deprecated MockBean annotation #​44947
  • TaskExecution documentation should describe what happens when multiple Executor beans are present #​44908
  • Documentation lists coordinates for some dependencies that are not actually managed #​44879
  • Polish javadoc of SpringProfileAction #​44826

🔨 Dependency Upgrades

❤️ Contributors

Thank you to all the contributors who worked on this release:

@​EvaristeGalois11, @​MelleD, @​aahlenst, @​ali-jalaal, @​erichaagdev, @​florgust, @​geniusYoo, @​izeye, @​jonatan-ivanov, @​nenros, @​nevenc, @​ngocnhan-tran1996, @​nosan, @​quaff, and @​rainboyan


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | Age | Confidence | |---|---|---|---|---|---| | [actions/checkout](https://github.com/actions/checkout) | action | major | `v3` -> `v5` | [![age](https://developer.mend.io/api/mc/badges/age/github-tags/actions%2fcheckout/v5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/actions%2fcheckout/v3/v5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [https://github.com/actions/setup-java](https://github.com/actions/setup-java) | action | major | `v3` -> `v4` | [![age](https://developer.mend.io/api/mc/badges/age/github-tags/actions%2fsetup-java/v4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/actions%2fsetup-java/v3/v4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [org.jetbrains.kotlin:kotlin-maven-allopen](https://kotlinlang.org/) ([source](https://github.com/JetBrains/kotlin)) | build | minor | `2.1.20` -> `2.2.10` | [![age](https://developer.mend.io/api/mc/badges/age/maven/org.jetbrains.kotlin:kotlin-maven-allopen/2.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.jetbrains.kotlin:kotlin-maven-allopen/2.1.20/2.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [org.jetbrains.kotlin:kotlin-maven-noarg](https://kotlinlang.org/) ([source](https://github.com/JetBrains/kotlin)) | build | minor | `2.1.20` -> `2.2.10` | [![age](https://developer.mend.io/api/mc/badges/age/maven/org.jetbrains.kotlin:kotlin-maven-noarg/2.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.jetbrains.kotlin:kotlin-maven-noarg/2.1.20/2.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [org.jetbrains.kotlin:kotlin-maven-plugin](https://kotlinlang.org/) ([source](https://github.com/JetBrains/kotlin)) | build | minor | `2.1.20` -> `2.2.10` | [![age](https://developer.mend.io/api/mc/badges/age/maven/org.jetbrains.kotlin:kotlin-maven-plugin/2.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.jetbrains.kotlin:kotlin-maven-plugin/2.1.20/2.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [org.jetbrains.kotlin:kotlin-bom](https://kotlinlang.org/) ([source](https://github.com/JetBrains/kotlin)) | import | minor | `2.1.20` -> `2.2.10` | [![age](https://developer.mend.io/api/mc/badges/age/maven/org.jetbrains.kotlin:kotlin-bom/2.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.jetbrains.kotlin:kotlin-bom/2.1.20/2.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [org.springframework.boot:spring-boot-dependencies](https://spring.io/projects/spring-boot) ([source](https://github.com/spring-projects/spring-boot)) | import | minor | `3.4.4` -> `3.5.4` | [![age](https://developer.mend.io/api/mc/badges/age/maven/org.springframework.boot:spring-boot-dependencies/3.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.springframework.boot:spring-boot-dependencies/3.4.4/3.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- > ⚠️ **Warning** > > Some dependencies could not be looked up. Check the warning logs for more information. --- ### Release Notes <details> <summary>actions/checkout (actions/checkout)</summary> ### [`v5`](https://github.com/actions/checkout/compare/v4...v5) [Compare Source](https://github.com/actions/checkout/compare/v4...v5) ### [`v4`](https://github.com/actions/checkout/blob/HEAD/CHANGELOG.md#v422) [Compare Source](https://github.com/actions/checkout/compare/v3...v4) - `url-helper.ts` now leverages well-known environment variables by [@&#8203;jww3](https://github.com/jww3) in https://github.com/actions/checkout/pull/1941 - Expand unit test coverage for `isGhes` by [@&#8203;jww3](https://github.com/jww3) in https://github.com/actions/checkout/pull/1946 </details> <details> <summary>actions/setup-java (https://github.com/actions/setup-java)</summary> ### [`v4`](https://github.com/actions/setup-java/compare/v3...v4) [Compare Source](https://github.com/actions/setup-java/compare/v3...v4) </details> <details> <summary>JetBrains/kotlin (org.jetbrains.kotlin:kotlin-maven-allopen)</summary> ### [`v2.2.10`](https://github.com/JetBrains/kotlin/blob/HEAD/ChangeLog.md#2210) [Compare Source](https://github.com/JetBrains/kotlin/compare/v2.2.0...v2.2.10) ##### Compiler - [`KT-79276`](https://youtrack.jetbrains.com/issue/KT-79276) Dexing fails with "Cannot read field X because <local0> is null" with 2.2.0 - [`KT-79442`](https://youtrack.jetbrains.com/issue/KT-79442) "Multiple annotations of type kotlin.coroutines.jvm.internal.DebugMetadata": 2.2.0-Beta1 generates broken code with JVM default suspend methods in interfaces - [`KT-78815`](https://youtrack.jetbrains.com/issue/KT-78815) `Symbol not found: __ZNSt3__117bad_function_callD1Ev` error on iOS 15.5 simulator in Xcode 16.3 after update to 2.2.0-Beta2 - [`KT-78501`](https://youtrack.jetbrains.com/issue/KT-78501) K2: Missing \[ABSTRACT\_SUPER\_CALL] diagnostics for delegated interface method leads to AssertionError: isCompiledToJvmDefault during IR lowering - [`KT-78479`](https://youtrack.jetbrains.com/issue/KT-78479) IR lowering failed / Unexpected null argument for composable call - [`KT-76477`](https://youtrack.jetbrains.com/issue/KT-76477) Kotlin/Native: fix compiler performance reporting in sources->klib and klibs->binary - [`KT-78736`](https://youtrack.jetbrains.com/issue/KT-78736) Missing \[NOT\_YET\_SUPPORTED\_IN\_INLINE] diagnostics because of incorrect context update - [`KT-77685`](https://youtrack.jetbrains.com/issue/KT-77685) "IllegalArgumentException: Sequence contains more than one matching element" - [`KT-76365`](https://youtrack.jetbrains.com/issue/KT-76365) K2: Missing ABSTRACT\_SUPER\_CALL - [`KT-78352`](https://youtrack.jetbrains.com/issue/KT-78352) False-positive IDENTITY\_SENSITIVE\_OPERATIONS\_WITH\_VALUE\_TYPE when comparing with equality operator (==) ##### Compose compiler - [`KT-78479`](https://youtrack.jetbrains.com/issue/KT-78479) Ensure that default transform affects functions entered through a call - [`KT-78490`](https://youtrack.jetbrains.com/issue/KT-78490) Fix visibility for default wrappers of protected methods - [`b/408492167`](https://issuetracker.google.com/issues/408492167) Emit parameter names in Compose source information ##### JavaScript - [`KT-79050`](https://youtrack.jetbrains.com/issue/KT-79050) KJS / IC: "Unexpected body of primary constructor for processing irClass" - [`KT-79089`](https://youtrack.jetbrains.com/issue/KT-79089) KJS: Could not load reporter / Cannot find module 'mocha' when running jsNode tests ##### Native - [`KT-79075`](https://youtrack.jetbrains.com/issue/KT-79075) Stuck on Kotlin\_getSourceInfo\_core\_symbolication - [`KT-76178`](https://youtrack.jetbrains.com/issue/KT-76178) LLVM Update: symbol '\_\_ZnwmSt19\_\_type\_descriptor\_t' missing ##### Native. Runtime. Memory - [`KT-78925`](https://youtrack.jetbrains.com/issue/KT-78925) Crash SIGABRT on Apple Watch after updating Kotlin to 2.2.0 ##### Tools. CLI - [`KT-77445`](https://youtrack.jetbrains.com/issue/KT-77445) UNRESOLVED\_REFERENCE when importing classes from kotlin-stdlib - [`KT-78263`](https://youtrack.jetbrains.com/issue/KT-78263) java.lang.NoClassDefFoundError: Could not initialize class com.intellij.psi.impl.PsiSubstitutorImpl - [`KT-78318`](https://youtrack.jetbrains.com/issue/KT-78318) Unresolved reference when compiling kotlin/JS project on fresh master ##### Tools. Compiler Plugins - [`KT-78490`](https://youtrack.jetbrains.com/issue/KT-78490) "AssertionError: SyntheticAccessorLowering should not attempt to modify other files" when calling protected open composable with default argument - [`KT-78038`](https://youtrack.jetbrains.com/issue/KT-78038) Make jvm-abi-gen compiler plugin output classloader-friendly ##### Tools. Gradle - [`KT-77023`](https://youtrack.jetbrains.com/issue/KT-77023) Support creating KotlinJvmAndroidCompilation in KotlinBaseApiPlugin ##### Tools. Gradle. JS - [`KT-78504`](https://youtrack.jetbrains.com/issue/KT-78504) \[2.2.0-RC3] NPM Tasks in 2.2 RCs produce broken/unusable build cache entries ##### Tools. Gradle. Multiplatform - [`KT-77466`](https://youtrack.jetbrains.com/issue/KT-77466) KMP - testFixturesApi and similar configurations do not affect jvmTestFixtures source set - [`KT-68646`](https://youtrack.jetbrains.com/issue/KT-68646) Compose extension's metrics/reports dir should use subdirs based on target ##### Tools. Gradle. Native - [`KT-77977`](https://youtrack.jetbrains.com/issue/KT-77977) "Unknown hardware platform: riscv64" on JVM project build ##### Tools. Incremental Compile - [`KT-78807`](https://youtrack.jetbrains.com/issue/KT-78807) Changing ABI fingerprint on non-ABI changes when lambda passed to inlined function ##### Tools. Kapt - [`KT-77853`](https://youtrack.jetbrains.com/issue/KT-77853) K2 KAPT: backend internal error: exception during IR fake override builder - [`KT-79138`](https://youtrack.jetbrains.com/issue/KT-79138) K2: KAPT Java Stub Gen: `Unresolved reference` with `@kotlin`.Metadata in Java in 2.2.0 ### [`v2.2.0`](https://github.com/JetBrains/kotlin/blob/HEAD/ChangeLog.md#220) [Compare Source](https://github.com/JetBrains/kotlin/compare/v2.1.21...v2.2.0) ##### Analysis API - [`KT-73337`](https://youtrack.jetbrains.com/issue/KT-73337) Migrate analysis sources to new IR parameter API - [`KT-75880`](https://youtrack.jetbrains.com/issue/KT-75880) K2 Mode: Typealias reference resolves to the underlying class in KMP project - [`KT-74246`](https://youtrack.jetbrains.com/issue/KT-74246) KaVisibilityChecker.isVisible is inefficient with multiple calls on the same use-site - [`KT-57733`](https://youtrack.jetbrains.com/issue/KT-57733) Analysis API: Use optimized `ModuleWithDependenciesScope`s in combined symbol providers - [`KT-69535`](https://youtrack.jetbrains.com/issue/KT-69535) Redesign 'containingSymbol' - [`KT-69950`](https://youtrack.jetbrains.com/issue/KT-69950) Analysis API: Introduce `isSubtypeOf(ClassId)` - [`KT-68393`](https://youtrack.jetbrains.com/issue/KT-68393) Analysis API: Rename `KaClassLikeSymbol. classIdIfNonLocal` to `classId` - [`KT-62924`](https://youtrack.jetbrains.com/issue/KT-62924) Analysis API: rename KtCallableSymbol.callableIdIfNonLocal -> callableId ##### Analysis API. Code Compilation - [`KT-75502`](https://youtrack.jetbrains.com/issue/KT-75502) K2: IDEA hangs when evaluating inside kotlin-stdlib modules in the Kotlin project - [`KT-73077`](https://youtrack.jetbrains.com/issue/KT-73077) Evaluation of inline functions is broken inside Kotlin project and Amper module in Idea sources - [`KT-73936`](https://youtrack.jetbrains.com/issue/KT-73936) K2: CyclicInlineDependencyException: Inline functions have a cyclic dependency in evaluator - [`KT-74582`](https://youtrack.jetbrains.com/issue/KT-74582) InterpreterMethodNotFoundError when trying to evaluate simple expressions after recent fixes - [`KT-74524`](https://youtrack.jetbrains.com/issue/KT-74524) Compilation exception with incorrect JvmName annotation arguments - [`KT-74443`](https://youtrack.jetbrains.com/issue/KT-74443) Compilation peer collector ignores inline property accessors ##### Analysis API. FIR ##### New Features - [`KT-73493`](https://youtrack.jetbrains.com/issue/KT-73493) Support context parameters ##### Performance Improvements - [`KT-75790`](https://youtrack.jetbrains.com/issue/KT-75790) Experiment with increasing DEFAULT\_LOCKING\_INTERVAL time - [`KT-72159`](https://youtrack.jetbrains.com/issue/KT-72159) LLFirCompilerRequiredAnnotationsTargetResolver: consider rewriting it to use honest jumping locks ##### Fixes - [`KT-76331`](https://youtrack.jetbrains.com/issue/KT-76331) Cleanup FileStructureElement for classes - [`KT-73117`](https://youtrack.jetbrains.com/issue/KT-73117) K2 AA: Exception "Setter is not found" when val has a setter without body - [`KT-76540`](https://youtrack.jetbrains.com/issue/KT-76540) K2: Missing library dependency on Android SDK from androidx.activity-1.8.2 causes LiveEdit failures - [`KT-73266`](https://youtrack.jetbrains.com/issue/KT-73266) K2. "Declaration should have non-local container" with unclosed annotation on top-level function - [`KT-76432`](https://youtrack.jetbrains.com/issue/KT-76432) JavaClassUseSiteMemberScope: Expected FirResolvedTypeRef with ConeKotlinType but was FirUserTypeRefImpl - [`KT-76217`](https://youtrack.jetbrains.com/issue/KT-76217) K2 AA: "No fir element was found for KtParameter" with multiple context parameter lists - [`KT-74740`](https://youtrack.jetbrains.com/issue/KT-74740) Highlighting is broken after the built-in serialization refactoring - [`KT-76366`](https://youtrack.jetbrains.com/issue/KT-76366) ContextCollector: annotations on class members don't have the class as implicit receiver - [`KT-76352`](https://youtrack.jetbrains.com/issue/KT-76352) ContextCollector: wrong class annotation context in BODY mode - [`KT-76341`](https://youtrack.jetbrains.com/issue/KT-76341) ContextCollector: support dangling modifiers - [`KT-76332`](https://youtrack.jetbrains.com/issue/KT-76332) "Declaration should have non-local container" for declaration inside file annotation - [`KT-76115`](https://youtrack.jetbrains.com/issue/KT-76115) Disable `FirElementBuilder#getFirForElementInsideAnnotations` optimization for files, classes and scripts - [`KT-76347`](https://youtrack.jetbrains.com/issue/KT-76347) ContextCollector: avoid resolution for enum entry annotations - [`KT-76272`](https://youtrack.jetbrains.com/issue/KT-76272) Cleanup AbstractFileStructureTest - [`KT-75542`](https://youtrack.jetbrains.com/issue/KT-75542) K2 AA: "FirDeclaration was not found for class KtNamedFunction, fir is class FirErrorExpressionImpl" for unclosed annotation on member function - [`KT-73719`](https://youtrack.jetbrains.com/issue/KT-73719) K2. "FirDeclaration was not found for class KtDestructuringDeclaration, fir is class FirBlockImpl" on incorrect chain call - [`KT-72908`](https://youtrack.jetbrains.com/issue/KT-72908) K2 Analysis API: "FirDeclaration was not found for class org.jetbrains.kotlin.psi.KtFunctionLiteral" with non-local destructuring declaration without initializer before `init` block - [`KT-75532`](https://youtrack.jetbrains.com/issue/KT-75532) ContextCollector: scope for an anonymous function type parameter contains regular parameters - [`KT-74508`](https://youtrack.jetbrains.com/issue/KT-74508) `FirElementBuilder#findElementInside` should reuse logic from `KtToFirMapping#getFir` - [`KT-73066`](https://youtrack.jetbrains.com/issue/KT-73066) \[LL] Enable low-level-api-fir-native even with the disabled native part - [`KT-75132`](https://youtrack.jetbrains.com/issue/KT-75132) Investigate failures of sandbox diagnostic test - [`KT-75130`](https://youtrack.jetbrains.com/issue/KT-75130) Set up LL FIR tests for sandbox test data - [`KT-73386`](https://youtrack.jetbrains.com/issue/KT-73386) Standardize LL FIR test for compiler test data - [`KT-75125`](https://youtrack.jetbrains.com/issue/KT-75125) ISE “Value classes cannot have 0 fields” on instantiating inline class without fields - [`KT-75179`](https://youtrack.jetbrains.com/issue/KT-75179) ContextCollector: support error properties - [`KT-74632`](https://youtrack.jetbrains.com/issue/KT-74632) K2: ISE FirLazyDelegatedConstructorCall should be calculated before accessing - [`KT-74818`](https://youtrack.jetbrains.com/issue/KT-74818) K2 AA: "FirDeclaration was not found for class KtTypeParameter, fir is null" with TYPE\_PARAMETERS\_NOT\_ALLOWED on anonymous function - [`KT-73183`](https://youtrack.jetbrains.com/issue/KT-73183) Support context parameters in ContextCollectorVisitor - [`KT-60350`](https://youtrack.jetbrains.com/issue/KT-60350) K2 IDE: top level destructuring RHS should be resolvable - [`KT-74794`](https://youtrack.jetbrains.com/issue/KT-74794) K2: FirLazyExpression should be calculated before accessing with context parameter and implicit return type - [`KT-72938`](https://youtrack.jetbrains.com/issue/KT-72938) Get rid of KaFirAnnotationListForReceiverParameter - [`KT-73727`](https://youtrack.jetbrains.com/issue/KT-73727) Exception in implicit type resolution ##### Analysis API. Infrastructure - [`KT-74917`](https://youtrack.jetbrains.com/issue/KT-74917) \[Analysis API, Test Framework] Introduce a way to acquire `PsiFile` for a given `TestFile` in `KtTestModule` ##### Analysis API. Light Classes - [`KT-73405`](https://youtrack.jetbrains.com/issue/KT-73405) Get rid of KtElement#{symbolPointer, symbolPointerOfType} API usages - [`KT-75391`](https://youtrack.jetbrains.com/issue/KT-75391) Reduce the amount of psi-based logic in light classes - [`KT-70001`](https://youtrack.jetbrains.com/issue/KT-70001) SLC adds `@Override` with zero text offset on `override` member - [`KT-75755`](https://youtrack.jetbrains.com/issue/KT-75755) K2. False positive red code on vararg parameters in Kotlin class with `@JvmOverloads` when called from Java - [`KT-75397`](https://youtrack.jetbrains.com/issue/KT-75397) Constructors and functions with non-last vararg parameters are treated as varargs - [`KT-74868`](https://youtrack.jetbrains.com/issue/KT-74868) Support context parameters - [`KT-74733`](https://youtrack.jetbrains.com/issue/KT-74733) SymbolPsiLiteral.text == value for Java constant - [`KT-74620`](https://youtrack.jetbrains.com/issue/KT-74620) Delegated functions with value classes are present in light classes - [`KT-74595`](https://youtrack.jetbrains.com/issue/KT-74595) Static functions with value classes are present in light classes - [`KT-74284`](https://youtrack.jetbrains.com/issue/KT-74284) Synthetic data class methods using value class types present in LC ##### Analysis API. Providers and Caches ##### Performance Improvements - [`KT-62115`](https://youtrack.jetbrains.com/issue/KT-62115) Analysis API: Package providers are not cached per search scope - [`KT-74463`](https://youtrack.jetbrains.com/issue/KT-74463) Analysis API: `LLNativeForwardDeclarationsSymbolProvider` queries its cache even when the `ClassId` cannot represent a native forward declaration ##### Fixes - [`KT-74541`](https://youtrack.jetbrains.com/issue/KT-74541) Analysis API: Include files generated by resolve extensions in `KaModule` content scopes - [`KT-64236`](https://youtrack.jetbrains.com/issue/KT-64236) Analysis API: Introduce a separate module for fallback dependencies of library source modules - [`KT-74090`](https://youtrack.jetbrains.com/issue/KT-74090) Analysis API: Support dumb mode (restricted analysis) - [`KT-63780`](https://youtrack.jetbrains.com/issue/KT-63780) Analysis API: Invalidate resolvable library sessions when binary library modules are modified - [`KT-72388`](https://youtrack.jetbrains.com/issue/KT-72388) KaFirStopWorldCacheCleaner: Control-flow exceptions - [`KT-74943`](https://youtrack.jetbrains.com/issue/KT-74943) Analysis API: Replace `KotlinGlobalModificationService` with simpler global modification event publishing and listener-based modification trackers - [`KT-70518`](https://youtrack.jetbrains.com/issue/KT-70518) K2: Analysis API: Access indices outside of `ConcurrentMap` computation in symbol providers - [`KT-74302`](https://youtrack.jetbrains.com/issue/KT-74302) Analysis API: `LLFirProvider` should disregard self-declarations in `getFirClassifierBy*` - [`KT-67868`](https://youtrack.jetbrains.com/issue/KT-67868) Analysis API: Improve the architecture of `LLFirKotlinSymbolProvider`s ##### Analysis API. Standalone - [`KT-72810`](https://youtrack.jetbrains.com/issue/KT-72810) withMultiplatformLightClassSupport is inconvenient in Standalone ##### Analysis API. Stubs and Decompilation - [`KT-71787`](https://youtrack.jetbrains.com/issue/KT-71787) `PsiRawFirBuilder.Visitor#visitStringTemplateExpression` forces AST loading - [`KT-68484`](https://youtrack.jetbrains.com/issue/KT-68484) K2 IDE, Analysis API: "We should be able to find a symbol for function" for getting KaType of `Iterable<T>.map(transform: (T) -> R)` parameter in J2K ##### Analysis API. Surface ##### New Features - [`KT-74475`](https://youtrack.jetbrains.com/issue/KT-74475) Add `isInline` for `KaPropertySymbol` - [`KT-75063`](https://youtrack.jetbrains.com/issue/KT-75063) KaScopeContext: support context parameters ##### Performance Improvements - [`KT-73669`](https://youtrack.jetbrains.com/issue/KT-73669) Support psi-based symbol pointer for implicit primary constructors - [`KT-76008`](https://youtrack.jetbrains.com/issue/KT-76008) Provide PSI-based implementation for `KaFirNamedClassSymbol#companionObject` - [`KT-70165`](https://youtrack.jetbrains.com/issue/KT-70165) Introduce PSI-based `KaSymbol`s for K2 ##### Fixes - [`KT-72730`](https://youtrack.jetbrains.com/issue/KT-72730) K2: "Unexpected owner function: KtNamedFunction" on vararg val parameter in function - [`KT-75123`](https://youtrack.jetbrains.com/issue/KT-75123) K2. KaFirNamedFunctionSymbol should contain a receiver - [`KT-75894`](https://youtrack.jetbrains.com/issue/KT-75894) Cannot build KaFirJavaFieldSymbol for FirFieldImpl - [`KT-75115`](https://youtrack.jetbrains.com/issue/KT-75115) Analysis API: The `JavaModuleResolver` compiler class is leaked to Analysis API platform implementations - [`KT-76018`](https://youtrack.jetbrains.com/issue/KT-76018) K2: Stop the wold leads to deadlock/freeze - [`KT-76011`](https://youtrack.jetbrains.com/issue/KT-76011) `KaFirNamedClassSymbol#companionObject` doesn't provide generated objects generated by compiled plugins - [`KT-72482`](https://youtrack.jetbrains.com/issue/KT-72482) "KotlinIllegalArgumentExceptionWithAttachments: Expected all candidates to have same callableId but some of them but was different" on trying to add the import - [`KT-75586`](https://youtrack.jetbrains.com/issue/KT-75586) `KaFirPropertyGetterSymbol#isInline` and `KaFirPropertySetterSymbol#isInline` is incorrect for accessors with explicit modifier - [`KT-58572`](https://youtrack.jetbrains.com/issue/KT-58572) Analysis API: Enforcing STATUS resolve in 'KtFirNamedClassOrObjectSymbol.visibility' may cause lazy resolve contract violation - [`KT-75574`](https://youtrack.jetbrains.com/issue/KT-75574) Recognize injected code fragment copies - [`KT-75573`](https://youtrack.jetbrains.com/issue/KT-75573) Recognize physical file copies as dangling files - [`KT-74801`](https://youtrack.jetbrains.com/issue/KT-74801) Analysis API: Publish/subscribe to modification events with a single message bus topic - [`KT-73290`](https://youtrack.jetbrains.com/issue/KT-73290) Analysis API: Improve the architecture of content scopes and resolution scopes - [`KT-68901`](https://youtrack.jetbrains.com/issue/KT-68901) Constructor delegation call receiver missing in fir implementation - [`KT-72639`](https://youtrack.jetbrains.com/issue/KT-72639) Support context parameter API - [`KT-73112`](https://youtrack.jetbrains.com/issue/KT-73112) AA: FirExpression.toKtReceiverValue should handle context receivers properly - [`KT-74905`](https://youtrack.jetbrains.com/issue/KT-74905) Cannot find context receiver in FIR declaration - [`KT-74563`](https://youtrack.jetbrains.com/issue/KT-74563) `createPointer` is overloaded not for all implementations - [`KT-73722`](https://youtrack.jetbrains.com/issue/KT-73722) Analysis API: Automatically check that the API surface is fully documented - [`KT-65065`](https://youtrack.jetbrains.com/issue/KT-65065) Provide `KtTypeReference#getShortTypeText()` ##### Backend. Native. Debug - [`KT-75991`](https://youtrack.jetbrains.com/issue/KT-75991) Xcode 16.3: Fix lldb stepping test over an inline function ##### Backend. Wasm ##### New Features - [`KT-59032`](https://youtrack.jetbrains.com/issue/KT-59032) Support instantiation of annotation classes on WASM ##### Fixes - [`KT-77622`](https://youtrack.jetbrains.com/issue/KT-77622) K/Wasm: investigate CMP crash on mobile Safari - [`KT-76747`](https://youtrack.jetbrains.com/issue/KT-76747) \[Wasm] Wasm name section absent for wasm structs - [`KT-76701`](https://youtrack.jetbrains.com/issue/KT-76701) K/Wasm: custom formatters are not loaded when a project is built with incremental compilation - [`KT-66081`](https://youtrack.jetbrains.com/issue/KT-66081) K/WASM: `0/0`, `5/0` and `5%0`throw not ArithmeticException, but RuntimeError - [`KT-76287`](https://youtrack.jetbrains.com/issue/KT-76287) \[Wasm] Enable stdlib and kotlin.test tests after compiler bootstrap - [`KT-75871`](https://youtrack.jetbrains.com/issue/KT-75871) \[Wasm] Implement new RTTI approach - [`KT-75872`](https://youtrack.jetbrains.com/issue/KT-75872) Wasm / IC: IllegalStateException: IC internal error: can not find library - [`KT-74441`](https://youtrack.jetbrains.com/issue/KT-74441) K/Wasm: incorrect 1e-45.toString() - [`KT-59118`](https://youtrack.jetbrains.com/issue/KT-59118) WASM: floating point toString inconsistencies - [`KT-68948`](https://youtrack.jetbrains.com/issue/KT-68948) Wasm: float from variable is printed with many decimal points - [`KT-69107`](https://youtrack.jetbrains.com/issue/KT-69107) \[wasm] Seemingly incorrect rounding - [`KT-73362`](https://youtrack.jetbrains.com/issue/KT-73362) Migrate K/Wasm sources to new IR parameter API ##### Compiler ##### New Features - [`KT-70722`](https://youtrack.jetbrains.com/issue/KT-70722) Implement better Kotlin warnings for value classes and JEP 390 (Warnings for Value-Based Classes) - [`KT-71768`](https://youtrack.jetbrains.com/issue/KT-71768) Enable -Xjvm-default=all-compatibility by default to generate JVM default interface methods - [`KT-54205`](https://youtrack.jetbrains.com/issue/KT-54205) Support jakarta Nullability annotations - [`KT-57919`](https://youtrack.jetbrains.com/issue/KT-57919) Store all annotations in Kotlin metadata on JVM under a flag - [`KT-73255`](https://youtrack.jetbrains.com/issue/KT-73255) Change defaulting rule for annotations - [`KT-74382`](https://youtrack.jetbrains.com/issue/KT-74382) Annotating Java record components for `@JvmRecord` data class - [`KT-74811`](https://youtrack.jetbrains.com/issue/KT-74811) Prohibit usages of `@MustUseValue` / `@IgnorableValue` if RV checker is not enabled - [`KT-74806`](https://youtrack.jetbrains.com/issue/KT-74806) Implement feature flag for improved unused return value checker - [`KT-74809`](https://youtrack.jetbrains.com/issue/KT-74809) Support unnamed local variables - [`KT-73508`](https://youtrack.jetbrains.com/issue/KT-73508) Add a warning diagnostic for using kotlin.concurrent.AtomicRef<Int> - [`KT-72941`](https://youtrack.jetbrains.com/issue/KT-72941) ANNOTATIONS\_ON\_BLOCK\_LEVEL\_EXPRESSION\_ON\_THE\_SAME\_LINE missing in K2 - [`KT-74497`](https://youtrack.jetbrains.com/issue/KT-74497) Warn about incompatible Kotlin and Java targets in annotations - [`KT-75061`](https://youtrack.jetbrains.com/issue/KT-75061) Support context-sensitive resolution in type position - [`KT-75315`](https://youtrack.jetbrains.com/issue/KT-75315) Support context-sensitive resolution in the call-argument position - [`KT-75316`](https://youtrack.jetbrains.com/issue/KT-75316) Support context-sensitive resolution for expression-position with expected type - [`KT-76088`](https://youtrack.jetbrains.com/issue/KT-76088) Support context-sensitive resolution for annotation arguments - [`KT-74049`](https://youtrack.jetbrains.com/issue/KT-74049) Introduce special override rule to allow overriding T! with T & Any ##### Performance Improvements - [`KT-76395`](https://youtrack.jetbrains.com/issue/KT-76395) Performance degradation on 28.03.2025 - [`KT-76422`](https://youtrack.jetbrains.com/issue/KT-76422) FirJavaFacade#createFirJavaClass: do not compute super type references right away - [`KT-75957`](https://youtrack.jetbrains.com/issue/KT-75957) K2: PsiRawFirBuilder.Visitor#toFirExpression forces AST loading via getSpreadElement - [`KT-74824`](https://youtrack.jetbrains.com/issue/KT-74824) Exponential performance caused by nested flexible types - [`KT-62855`](https://youtrack.jetbrains.com/issue/KT-62855) K2: extra allocation for SAM conversion compared to K1 - [`KT-74977`](https://youtrack.jetbrains.com/issue/KT-74977) K/N: support stack array for Array(size) call - [`KT-74369`](https://youtrack.jetbrains.com/issue/KT-74369) Exponential compiler memory usage in specific situations with type inference ##### Fixes - [`KT-76606`](https://youtrack.jetbrains.com/issue/KT-76606) Enable 'Indy: Allow lambdas with annotations' by default - [`KT-77301`](https://youtrack.jetbrains.com/issue/KT-77301) False positive Context Parameter resolution when using DslMarker - [`KT-74389`](https://youtrack.jetbrains.com/issue/KT-74389) K2: False positive NON\_EXPORTABLE\_TYPE on non-Unit `Promise<...>` in K/JS - [`KT-77219`](https://youtrack.jetbrains.com/issue/KT-77219) "`@Composable` annotation is not applicable" on vararg `@Composable` () -> Unit in Kotlin 2.2.0 - [`KT-76357`](https://youtrack.jetbrains.com/issue/KT-76357) K2: a nested class annotation observes member declarations of the outer class - [`KT-72734`](https://youtrack.jetbrains.com/issue/KT-72734) Support new callable reference nodes in Kotlin Native - [`KT-74421`](https://youtrack.jetbrains.com/issue/KT-74421) K2: Missing "val cannot be reassigned" when trying to assign a value to parent's "val" - [`KT-63720`](https://youtrack.jetbrains.com/issue/KT-63720) Coroutine debugger: do not optimise out local variables - [`KT-74470`](https://youtrack.jetbrains.com/issue/KT-74470) NSME on calling in runtime internal constructor of value class with default arg from tests - [`KT-77640`](https://youtrack.jetbrains.com/issue/KT-77640) Context parameters: using 'contextOf()' function leads to \[NO\_CONTEXT\_ARGUMENT] - [`KT-73909`](https://youtrack.jetbrains.com/issue/KT-73909) Add an inspection discouraging usage of kotlin.concurrent Native atomics in favor of the new atomics - [`KT-76583`](https://youtrack.jetbrains.com/issue/KT-76583) CCE: suspend lambda attempts to unbox value class parameter twice after lambda suspended - [`KT-76663`](https://youtrack.jetbrains.com/issue/KT-76663) KJS: KotlinNothingValueException caused by expression return since 2.1.20 - [`KT-75457`](https://youtrack.jetbrains.com/issue/KT-75457) Native: cache machinery uses stdlib cache with default runtime options even if custom runtime options are supplied when partial linkage is disabled - [`KT-76615`](https://youtrack.jetbrains.com/issue/KT-76615) K2: "IllegalArgumentException: Inline class types should have the same representation: Lkotlin/UByte; != B" for mixed Java/Kotlin code - [`KT-77220`](https://youtrack.jetbrains.com/issue/KT-77220) Annotation with EXPRESSION is not allowed on lambdas in Kotlin 2.2.0 - [`KT-76381`](https://youtrack.jetbrains.com/issue/KT-76381) K2: Expected expression 'FirPropertyAccessExpressionImpl' to be resolved - [`KT-74739`](https://youtrack.jetbrains.com/issue/KT-74739) Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION\_REFERENCE" - [`KT-74325`](https://youtrack.jetbrains.com/issue/KT-74325) Explicit API mode does not enforce explicit return types for extension properties - [`KT-77259`](https://youtrack.jetbrains.com/issue/KT-77259) Confusing message for `ANNOTATION_WILL_BE_APPLIED_ALSO_TO_PROPERTY_OR_FIELD` - [`KT-73771`](https://youtrack.jetbrains.com/issue/KT-73771) K2: Infinite compilation caused by buildList without type - [`KT-61258`](https://youtrack.jetbrains.com/issue/KT-61258) Kotlin/Native: CLASS CLASS name:<no name provided> modality:FINAL visibility:local superTypes:\[<root>.Base] - [`KT-75317`](https://youtrack.jetbrains.com/issue/KT-75317) Kotlin/Native: segfault in kotlin::gc::Mark<kotlin::gc::mark::ConcurrentMark::MarkTraits> - [`KT-75965`](https://youtrack.jetbrains.com/issue/KT-75965) The iOS app did not run successfully in Release mode - [`KT-77397`](https://youtrack.jetbrains.com/issue/KT-77397) Report UNSUPPORTED\_CONTEXTUAL\_DECLARATION\_CALL when calling declaration with contextual function type in signature - [`KT-77137`](https://youtrack.jetbrains.com/issue/KT-77137) K2: Controversial behavior allows resolving annotation arguments on a companion inside it - [`KT-77150`](https://youtrack.jetbrains.com/issue/KT-77150) Native: compilation fails with an assertion error - [`KT-51960`](https://youtrack.jetbrains.com/issue/KT-51960) ClassCastException: Inline function with both context and extension receiver produces this when invoked - [`KT-73611`](https://youtrack.jetbrains.com/issue/KT-73611) Remove -Xextended-compiler-checks in favor of a deprecation cycle - [`KT-74649`](https://youtrack.jetbrains.com/issue/KT-74649) Deprecate language versions 1.8 and 1.9 - [`KT-77283`](https://youtrack.jetbrains.com/issue/KT-77283) Binary compatibility of FirDeclarationChecker - [`KT-73445`](https://youtrack.jetbrains.com/issue/KT-73445) K2: do not report "cannot infer visibility" when inheriting multiple implementations - [`KT-75945`](https://youtrack.jetbrains.com/issue/KT-75945) Indy: Allow lambdas with annotations - [`KT-76898`](https://youtrack.jetbrains.com/issue/KT-76898) K2: ClassCastException when data class shadows supertype's `componentX` method with wrong type - [`KT-75992`](https://youtrack.jetbrains.com/issue/KT-75992) Xcode 16.3: stacktraces on simulators are not symbolicated - [`KT-76805`](https://youtrack.jetbrains.com/issue/KT-76805) Wrong NPE occurs when assigning synthetic properties with platform types in Kotlin 2.1.20 - [`KT-76171`](https://youtrack.jetbrains.com/issue/KT-76171) "KotlinIllegalArgumentExceptionWithAttachments: Expected expression 'FirSingleExpressionBlock' to be resolved" - [`KT-77078`](https://youtrack.jetbrains.com/issue/KT-77078) K2: anonymous object is wrongly allowed to implement interfaces by unsafe Delegation - [`KT-72722`](https://youtrack.jetbrains.com/issue/KT-72722) Treat 'copy' calls of a data class as explicit constructor usages - [`KT-77001`](https://youtrack.jetbrains.com/issue/KT-77001) Leave ForbidParenthesizedLhsInAssignments as a warning - [`KT-75828`](https://youtrack.jetbrains.com/issue/KT-75828) Store backing field/delegate annotations and extension receiver annotations in metadata - [`KT-58369`](https://youtrack.jetbrains.com/issue/KT-58369) K2: enable DFA warnings - [`KT-51258`](https://youtrack.jetbrains.com/issue/KT-51258) Annotations should go before context receivers - [`KT-76253`](https://youtrack.jetbrains.com/issue/KT-76253) K2 Compiler: Less precise diagnostic COMPONENT\_FUNCTION\_AMBIGUITY for flexible type - [`KT-59526`](https://youtrack.jetbrains.com/issue/KT-59526) Store annotation default values in metadata on JVM - [`KT-63850`](https://youtrack.jetbrains.com/issue/KT-63850) K2: setter with an annotated parameter has `isNotDefault == false` flag in metadata - [`KT-75712`](https://youtrack.jetbrains.com/issue/KT-75712) -Wextra: false positive UNUSED\_LAMBDA\_EXPRESSION on functional type variable assignment with inferred type - [`KT-4779`](https://youtrack.jetbrains.com/issue/KT-4779) Generate default methods for implementations in interfaces - [`KT-69624`](https://youtrack.jetbrains.com/issue/KT-69624) Debugger: Missing local variable in Variables view (inline function) - [`KT-75518`](https://youtrack.jetbrains.com/issue/KT-75518) NO\_CONTEXT\_ARGUMENT should report the name of the context parameter in addition to the type - [`KT-76199`](https://youtrack.jetbrains.com/issue/KT-76199) Introduce -Xcontext-sensitive-resolution compiler flag - [`KT-75553`](https://youtrack.jetbrains.com/issue/KT-75553) `MISSING_DEPENDENCY_SUPERCLASS` and `MISSING_DEPENDENCY_SUPERCLASS_WARNING` is reported at the same time on the same element - [`KT-76159`](https://youtrack.jetbrains.com/issue/KT-76159) Obsolete error "'`@JvmDefaultWithCompatibility`' annotation is only allowed on interfaces" should be removed - [`KT-76660`](https://youtrack.jetbrains.com/issue/KT-76660) False negative RETURN\_NOT\_ALLOWED in lambda in default argument leads to NoClassDefFoundError: $$$$$NON\_LOCAL\_RETURN$$$$$ - [`KT-76301`](https://youtrack.jetbrains.com/issue/KT-76301) Fail to infer types after syntactical change - [`KT-74999`](https://youtrack.jetbrains.com/issue/KT-74999) K2: KotlinNothingValueException within Extension Function - [`KT-76675`](https://youtrack.jetbrains.com/issue/KT-76675) KIAEWA exception at KaFirDataFlowProvider with non-local return from nested inline call - [`KT-75756`](https://youtrack.jetbrains.com/issue/KT-75756) Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom script - [`KT-76345`](https://youtrack.jetbrains.com/issue/KT-76345) Enhance variable fixation - [`KT-76578`](https://youtrack.jetbrains.com/issue/KT-76578) \[FIR, K1/K2 Regression] `lateinit` is allowed on loop parameters - [`KT-76448`](https://youtrack.jetbrains.com/issue/KT-76448) FirOverrideChecker: class ClsMethodImpl is not a subtype of class KtNamedDeclaration for factory VIRTUAL\_MEMBER\_HIDDEN - [`KT-73360`](https://youtrack.jetbrains.com/issue/KT-73360) Migrate K/JVM sources to new IR parameter API - [`KT-74852`](https://youtrack.jetbrains.com/issue/KT-74852) Kotlin/Native: allow caches for thread state checker and sanitizers - [`KT-76130`](https://youtrack.jetbrains.com/issue/KT-76130) IR evaluator does not support array literals in annotation parameter default values - [`KT-76436`](https://youtrack.jetbrains.com/issue/KT-76436) Missing K2 checker: non-local return through lambda passed to inline f/o - [`KT-74326`](https://youtrack.jetbrains.com/issue/KT-74326) False negative: no variable must be initialized error though code doesn't compile - [`KT-76572`](https://youtrack.jetbrains.com/issue/KT-76572) FIR\_NON\_SUPPRESSIBLE\_ERROR\_NAMES does not contain deprecation errors - [`KT-75704`](https://youtrack.jetbrains.com/issue/KT-75704) Refactor `FirWhenSubjectExpression` - [`KT-76284`](https://youtrack.jetbrains.com/issue/KT-76284) Flexible captured type is not approximated in receiver position - [`KT-76192`](https://youtrack.jetbrains.com/issue/KT-76192) RETURN\_TYPE\_MISMATCH with same expected and actual type: nullability of actual type is omitted - [`KT-75944`](https://youtrack.jetbrains.com/issue/KT-75944) Allow using invokedynamic for lambdas with no 'Runtime' level retention annotations - [`KT-76396`](https://youtrack.jetbrains.com/issue/KT-76396) FirIntegerConstantOperatorScope: NoSuchElementException: Collection contains no element matching the predicate - [`KT-76209`](https://youtrack.jetbrains.com/issue/KT-76209) CONFLICTING\_UPPER\_BOUNDS on `Nothing` bound - [`KT-59506`](https://youtrack.jetbrains.com/issue/KT-59506) Context receivers: Unable to use trailing comma in receiver list - [`KT-46119`](https://youtrack.jetbrains.com/issue/KT-46119) NONE\_APPLICABLE instead of NAMED\_ARGUMENTS\_NOT\_ALLOWED with overloaded Java constructor call - [`KT-75503`](https://youtrack.jetbrains.com/issue/KT-75503) Run lazy resolution in CallableCopyTypeCalculator and use withForcedTypeCalculator everywhere in checkers - [`KT-76485`](https://youtrack.jetbrains.com/issue/KT-76485) Don't report EXTENSION\_SHADOWED\_BY\_MEMBER if extension can be called with named arguments - [`KT-76154`](https://youtrack.jetbrains.com/issue/KT-76154) False positive "EXTENSION\_SHADOWED\_BY\_MEMBER" when extension adds default values to parameters - [`KT-76527`](https://youtrack.jetbrains.com/issue/KT-76527) False positive UNSUPPORTED\_CONTEXTUAL\_DECLARATION\_CALL with -Xcontext-receivers and implicit invoke - [`KT-63246`](https://youtrack.jetbrains.com/issue/KT-63246) K2: False positive NOTHING\_TO\_OVERRIDE in generic property with context receiver in non generic class extending generic class - [`KT-58534`](https://youtrack.jetbrains.com/issue/KT-58534) K2: "Argument type mismatch" with typealias to context receiver functional type - [`KT-71792`](https://youtrack.jetbrains.com/issue/KT-71792) Switch latest stable version in Kotlin project to 2.2 - [`KT-74827`](https://youtrack.jetbrains.com/issue/KT-74827) CompilationErrorException : Could not load module in an attempt to find deserializer when trying to evaluate an expression - [`KT-70352`](https://youtrack.jetbrains.com/issue/KT-70352) K2: False-negative CONFLICTING\_UPPER\_BOUNDS on `Nothing` bound - [`KT-71481`](https://youtrack.jetbrains.com/issue/KT-71481) K2: drop pre-1.6 language features from compiler code - [`KT-74454`](https://youtrack.jetbrains.com/issue/KT-74454) Support trailing comma in context parameters - [`KT-74069`](https://youtrack.jetbrains.com/issue/KT-74069) False positive UNUSED\_EXPRESSION due to Long/Int conversion - [`KT-74337`](https://youtrack.jetbrains.com/issue/KT-74337) Local Delegated properties don't preserve their annotations and don't show up in reflection - [`KT-55187`](https://youtrack.jetbrains.com/issue/KT-55187) Context receivers in function types can have labels - [`KT-58498`](https://youtrack.jetbrains.com/issue/KT-58498) Context receivers: ClassCastException with object and extension function in interface - [`KT-58165`](https://youtrack.jetbrains.com/issue/KT-58165) K2: "IllegalArgumentException: No argument for parameter VALUE\_PARAMETER" on overridden contextual property - [`KT-75234`](https://youtrack.jetbrains.com/issue/KT-75234) Add error for callsInPlace contracts on context parameters - [`KT-73805`](https://youtrack.jetbrains.com/issue/KT-73805) K2: Investigate missing diagnostic in implicit invoke call on context function type with receiver from module with disabled context parameters - [`KT-41934`](https://youtrack.jetbrains.com/issue/KT-41934) NI: a type variable for lambda parameter has been inferred to nullable type instead of not null one - [`KT-75983`](https://youtrack.jetbrains.com/issue/KT-75983) Backend Internal error: Exception during IR lowering 'IllegalStateException: Internal error: cannot convert Any to Int' - [`KT-75535`](https://youtrack.jetbrains.com/issue/KT-75535) Compilation of typealias does not check for clashes - [`KT-72313`](https://youtrack.jetbrains.com/issue/KT-72313) K2 IDE / KMP Debugger: Evaluation of inline functions declared in a common source set causes a crash - [`KT-76290`](https://youtrack.jetbrains.com/issue/KT-76290) False positive UNUSED\_EXPRESSION while returning Unit in the when branches - [`KT-32358`](https://youtrack.jetbrains.com/issue/KT-32358) NI: Smart cast doesn't work with inline function after elvis operator - [`KT-76316`](https://youtrack.jetbrains.com/issue/KT-76316) K2: Missing NON\_PUBLIC\_CALL\_FROM\_PUBLIC\_INLINE on object extending private class in public inline function - [`KT-76324`](https://youtrack.jetbrains.com/issue/KT-76324) Frontend diagnostic says "... this will be an error in Kotlin N.M" but N.M is already released - [`KT-76058`](https://youtrack.jetbrains.com/issue/KT-76058) PCLA: compile-time failure on calling a higher-order function from another module inside a lambda assigned to a variable of a type with a postponed type variable - [`KT-75571`](https://youtrack.jetbrains.com/issue/KT-75571) K2: type mismatch error provides unsubstituted types - [`KT-31391`](https://youtrack.jetbrains.com/issue/KT-31391) 'Recursive call is not a tail call' with elvis operator in tailrec function - [`KT-73420`](https://youtrack.jetbrains.com/issue/KT-73420) False-positive `NON_TAIL_RECURSIVE_CALL` on tailrec function with elvis in the return statement - [`KT-75815`](https://youtrack.jetbrains.com/issue/KT-75815) Disable warnings about different context parameter names in overrides - [`KT-75169`](https://youtrack.jetbrains.com/issue/KT-75169) Unnecessary EXTENSION\_SHADOWED\_BY\_MEMBER on generic declarations - [`KT-75483`](https://youtrack.jetbrains.com/issue/KT-75483) Native: redundant unboxing generated with smart cast - [`KT-76339`](https://youtrack.jetbrains.com/issue/KT-76339) K2: Dangling modifier list is missed for enum entries in PSI mode - [`KT-75513`](https://youtrack.jetbrains.com/issue/KT-75513) Avoid overrides traversal without preinitialization - [`KT-74587`](https://youtrack.jetbrains.com/issue/KT-74587) Report an error when JvmDefaultWithoutCompatibility is used with -Xjvm-default=all - [`KT-76257`](https://youtrack.jetbrains.com/issue/KT-76257) Annotations with class references are not supported when marking IR declarations as visible to metadata - [`KT-71793`](https://youtrack.jetbrains.com/issue/KT-71793) Drop language versions 1.6 and 1.7 - [`KT-59272`](https://youtrack.jetbrains.com/issue/KT-59272) Incorrect bytecode generated: wrong line number table after condition - [`KT-69248`](https://youtrack.jetbrains.com/issue/KT-69248) K2: IAE “class KtDotQualifiedExpression is not a subtype of class KtCallExpression for factory ENUM\_CLASS\_CONSTRUCTOR\_CALL” with qualified enum constructor call - [`KT-73778`](https://youtrack.jetbrains.com/issue/KT-73778) Kotlin Debugger: NSFE on accessing private property from dependencies during evaluation - [`KT-74131`](https://youtrack.jetbrains.com/issue/KT-74131) Incorrect line numbers for static initializer with delegated local variable - [`KT-76320`](https://youtrack.jetbrains.com/issue/KT-76320) K2: PsiRawFirBuilder: import alias triggers ast loading - [`KT-63851`](https://youtrack.jetbrains.com/issue/KT-63851) K2: No `setterValueParameter` in metadata for property setter with an annotated parameter - [`KT-55083`](https://youtrack.jetbrains.com/issue/KT-55083) JVM: AbstractMethodError caused by lambda with sealed base interface and fun sub interface and overridden method - [`KT-16727`](https://youtrack.jetbrains.com/issue/KT-16727) Names for anonymous classes in interfaces are malformed on JDK 8 - [`KT-12466`](https://youtrack.jetbrains.com/issue/KT-12466) NoClassDefFoundError: B$DefaultImpls on super interface call through K-J-K inheritance - [`KT-71002`](https://youtrack.jetbrains.com/issue/KT-71002) Possible inheritance from nullable type through typealias - [`KT-75293`](https://youtrack.jetbrains.com/issue/KT-75293) K2: Missing \[HAS\_NEXT\_FUNCTION\_TYPE\_MISMATCH] diagnostics - [`KT-75498`](https://youtrack.jetbrains.com/issue/KT-75498) Forbid .declarations access from checkers - [`KT-72335`](https://youtrack.jetbrains.com/issue/KT-72335) KotlinIllegalArgumentExceptionWithAttachments when using illegal selector - [`KT-68375`](https://youtrack.jetbrains.com/issue/KT-68375) K2: FirPrimaryConstructorSuperTypeChecker fails on generated superclasses - [`KT-71718`](https://youtrack.jetbrains.com/issue/KT-71718) K2: drop TypePreservingVisibilityWrtHack - [`KT-75112`](https://youtrack.jetbrains.com/issue/KT-75112) FE resolves wrong receivers order for property passed to delegate - [`KT-75924`](https://youtrack.jetbrains.com/issue/KT-75924) K2. Incorrect generic type Inference "R? & Any" appears for "Add explicit type arguments" - [`KT-75969`](https://youtrack.jetbrains.com/issue/KT-75969) java.lang.IllegalArgumentException: source must not be null on red code - [`KT-75322`](https://youtrack.jetbrains.com/issue/KT-75322) ConeDiagnosticToFirDiagnosticKt: source must not be null - [`KT-73800`](https://youtrack.jetbrains.com/issue/KT-73800) Wrong method executed on super call in -Xjvm-default=all/all-compatibility with an extraneous super-interface - [`KT-38029`](https://youtrack.jetbrains.com/issue/KT-38029) Wrong method executed on super call in diamond hierarchy with covariant override - [`KT-75242`](https://youtrack.jetbrains.com/issue/KT-75242) Any use-site target can be applied to a lambda and an expression - [`KT-73051`](https://youtrack.jetbrains.com/issue/KT-73051) incorrect direction of subtyping violation in type mismatch error's message for A\<X<C>> \</: A\<Y<Tv>> given a Tv <: Rv == C constraint from a lambda return position - [`KT-75090`](https://youtrack.jetbrains.com/issue/KT-75090) Argument type mismatch: actual type is 'SuspendFunction0<Unit>', but 'SuspendFunction0<Unit>' was expected when anonymous function is passed to function expecting suspend function type - [`KT-74956`](https://youtrack.jetbrains.com/issue/KT-74956) K2: No USAGE\_IS\_NOT\_INLINABLE with compiling an inlined function call - [`KT-76049`](https://youtrack.jetbrains.com/issue/KT-76049) K2: drop explicitTypeArgumentIfMadeFlexibleSynthetically creation when DontMakeExplicitJavaTypeArgumentsFlexible is enabled - [`KT-76055`](https://youtrack.jetbrains.com/issue/KT-76055) K2: drop prepareCustomReturnTypeSubstitutorForFunctionCall logic when DontMakeExplicitJavaTypeArgumentsFlexible is enabled - [`KT-76057`](https://youtrack.jetbrains.com/issue/KT-76057) K2: don't do reverse Java overridability checks when DontMakeExplicitJavaTypeArgumentsFlexible is enabled - [`KT-75197`](https://youtrack.jetbrains.com/issue/KT-75197) K2: Missing \[COMPARE\_TO\_TYPE\_MISMATCH] diagnostics - [`KT-75639`](https://youtrack.jetbrains.com/issue/KT-75639) Inline `context` function leads to `ClassCastException` - [`KT-75677`](https://youtrack.jetbrains.com/issue/KT-75677) K2: change runtime behavior of KT-75649 case in 2.2 - [`KT-75961`](https://youtrack.jetbrains.com/issue/KT-75961) K2: `PsiRawFirBuilder.Visitor#visitSimpleNameExpression`forces AST loading via `getReferencedNameElement().node.text` - [`KT-67869`](https://youtrack.jetbrains.com/issue/KT-67869) Make inference for lambda working consistently inside and outside of the call - [`KT-74885`](https://youtrack.jetbrains.com/issue/KT-74885) K2: IAE "source must not be null" in FirCyclicTypeBoundsChecker - [`KT-75578`](https://youtrack.jetbrains.com/issue/KT-75578) K2: False negative \[SUPER\_CALL\_WITH\_DEFAULT\_PARAMETERS] when calling the upper-class implementation of a method with the default value argument - [`KT-73954`](https://youtrack.jetbrains.com/issue/KT-73954) Generate implementations in classes for inherited non-abstract methods in -Xjvm-default=all-compatibility - [`KT-75173`](https://youtrack.jetbrains.com/issue/KT-75173) Context parameters: KotlinIllegalArgumentExceptionWithAttachments if you override function with value/extension parameter by fun with context - [`KT-75742`](https://youtrack.jetbrains.com/issue/KT-75742) Native: "IllegalArgumentException: unknown pass name '' " when specifying an empty list of LLVM passes - [`KT-74819`](https://youtrack.jetbrains.com/issue/KT-74819) K2: False-positive overload resolution ambiguity for flatMap inside PCLA - [`KT-75093`](https://youtrack.jetbrains.com/issue/KT-75093) K2 IDE: "Unreachable code" highlighting range is confusing - [`KT-74572`](https://youtrack.jetbrains.com/issue/KT-74572) Context parameters: contracts don't work with context parameters - [`KT-74765`](https://youtrack.jetbrains.com/issue/KT-74765) Move K1 lazy IR implementation from 'ir.tree' to 'psi2ir' - [`KT-71425`](https://youtrack.jetbrains.com/issue/KT-71425) IR Inliner: investigate return type of an inlined block - [`KT-74764`](https://youtrack.jetbrains.com/issue/KT-74764) Native: merge init nodes generated within the same LLVM module for the same klib - [`KT-75561`](https://youtrack.jetbrains.com/issue/KT-75561) K/N: place InteropLowering after UpgradeCallableReferences phase - [`KT-73369`](https://youtrack.jetbrains.com/issue/KT-73369) K/N: move interop lowering up the pipeline - [`KT-75517`](https://youtrack.jetbrains.com/issue/KT-75517) K2: Refactor FirCallableSymbol.resolvedContextParameters to return symbols - [`KT-75821`](https://youtrack.jetbrains.com/issue/KT-75821) K2: REPL resolution doesn't take into account the property type when processing its initializer - [`KT-75705`](https://youtrack.jetbrains.com/issue/KT-75705) IllegalArgumentException when isInitialized is used with java field - [`KT-75334`](https://youtrack.jetbrains.com/issue/KT-75334) Java target shouldn't be specified if Kotlin target isn't specified - [`KT-75157`](https://youtrack.jetbrains.com/issue/KT-75157) Missing PARAMETER\_NAME\_CHANGED\_ON\_OVERRIDE and DIFFERENT\_NAMES\_FOR\_THE\_SAME\_PARAMETER\_IN\_SUPERTYPES for context parameters - [`KT-75160`](https://youtrack.jetbrains.com/issue/KT-75160) Check usages of value parameters in checkers and adapt to context parameters - [`KT-75729`](https://youtrack.jetbrains.com/issue/KT-75729) KtPsiFactory: no type-safe way to create triple-quoted KtStringTemplateExpression - [`KT-75040`](https://youtrack.jetbrains.com/issue/KT-75040) Unify `subject` and `subjectVariable` in `FirWhenExpression` - [`KT-75323`](https://youtrack.jetbrains.com/issue/KT-75323) FirSyntheticProperty: Unexpected status. Expected is FirResolvedDeclarationStatus, but was FirDeclarationStatusImpl - [`KT-75602`](https://youtrack.jetbrains.com/issue/KT-75602) Introduce concept of shared library session in Fir sessions - [`KT-75509`](https://youtrack.jetbrains.com/issue/KT-75509) PARAMETER\_NAME\_CHANGED\_ON\_OVERRIDE is reported randomly - [`KT-75124`](https://youtrack.jetbrains.com/issue/KT-75124) IAE “class org.jetbrains.kotlin.psi.KtContextReceiver is not a subtype of class org.jetbrains.kotlin.psi.KtParameter for factory EXPOSED\_PARAMETER\_TYPE” on private context receiver - [`KT-73585`](https://youtrack.jetbrains.com/issue/KT-73585) K2: ABSTRACT\_SUPER\_CALL is not reported - [`KT-75531`](https://youtrack.jetbrains.com/issue/KT-75531) K2 REPL: local name doesn't shadow one from implicit receiver - [`KT-73359`](https://youtrack.jetbrains.com/issue/KT-73359) Migrate frontend sources to new IR parameter API - [`KT-75380`](https://youtrack.jetbrains.com/issue/KT-75380) K2: Modality is configured incorrectly for some FirDefaultPropertyAccessor - [`KT-75526`](https://youtrack.jetbrains.com/issue/KT-75526) Regression in K2 scripting: local name doesn't shadow one from the implicit receiver - [`KT-59379`](https://youtrack.jetbrains.com/issue/KT-59379) K2: Missing MIXING\_NAMED\_AND\_POSITIONED\_ARGUMENTS - [`KT-75106`](https://youtrack.jetbrains.com/issue/KT-75106) K2: type parameters of anonymous functions are unresolved - [`KT-73387`](https://youtrack.jetbrains.com/issue/KT-73387) Unexpected implicit type during enhancement - [`KT-72618`](https://youtrack.jetbrains.com/issue/KT-72618) Cannot define operator inc/dec in class context - [`KT-74546`](https://youtrack.jetbrains.com/issue/KT-74546) Serialize context parameters to metadata - [`KT-68768`](https://youtrack.jetbrains.com/issue/KT-68768) K2: unsuccessful inference fork with jspecify annotations - [`KT-75345`](https://youtrack.jetbrains.com/issue/KT-75345) Add a test for KT-42271 - [`KT-75012`](https://youtrack.jetbrains.com/issue/KT-75012) K2: Compiler crash on `dynamic == null` - [`KT-75195`](https://youtrack.jetbrains.com/issue/KT-75195) IllegalStateException: No value for annotation parameter when `@all` meta-target is used with annotation with constructor - [`KT-75163`](https://youtrack.jetbrains.com/issue/KT-75163) WRONG\_ANNOTATION\_TARGET\_WITH\_USE\_SITE\_TARGET for `@all` meta-target although there are applicable targets - [`KT-75198`](https://youtrack.jetbrains.com/issue/KT-75198) `@all` meta-target should be forbidden for delegated properties - [`KT-74958`](https://youtrack.jetbrains.com/issue/KT-74958) K2: UNEXPECTED\_TRAILING\_LAMBDA\_ON\_A\_NEW\_LINE isn't reported on accidental trailing closure - [`KT-74982`](https://youtrack.jetbrains.com/issue/KT-74982) Improve UNSUPPORTED message handling - [`KT-75111`](https://youtrack.jetbrains.com/issue/KT-75111) False negative "This declaration needs opt-in" for usage of enum entry with OptIn marker in another module - [`KT-74924`](https://youtrack.jetbrains.com/issue/KT-74924) Infinite recursion in substitution of captured type with recursive supertype - [`KT-75289`](https://youtrack.jetbrains.com/issue/KT-75289) NPE: getParent(...) must not be null - [`KT-75275`](https://youtrack.jetbrains.com/issue/KT-75275) Inline class member inherited from interface is not mangled in '-Xjvm-default=all-compatibility' - [`KT-74340`](https://youtrack.jetbrains.com/issue/KT-74340) FIR: folding binary expression chains for psi parser - [`KT-73831`](https://youtrack.jetbrains.com/issue/KT-73831) Do not choose `field` target in annotation classes - [`KT-73494`](https://youtrack.jetbrains.com/issue/KT-73494) Enable first-only-warn annotation defaulting mode - [`KT-75174`](https://youtrack.jetbrains.com/issue/KT-75174) K2: incorrect influence of return type nullability on required receiver type in KJK hierarchy with property - [`KT-74920`](https://youtrack.jetbrains.com/issue/KT-74920) Overriding T! with T & Any is not allowed to the extension property receiver type - [`KT-75150`](https://youtrack.jetbrains.com/issue/KT-75150) False ambiguous context parameter reported because context is not chosen via generic parameter - [`KT-74965`](https://youtrack.jetbrains.com/issue/KT-74965) CLI compiler doesn't report syntax errors for JS, Metadata backends if light-tree mode is disabled - [`KT-74303`](https://youtrack.jetbrains.com/issue/KT-74303) K2 IDE / Kotlin Debugger: AE “Trying to inline an anonymous object which is not part of the public ABI” on evaluating private inline function with object inside - [`KT-75177`](https://youtrack.jetbrains.com/issue/KT-75177) NoSuchMethodError on suspend default interface method fake override returning inline class in -Xjvm-default=all-compatibility - [`KT-74718`](https://youtrack.jetbrains.com/issue/KT-74718) K/N: Move TestProcessor phase to the top of the pipeline - [`KT-75015`](https://youtrack.jetbrains.com/issue/KT-75015) Context parameters: it is possible to declare anonymous function with modifiers but they don't have any effect - [`KT-75092`](https://youtrack.jetbrains.com/issue/KT-75092) K2: Missing errors for modifiers on anonymous function in statement position - [`KT-75009`](https://youtrack.jetbrains.com/issue/KT-75009) Context parameters: context is unresolved inside anonymous function if passed as an argument - [`KT-75017`](https://youtrack.jetbrains.com/issue/KT-75017) Context parameters: "IllegalStateException: Cannot find variable a: R|kotlin/String| in local storage " when context from another local function is called - [`KT-75154`](https://youtrack.jetbrains.com/issue/KT-75154) Context receiver deprecation warning should depend on langauge version, not on LATEST\_STABLE - [`KT-74979`](https://youtrack.jetbrains.com/issue/KT-74979) Context parameters: anonymous functions with a context aren't parsed in complex cases - [`KT-74673`](https://youtrack.jetbrains.com/issue/KT-74673) K2: ClassCastException when passing suspending functional interface with generic - [`KT-74469`](https://youtrack.jetbrains.com/issue/KT-74469) K2: False positive: "Argument type mismatch" during Java interop - [`KT-75105`](https://youtrack.jetbrains.com/issue/KT-75105) K2: False negative NAME\_IN\_CONSTRAINT\_IS\_NOT\_A\_TYPE\_PARAMETER for type constraint of anonymous function - [`KT-74929`](https://youtrack.jetbrains.com/issue/KT-74929) False positive TYPE\_PARAMETER\_OF\_PROPERTY\_NOT\_USED\_IN\_RECEIVER if it is used with T\&Any - [`KT-74227`](https://youtrack.jetbrains.com/issue/KT-74227) K2: "Cannot infer type for this parameter. Please specify it explicitly" caused by lambda in another lambda with a parameterized function type - [`KT-64558`](https://youtrack.jetbrains.com/issue/KT-64558) K2 compiler does not report UNNECESSARY\_SAFE\_CALL, UNNECESSARY\_NOT\_NULL\_ASSERTION, USELESS\_ELVIS, while K2 IDEA does - [`KT-74728`](https://youtrack.jetbrains.com/issue/KT-74728) K2: Java method overriding Kotlin method with receiver loses vararg modifier - [`KT-70789`](https://youtrack.jetbrains.com/issue/KT-70789) CLI error "mixing legacy and modern plugin arguments is prohibited" on using -Xcompiler-plugin unless default scripting plugin is disabled - [`KT-72829`](https://youtrack.jetbrains.com/issue/KT-72829) Forbid 'entries' name of enum entry, and deprioritize it in resolve - [`KT-75037`](https://youtrack.jetbrains.com/issue/KT-75037) K2: IrGeneratedDeclarationsRegistrar.registerFunctionAsMetadataVisible doesn't handle extension receivers and context parameters - [`KT-73149`](https://youtrack.jetbrains.com/issue/KT-73149) Annotations support for context parameters - [`KT-74798`](https://youtrack.jetbrains.com/issue/KT-74798) Report error on local contextual properties - [`KT-74092`](https://youtrack.jetbrains.com/issue/KT-74092) Context parameters: it is not possible to declare an anonymous function with a context - [`KT-52152`](https://youtrack.jetbrains.com/issue/KT-52152) K2: Investigate suspicious code at SAM conversions - [`KT-75016`](https://youtrack.jetbrains.com/issue/KT-75016) K2: BackendException when context var property is declared in interface - [`KT-74474`](https://youtrack.jetbrains.com/issue/KT-74474) K2: Report more precise diagnostic when last expression of non-unit lambda is a statement - [`KT-74478`](https://youtrack.jetbrains.com/issue/KT-74478) K2: False negative RETURN TYPE\_MISMATCH if the last statement of a lambda is indexed assignment - [`KT-73685`](https://youtrack.jetbrains.com/issue/KT-73685) K2 IDE / Kotlin Debugger: NSME “Method not found” on evaluating function with constant value in `@JvmName` - [`KT-74449`](https://youtrack.jetbrains.com/issue/KT-74449) Report RETURN\_TYPE\_MISMATCH instead of ARGUMENT\_TYPE\_MISMATCH for return expressions in lambdas - [`KT-74918`](https://youtrack.jetbrains.com/issue/KT-74918) FIR: account for K/Wasm diagnostics in generateNonSuppressibleErrorNamesFile - [`KT-74897`](https://youtrack.jetbrains.com/issue/KT-74897) K2: Report UNSUPPORTED\_FEATURE instead of TOPLEVEL\_TYPEALIASES\_ONLY for nested type aliases - [`KT-74963`](https://youtrack.jetbrains.com/issue/KT-74963) K2: Fir2Ir: Avoid a situation when startOffset > endOffset in generated IrBranch - [`KT-74697`](https://youtrack.jetbrains.com/issue/KT-74697) Overriding a method that's both deprecated and non-deprecated should not cause warnings - [`KT-74928`](https://youtrack.jetbrains.com/issue/KT-74928) K2: "IllegalStateException: Cannot find cached type parameter by FIR symbol" in KJK hierarchy with extension property - [`KT-74630`](https://youtrack.jetbrains.com/issue/KT-74630) K2: local class arguments in annotations on types and type parameters are not serialized - [`KT-74445`](https://youtrack.jetbrains.com/issue/KT-74445) Commonize Native Function/Property reference lowerings - [`KT-74670`](https://youtrack.jetbrains.com/issue/KT-74670) Warning message CONTEXT\_CLASS\_OR\_CONSTRUCTOR isn't reported for context receiver on the constructor - [`KT-74617`](https://youtrack.jetbrains.com/issue/KT-74617) Trivial SMAP optimization leads to missing debug info after inline - [`KT-74812`](https://youtrack.jetbrains.com/issue/KT-74812) compile-time failure on a callable reference with an input type inferred to an inaccessible generic type - [`KT-66195`](https://youtrack.jetbrains.com/issue/KT-66195) K2: Java method is not enhanced from overridden's context receivers - [`KT-74501`](https://youtrack.jetbrains.com/issue/KT-74501) Context parameters: ABSTRACT\_MEMBER\_NOT\_IMPLEMENTED if fun with context is implemented in Java in KJK hierarchy - [`KT-74385`](https://youtrack.jetbrains.com/issue/KT-74385) Missing diagnostic on repeated suspend modifier in function type - [`KT-74749`](https://youtrack.jetbrains.com/issue/KT-74749) Provide explanation IR before script compilation - [`KT-74751`](https://youtrack.jetbrains.com/issue/KT-74751) K2: IllegalStateException: Can't apply receivers of FirPropertyAccessExpressionImpl to IrTypeOperatorCallImpl - [`KT-74729`](https://youtrack.jetbrains.com/issue/KT-74729) NPE when suspend lambda has inline class parameter - [`KT-74336`](https://youtrack.jetbrains.com/issue/KT-74336) Not supported: class org.jetbrains.kotlin.fir.types.ConeIntersectionType - [`KT-74203`](https://youtrack.jetbrains.com/issue/KT-74203) K2: False negative NO\_ELSE\_IN\_WHEN of a generic type with star projection <\*> bounded by a sealed hierarchy - [`KT-48085`](https://youtrack.jetbrains.com/issue/KT-48085) Kotlin/Native: LLD removes live code with `--gc-sections` when producing DLL - [`KT-69164`](https://youtrack.jetbrains.com/issue/KT-69164) Native: use lld from bundled LLVM distribution when compiling on Windows for a MinGW target - [`KT-74081`](https://youtrack.jetbrains.com/issue/KT-74081) Context parameters: implicit call resolves to extension when there is a context - [`KT-74682`](https://youtrack.jetbrains.com/issue/KT-74682) Implement internal type exposure via parameter bounds deprecation postponement - [`KT-74556`](https://youtrack.jetbrains.com/issue/KT-74556) K2: "IAE: class KtDestructuringDeclaration is not a subtype of class KtNamedDeclaration for factory REDECLARATION" with two non-local destructuring declarations - [`KT-73146`](https://youtrack.jetbrains.com/issue/KT-73146) Context parameters CLI & diagnostics - [`KT-72104`](https://youtrack.jetbrains.com/issue/KT-72104) Consider enabling check for unbound symbols in JVM before lowerings - [`KT-74568`](https://youtrack.jetbrains.com/issue/KT-74568) Synthetic nested classes missing JVM attributes - [`KT-73703`](https://youtrack.jetbrains.com/issue/KT-73703) \[Native] Move KonanIrLinker to `serialization.native` module - [`KT-61175`](https://youtrack.jetbrains.com/issue/KT-61175) K2: FirReceiverParameter does not extend FirDeclaration - [`KT-73961`](https://youtrack.jetbrains.com/issue/KT-73961) 'lateinit is unnecessary' on transient properties should not be reported for serializable classes - [`KT-73858`](https://youtrack.jetbrains.com/issue/KT-73858) Compose / iOS: NullPointerException on building - [`KT-62953`](https://youtrack.jetbrains.com/issue/KT-62953) JVM IR: Use `SimpleNamedCompilerPhase` instead of `NamedCompilerPhase` - [`KT-72929`](https://youtrack.jetbrains.com/issue/KT-72929) Consider caching typealiased constructor symbols created by TypeAliasConstructorsSubstitutingScope - [`KT-74459`](https://youtrack.jetbrains.com/issue/KT-74459) K2: false positive MISSING\_DEPENDENCY\_CLASS for types inside default argument - [`KT-73705`](https://youtrack.jetbrains.com/issue/KT-73705) \[Native] Decouple native caches support from KonanIrLinker and KonanPartialModuleDeserializer - [`KT-74091`](https://youtrack.jetbrains.com/issue/KT-74091) K2: `@JvmOverloads`-produced overloads have generated line number table - [`KT-69754`](https://youtrack.jetbrains.com/issue/KT-69754) Drop -Xuse-k2 compiler flag - [`KT-73352`](https://youtrack.jetbrains.com/issue/KT-73352) K2: false negative ARRAY\_EQUALITY\_OPERATOR\_CAN\_BE\_REPLACED\_WITH\_EQUALS - [`KT-72962`](https://youtrack.jetbrains.com/issue/KT-72962) Consider enabling ConsiderForkPointsWhenCheckingContradictions LF earlier - [`KT-73027`](https://youtrack.jetbrains.com/issue/KT-73027) IllegalStateException: Annotation argument value cannot be null: since - [`KT-74242`](https://youtrack.jetbrains.com/issue/KT-74242) Freeze on `runCatching` call in `finally` block inside SAM conversion - [`KT-29222`](https://youtrack.jetbrains.com/issue/KT-29222) FIR: consider folding binary expression chains - [`KT-73760`](https://youtrack.jetbrains.com/issue/KT-73760) Cannot implement two Java interfaces with `@NotNull`-annotated type argument and Kotlin's plain (nullable) type parameter - [`KT-58933`](https://youtrack.jetbrains.com/issue/KT-58933) Applying suggested signature from WRONG\_NULLABILITY\_FOR\_JAVA\_OVERRIDE leads to red code - [`KT-70507`](https://youtrack.jetbrains.com/issue/KT-70507) Should parentheses prevent from plus/set operator desugaring? - [`KT-67520`](https://youtrack.jetbrains.com/issue/KT-67520) Change of behaviour of inline function with safe cast on value type - [`KT-67518`](https://youtrack.jetbrains.com/issue/KT-67518) Value classes leak their carrier type implementation details via inlining - [`KT-72305`](https://youtrack.jetbrains.com/issue/KT-72305) K2: Report error when using synthetic properties in case of mapped collections - [`KT-71226`](https://youtrack.jetbrains.com/issue/KT-71226) K2 Evaluator: Code fragment compilation with unresolved classes does not fail with exception - [`KT-70233`](https://youtrack.jetbrains.com/issue/KT-70233) Implement a deprecation error for FIELD-targeted annotations on annotation properties - [`KT-67517`](https://youtrack.jetbrains.com/issue/KT-67517) Value class upcast to Any leaks carrier type interfaces - [`KT-72814`](https://youtrack.jetbrains.com/issue/KT-72814) FIR: don't use function references in FirThisReference - [`KT-73153`](https://youtrack.jetbrains.com/issue/KT-73153) K2: Standalone diagnostics on type arguments are not reported - [`KT-73011`](https://youtrack.jetbrains.com/issue/KT-73011) K2: Allow overloads resolution for callable references based on expected type variable with constraints - [`KT-70139`](https://youtrack.jetbrains.com/issue/KT-70139) Remove dependencies of debugger on K1 and old JVM backend - [`KT-69223`](https://youtrack.jetbrains.com/issue/KT-69223) Drop parallel lowering mode in JVM backend - [`KT-7461`](https://youtrack.jetbrains.com/issue/KT-7461) Forbid using projection modifiers inside top-level Array in annotation's value parameter - [`KT-53804`](https://youtrack.jetbrains.com/issue/KT-53804) Restore old and incorrect logic of generating InnerClasses attributes for kotlin-stdlib - [`KT-52774`](https://youtrack.jetbrains.com/issue/KT-52774) Resolve unqualified enum constants based on expected type ##### Compose compiler ##### New features ### [`v2.1.21`](https://github.com/JetBrains/kotlin/releases/tag/v2.1.21): Kotlin 2.1.21 [Compare Source](https://github.com/JetBrains/kotlin/compare/v2.1.20...v2.1.21) #### Changelog ##### Backend. Native. Debug - [`KT-75991`](https://youtrack.jetbrains.com/issue/KT-75991) Xcode 16.3: Fix lldb stepping test over an inline function ##### Compiler - [`KT-75992`](https://youtrack.jetbrains.com/issue/KT-75992) Xcode 16.3: stacktraces on simulators are not symbolicated - [`KT-76663`](https://youtrack.jetbrains.com/issue/KT-76663) KJS: KotlinNothingValueException caused by expression return since 2.1.20 - [`KT-75756`](https://youtrack.jetbrains.com/issue/KT-75756) Backend Internal error: Exception during IR lowering when trying to access variable from providedProperties in class within kotlin custom script - [`KT-76209`](https://youtrack.jetbrains.com/issue/KT-76209) CONFLICTING\_UPPER\_BOUNDS on `Nothing` bound - [`KT-70352`](https://youtrack.jetbrains.com/issue/KT-70352) K2: False-negative CONFLICTING\_UPPER\_BOUNDS on `Nothing` bound - [`KT-74739`](https://youtrack.jetbrains.com/issue/KT-74739) Native: "IllegalArgumentException: All constructors should've been lowered: FUNCTION\_REFERENCE" - [`KT-75483`](https://youtrack.jetbrains.com/issue/KT-75483) Native: redundant unboxing generated with smart cast - [`KT-71425`](https://youtrack.jetbrains.com/issue/KT-71425) IR Inliner: investigate return type of an inlined block ##### Native - [`KT-76252`](https://youtrack.jetbrains.com/issue/KT-76252) Native: executable crash with generic value classes with 2.1.20 ##### Native. C and ObjC Import - [`KT-75781`](https://youtrack.jetbrains.com/issue/KT-75781) Xcode 16.3: Fix cinterop tests failing with fatal error: could not build module '\_stdint' ##### Native. Runtime. Memory - [`KT-74280`](https://youtrack.jetbrains.com/issue/KT-74280) Native: GC.collect crashes with -Xallocator=std ##### Tools. CLI - [`KT-75588`](https://youtrack.jetbrains.com/issue/KT-75588) \[2.1.20-RC] "was compiled by a pre-release version of Kotlin and cannot be loaded by this version of the compiler" warnings despite using the same compiler version - [`KT-74663`](https://youtrack.jetbrains.com/issue/KT-74663) kotlinc-js CLI: not providing -ir-output-dir results in NullPointerException ##### Tools. Compiler Plugins - [`KT-76162`](https://youtrack.jetbrains.com/issue/KT-76162) "IllegalStateException: No mapping for symbol: VALUE\_PARAMETER INSTANCE\_RECEIVER" after updating to 2.1.20 ##### Tools. Gradle - [`KT-73682`](https://youtrack.jetbrains.com/issue/KT-73682) Compatibility with Gradle 8.12 release - [`KT-73142`](https://youtrack.jetbrains.com/issue/KT-73142) Kotlin Gradle plugin: Remove usage of Gradle's internal ExecHandleBuilder - [`KT-36004`](https://youtrack.jetbrains.com/issue/KT-36004) Update 'org.gradle.usage' attribute rules to support the 'JAVA\_API' and 'JAVA\_RUNTIME' value - [`KT-73968`](https://youtrack.jetbrains.com/issue/KT-73968) KotlinDependencyManagement tries to mutate configuration after it was resolved - [`KT-73684`](https://youtrack.jetbrains.com/issue/KT-73684) Run integration tests against Gradle 8.12 - [`KT-72694`](https://youtrack.jetbrains.com/issue/KT-72694) Accessing Task.project during execution is being deprecated in Gradle 8.12 - [`KT-73683`](https://youtrack.jetbrains.com/issue/KT-73683) Compile against Gradle API 8.12 ##### Tools. Gradle. JS - [`KT-77119`](https://youtrack.jetbrains.com/issue/KT-77119) KJS: Gradle: Setting custom environment variables in KotlinJsTest tasks no longer works - [`KT-74735`](https://youtrack.jetbrains.com/issue/KT-74735) KGP uses Gradle internal `CompositeProjectComponentArtifactMetadata` - [`KT-71879`](https://youtrack.jetbrains.com/issue/KT-71879) Notice of upcoming deprecation for Boolean 'is-' properties in Gradle Groovy scripts ##### Tools. Gradle. Multiplatform - [`KT-75808`](https://youtrack.jetbrains.com/issue/KT-75808) KGP: MPP with jvm target and Gradle java-test-fixtures is broken - [`KT-75605`](https://youtrack.jetbrains.com/issue/KT-75605) Dependency resolution fails in commonTest/nativeTest source sets for KMP module when depending on another project due to missing PSM - [`KT-75512`](https://youtrack.jetbrains.com/issue/KT-75512) Maven-publish: ArtifactId is not correct in`pom` file with customized `withXml` ##### Tools. Incremental Compile - [`KT-62555`](https://youtrack.jetbrains.com/issue/KT-62555) Wrong ABI fingerprint for inline function containing a lambda - [`KT-75883`](https://youtrack.jetbrains.com/issue/KT-75883) Follow-up: switch from INSTANCE heuristic to outerClass chain ##### Tools. Kapt - [`KT-75936`](https://youtrack.jetbrains.com/issue/KT-75936) K2 KAPT: unsupported FIR element kinds in constant evaluation - [`KT-75942`](https://youtrack.jetbrains.com/issue/KT-75942) K2 KAPT: underscore not allowed here ##### Tools. Scripts - [`KT-76424`](https://youtrack.jetbrains.com/issue/KT-76424) Dependencies in main.kts not working with 2.1.20 - [`KT-76296`](https://youtrack.jetbrains.com/issue/KT-76296) Kotlin script compiler crashes when secondary constructor calls a function - [`KT-75589`](https://youtrack.jetbrains.com/issue/KT-75589) Scripts: "IndexOutOfBoundsException in jdk.internal.util.Preconditions.outOfBounds" when trying to extend a class which uses global variable ##### Tools. Wasm - [`KT-76161`](https://youtrack.jetbrains.com/issue/KT-76161) Wasm: "export startUnitTests was not found" after updating to Kotlin 2.1.20 </details> <details> <summary>spring-projects/spring-boot (org.springframework.boot:spring-boot-dependencies)</summary> ### [`v3.5.4`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.4) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.3...v3.5.4) #### :lady\_beetle: Bug Fixes - LambdaSafe.withFilter is not public [#&#8203;46474](https://github.com/spring-projects/spring-boot/issues/46474) - Executable JAR application class encounters performance issues when used with Palo Alto Network Cortex XDR agent [#&#8203;46402](https://github.com/spring-projects/spring-boot/issues/46402) - Runtime dependencies are missing from aotCompileClasspath and aotTestCompileClasspath when using Kotlin [#&#8203;46398](https://github.com/spring-projects/spring-boot/issues/46398) - Additional fields for structured JSON logging incompatible with nested ecs logging in 3.5.x [#&#8203;46351](https://github.com/spring-projects/spring-boot/issues/46351) - Change in DefaultErrorAttributes alters the shape of API validation error responses [#&#8203;46260](https://github.com/spring-projects/spring-boot/issues/46260) - jdbc.connections.active and jdbc.connections.idle metrics are not available when using Hikari in a native image [#&#8203;46225](https://github.com/spring-projects/spring-boot/issues/46225) - developmentOnly and testAndDevelopmentOnly dependencies may prevent implementation dependencies from being included in the uber-jar [#&#8203;46205](https://github.com/spring-projects/spring-boot/issues/46205) - Hash calculation for uber archive entries that require unpacking is inefficient [#&#8203;46203](https://github.com/spring-projects/spring-boot/issues/46203) - Permissions are applied inconsistently when building uber archives with Gradle [#&#8203;46194](https://github.com/spring-projects/spring-boot/issues/46194) - Environment variables using legacy dash format can no longer be bound [#&#8203;46184](https://github.com/spring-projects/spring-boot/issues/46184) - EmbeddedWebServerFactoryCustomizerAutoConfiguration fails when undertow-core is on the classpath and undertow-servlet is not [#&#8203;46180](https://github.com/spring-projects/spring-boot/issues/46180) - Executable JAR application class encounters performance issues [#&#8203;46177](https://github.com/spring-projects/spring-boot/issues/46177) - Executable JAR application class encounters performance issues [#&#8203;46176](https://github.com/spring-projects/spring-boot/issues/46176) - Setting spring.reactor.context-propagation has no effect when lazy initialization is enabled [#&#8203;46174](https://github.com/spring-projects/spring-boot/issues/46174) - Setting spring.netty.leak-detection has no effect when lazy initialization is enabled [#&#8203;46170](https://github.com/spring-projects/spring-boot/issues/46170) - SslInfo does not use its Clock when checking certificate validity [#&#8203;46011](https://github.com/spring-projects/spring-boot/issues/46011) #### :notebook\_with\_decorative\_cover: Documentation - Fix description of spring.batch.job.enabled [#&#8203;46247](https://github.com/spring-projects/spring-boot/issues/46247) - Fix broken Kotlin examples in reference documentation [#&#8203;46168](https://github.com/spring-projects/spring-boot/issues/46168) - Add Logback Access Reactor Netty to community starters [#&#8203;46060](https://github.com/spring-projects/spring-boot/pull/46060) #### :hammer: Dependency Upgrades - Upgrade to ActiveMQ 6.1.7 [#&#8203;46373](https://github.com/spring-projects/spring-boot/issues/46373) - Upgrade to Caffeine 3.2.2 [#&#8203;46432](https://github.com/spring-projects/spring-boot/issues/46432) - Upgrade to Couchbase Client 3.8.2 [#&#8203;46460](https://github.com/spring-projects/spring-boot/issues/46460) - Upgrade to GraphQL Java 24.1 [#&#8203;46395](https://github.com/spring-projects/spring-boot/issues/46395) - Upgrade to Groovy 4.0.28 [#&#8203;46516](https://github.com/spring-projects/spring-boot/issues/46516) - Upgrade to Hibernate 6.6.22.Final [#&#8203;46492](https://github.com/spring-projects/spring-boot/issues/46492) - Upgrade to HikariCP 6.3.1 [#&#8203;46493](https://github.com/spring-projects/spring-boot/issues/46493) - Upgrade to Infinispan 15.2.5.Final [#&#8203;46461](https://github.com/spring-projects/spring-boot/issues/46461) - Upgrade to Jackson Bom 2.19.2 [#&#8203;46494](https://github.com/spring-projects/spring-boot/issues/46494) - Upgrade to Jetty 12.0.23 [#&#8203;46375](https://github.com/spring-projects/spring-boot/issues/46375) - Upgrade to MariaDB 3.5.4 [#&#8203;46376](https://github.com/spring-projects/spring-boot/issues/46376) - Upgrade to Maven Invoker Plugin 3.9.1 [#&#8203;46377](https://github.com/spring-projects/spring-boot/issues/46377) - Upgrade to Micrometer 1.15.2 [#&#8203;46280](https://github.com/spring-projects/spring-boot/issues/46280) - Upgrade to Micrometer Tracing 1.5.2 [#&#8203;46281](https://github.com/spring-projects/spring-boot/issues/46281) - Upgrade to MSSQL JDBC 12.10.1.jre11 [#&#8203;46378](https://github.com/spring-projects/spring-boot/issues/46378) - Upgrade to MySQL 9.3.0 [#&#8203;46371](https://github.com/spring-projects/spring-boot/issues/46371) - Upgrade to Neo4j Java Driver 5.28.9 [#&#8203;46434](https://github.com/spring-projects/spring-boot/issues/46434) - Upgrade to Netty 4.1.123.Final [#&#8203;46435](https://github.com/spring-projects/spring-boot/issues/46435) - Upgrade to Prometheus Client 1.3.10 [#&#8203;46379](https://github.com/spring-projects/spring-boot/issues/46379) - Upgrade to Reactor Bom 2024.0.8 [#&#8203;46282](https://github.com/spring-projects/spring-boot/issues/46282) - Upgrade to RxJava3 3.1.11 [#&#8203;46380](https://github.com/spring-projects/spring-boot/issues/46380) - Upgrade to Spring AMQP 3.2.6 [#&#8203;46283](https://github.com/spring-projects/spring-boot/issues/46283) - Upgrade to Spring Data Bom 2025.0.2 [#&#8203;46284](https://github.com/spring-projects/spring-boot/issues/46284) - Upgrade to Spring Framework 6.2.9 [#&#8203;46218](https://github.com/spring-projects/spring-boot/issues/46218) - Upgrade to Spring GraphQL 1.4.1 [#&#8203;46381](https://github.com/spring-projects/spring-boot/issues/46381) - Upgrade to Spring Integration 6.5.1 [#&#8203;46359](https://github.com/spring-projects/spring-boot/issues/46359) - Upgrade to Spring Kafka 3.3.8 [#&#8203;46360](https://github.com/spring-projects/spring-boot/issues/46360) - Upgrade to Spring LDAP 3.3.2 [#&#8203;46285](https://github.com/spring-projects/spring-boot/issues/46285) - Upgrade to Spring Pulsar 1.2.8 [#&#8203;46286](https://github.com/spring-projects/spring-boot/issues/46286) - Upgrade to Spring Security 6.5.2 [#&#8203;46477](https://github.com/spring-projects/spring-boot/issues/46477) - Upgrade to Spring WS 4.1.1 [#&#8203;46362](https://github.com/spring-projects/spring-boot/issues/46362) - Upgrade to Testcontainers 1.21.3 [#&#8203;46382](https://github.com/spring-projects/spring-boot/issues/46382) - Upgrade to Tomcat 10.1.43 [#&#8203;46383](https://github.com/spring-projects/spring-boot/issues/46383) - Upgrade to XmlUnit2 2.10.3 [#&#8203;46384](https://github.com/spring-projects/spring-boot/issues/46384) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;Dockerel](https://github.com/Dockerel), [@&#8203;PiyalAhmed](https://github.com/PiyalAhmed), [@&#8203;benelog](https://github.com/benelog), [@&#8203;dmitrysulman](https://github.com/dmitrysulman), [@&#8203;izeye](https://github.com/izeye), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;nosan](https://github.com/nosan), and [@&#8203;quaff](https://github.com/quaff) ### [`v3.5.3`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.3) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.2...v3.5.3) #### :lady\_beetle: Bug Fixes - Binder context does not restore previous source causing missing data on Spring Boot 3.5 or above [#&#8203;46040](https://github.com/spring-projects/spring-boot/issues/46040) ### [`v3.5.2`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.2) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.1...v3.5.2) #### :lady\_beetle: Bug Fixes - IllegalArgumentException: 'name' must not be null thrown when property source filtering applied twice [#&#8203;46032](https://github.com/spring-projects/spring-boot/issues/46032) ### [`v3.5.1`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.1) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.5.0...v3.5.1) #### :warning: Noteworthy Changes - This release [upgrades to Tomcat 10.1.42](https://github.com/spring-projects/spring-boot/issues/45872) which has introduced limits for part count and header size in `multipart/form-data` requests. These limits can be customized using `server.tomcat.max-part-count` and `server.tomcat.max-part-header-size` respectively. #### :star: New Features - Allow Specifying ConfigData.Options On ConfigDataEnvironmentContributors [#&#8203;42932](https://github.com/spring-projects/spring-boot/issues/42932) #### :lady\_beetle: Bug Fixes - Executable JAR application class encounters performance issues when classpath URLs reference a host [#&#8203;46028](https://github.com/spring-projects/spring-boot/issues/46028) - Loading from spring.factories may fail with a ClassNotFoundException when the TCCL changes between calls [#&#8203;46019](https://github.com/spring-projects/spring-boot/issues/46019) - spring.couchbase.authentication.jks.private-key-password has no effect [#&#8203;46006](https://github.com/spring-projects/spring-boot/issues/46006) - Actuator heapdump endpoint is failing on modern OpenJ9 JVMs [#&#8203;46005](https://github.com/spring-projects/spring-boot/issues/46005) - UnboundConfigurationPropertiesException is no longer thrown from IndexedElementsBinder [#&#8203;45994](https://github.com/spring-projects/spring-boot/issues/45994) - DataSouceBuilder can fail with a NPE when the driver is null [#&#8203;45992](https://github.com/spring-projects/spring-boot/issues/45992) - JSON writer incorrectly escapes forward slash which can cause structure logging issues [#&#8203;45980](https://github.com/spring-projects/spring-boot/issues/45980) - ManagementContextAutoConfiguration adds a property source that degrades binding performance [#&#8203;45968](https://github.com/spring-projects/spring-boot/pull/45968) - ClientHttpConnectorAutoConfiguration fails to load when 'java.net.http.HttpClient' is unavailable [#&#8203;45955](https://github.com/spring-projects/spring-boot/issues/45955) - It is not possible to opt-out of profile validation or use profile names that contain '.' [#&#8203;45947](https://github.com/spring-projects/spring-boot/issues/45947) - GraphQlProperties.DeprecatedSse is not annotated as deprecated [#&#8203;45878](https://github.com/spring-projects/spring-boot/issues/45878) - SpringApplication.setEnvironmentPrefix is ignored when reading MANAGEMENT\_SERVER\_PORT [#&#8203;45857](https://github.com/spring-projects/spring-boot/issues/45857) - Write and delete operations no longer work in the Cloud Foundry actuator support with Spring Security due to CSRF protection [#&#8203;45848](https://github.com/spring-projects/spring-boot/issues/45848) - ConditionalOnAvailableEndpoint does not use the ConditionContext's ClassLoader to load exposure outcome contributors [#&#8203;45803](https://github.com/spring-projects/spring-boot/issues/45803) - Binding no longer works with sytem environment properties that are not upper case [#&#8203;45741](https://github.com/spring-projects/spring-boot/issues/45741) - ManagementWebServerFactoryCustomizer and ManagementErrorPageCustomizer should not have the same order [#&#8203;45736](https://github.com/spring-projects/spring-boot/issues/45736) - Default version of Awailitility is not compatible with Kotlin 1.9 baseline [#&#8203;45673](https://github.com/spring-projects/spring-boot/issues/45673) - Spring Boot 3.5's dependency management should have been upgraded to Lettuce 6.6.0.RELEASE [#&#8203;45670](https://github.com/spring-projects/spring-boot/issues/45670) - Spring Boot 3.5's dependency management should have been upgraded to Jedis 6.0.0 [#&#8203;45669](https://github.com/spring-projects/spring-boot/issues/45669) - SAML2 autoconfiguration is not imported by `@WebMvcTest` [#&#8203;45666](https://github.com/spring-projects/spring-boot/issues/45666) - Spring Boot 3.5's dependency management should have been upgraded to MongoDB 5.5.0 [#&#8203;45660](https://github.com/spring-projects/spring-boot/issues/45660) #### :notebook\_with\_decorative\_cover: Documentation - Fix Docker security options links in Packaging OCI images sections [#&#8203;46021](https://github.com/spring-projects/spring-boot/issues/46021) - Improve documentation for configuring Spring Security with '/error' [#&#8203;46009](https://github.com/spring-projects/spring-boot/issues/46009) - Timestamps in Retrieving Audit Events examples do not match the accompanying text [#&#8203;45997](https://github.com/spring-projects/spring-boot/issues/45997) - Add SSL response structure to actuator info endpoint documentation [#&#8203;45921](https://github.com/spring-projects/spring-boot/issues/45921) - Update javadoc of test slice annotations to suggest MockitoBean rather than MockBean [#&#8203;45915](https://github.com/spring-projects/spring-boot/issues/45915) - Include configuration classes from all modules in the "Auto-configuration Classes" appendix [#&#8203;45863](https://github.com/spring-projects/spring-boot/issues/45863) - Links to Testcontainers javadoc for many classes not in the core testcontainers module do not work [#&#8203;45844](https://github.com/spring-projects/spring-boot/issues/45844) - Update documentation to reflect changes in TestRestTemplate's default redirect behavior [#&#8203;45842](https://github.com/spring-projects/spring-boot/issues/45842) - Deprecation replacement for spring.codec.\* properties has a typo [#&#8203;45743](https://github.com/spring-projects/spring-boot/pull/45743) - Gradle Shadow Plugin link in the reference guide is outdated [#&#8203;45740](https://github.com/spring-projects/spring-boot/issues/45740) - Example of using prometheus-metrics-exporter-pushgateway has wrong artifactId [#&#8203;45684](https://github.com/spring-projects/spring-boot/pull/45684) - Document use of git-commit-id-maven-plugin consistently [#&#8203;45683](https://github.com/spring-projects/spring-boot/issues/45683) - Update javadoc of Configurer classes that apply sensible defaults to describe how they're typically used [#&#8203;45656](https://github.com/spring-projects/spring-boot/issues/45656) #### :hammer: Dependency Upgrades - Upgrade to Build Helper Maven Plugin 3.6.1 [#&#8203;45827](https://github.com/spring-projects/spring-boot/issues/45827) - Upgrade to Byte Buddy 1.17.6 [#&#8203;45981](https://github.com/spring-projects/spring-boot/issues/45981) - Upgrade to Caffeine 3.2.1 [#&#8203;45864](https://github.com/spring-projects/spring-boot/issues/45864) - Upgrade to DB2 JDBC 12.1.2.0 [#&#8203;45942](https://github.com/spring-projects/spring-boot/issues/45942) - Upgrade to Git Commit ID Maven Plugin 9.0.2 [#&#8203;45828](https://github.com/spring-projects/spring-boot/issues/45828) - Upgrade to Groovy 4.0.27 [#&#8203;45829](https://github.com/spring-projects/spring-boot/issues/45829) - Upgrade to Hibernate 6.6.18.Final [#&#8203;45958](https://github.com/spring-projects/spring-boot/issues/45958) - Upgrade to HttpClient5 5.5 [#&#8203;46031](https://github.com/spring-projects/spring-boot/issues/46031) - Upgrade to Infinispan 15.2.4.Final [#&#8203;45943](https://github.com/spring-projects/spring-boot/issues/45943) - Upgrade to Jackson Bom 2.19.1 [#&#8203;45982](https://github.com/spring-projects/spring-boot/issues/45982) - Upgrade to Jaybird 6.0.2 [#&#8203;45832](https://github.com/spring-projects/spring-boot/issues/45832) - Upgrade to Jetty 12.0.22 [#&#8203;45834](https://github.com/spring-projects/spring-boot/issues/45834) - Upgrade to Jetty Reactive HTTPClient 4.0.10 [#&#8203;45833](https://github.com/spring-projects/spring-boot/issues/45833) - Upgrade to jOOQ 3.19.24 [#&#8203;45944](https://github.com/spring-projects/spring-boot/issues/45944) - Upgrade to Micrometer 1.15.1 [#&#8203;45776](https://github.com/spring-projects/spring-boot/issues/45776) - Upgrade to Micrometer Tracing 1.5.1 [#&#8203;45777](https://github.com/spring-projects/spring-boot/issues/45777) - Upgrade to MongoDB 5.5.1 [#&#8203;45865](https://github.com/spring-projects/spring-boot/issues/45865) - Upgrade to Netty 4.1.122.Final [#&#8203;45835](https://github.com/spring-projects/spring-boot/issues/45835) - Upgrade to Postgresql 42.7.7 [#&#8203;45945](https://github.com/spring-projects/spring-boot/issues/45945) - Upgrade to Prometheus Client 1.3.8 [#&#8203;45837](https://github.com/spring-projects/spring-boot/issues/45837) - Upgrade to Pulsar 4.0.5 [#&#8203;45838](https://github.com/spring-projects/spring-boot/issues/45838) - Upgrade to Reactor Bom 2024.0.7 [#&#8203;45778](https://github.com/spring-projects/spring-boot/issues/45778) - Upgrade to REST Assured 5.5.5 [#&#8203;45839](https://github.com/spring-projects/spring-boot/issues/45839) - Upgrade to Spring Authorization Server 1.5.1 [#&#8203;45779](https://github.com/spring-projects/spring-boot/issues/45779) - Upgrade to Spring Data Bom 2025.0.1 [#&#8203;45780](https://github.com/spring-projects/spring-boot/issues/45780) - Upgrade to Spring Framework 6.2.8 [#&#8203;45781](https://github.com/spring-projects/spring-boot/issues/45781) - Upgrade to Spring HATEOAS 2.5.1 [#&#8203;45946](https://github.com/spring-projects/spring-boot/issues/45946) - Upgrade to Spring Kafka 3.3.7 [#&#8203;45782](https://github.com/spring-projects/spring-boot/issues/45782) - Upgrade to Spring LDAP 3.3.1 [#&#8203;45783](https://github.com/spring-projects/spring-boot/issues/45783) - Upgrade to Spring Pulsar 1.2.7 [#&#8203;45784](https://github.com/spring-projects/spring-boot/issues/45784) - Upgrade to Spring RESTDocs 3.0.4 [#&#8203;45785](https://github.com/spring-projects/spring-boot/issues/45785) - Upgrade to Spring Security 6.5.1 [#&#8203;45786](https://github.com/spring-projects/spring-boot/issues/45786) - Upgrade to Spring Session 3.5.1 [#&#8203;45787](https://github.com/spring-projects/spring-boot/issues/45787) - Upgrade to Testcontainers 1.21.2 [#&#8203;46029](https://github.com/spring-projects/spring-boot/issues/46029) - Upgrade to Tomcat 10.1.42 [#&#8203;45872](https://github.com/spring-projects/spring-boot/issues/45872) - Upgrade to UnboundID LDAPSDK 7.0.3 [#&#8203;45983](https://github.com/spring-projects/spring-boot/issues/45983) - Upgrade to XmlUnit2 2.10.2 [#&#8203;45841](https://github.com/spring-projects/spring-boot/issues/45841) - Upgrade to Zipkin Reporter 3.5.1 [#&#8203;45826](https://github.com/spring-projects/spring-boot/issues/45826) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;Peksa](https://github.com/Peksa), [@&#8203;Rutujakolte03](https://github.com/Rutujakolte03), [@&#8203;chanbinme](https://github.com/chanbinme), [@&#8203;csbiy](https://github.com/csbiy), [@&#8203;davidlj95](https://github.com/davidlj95), [@&#8203;izeye](https://github.com/izeye), [@&#8203;juliojgd](https://github.com/juliojgd), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;nicolasgarea](https://github.com/nicolasgarea), [@&#8203;nosan](https://github.com/nosan), [@&#8203;quaff](https://github.com/quaff), [@&#8203;shekharAggarwal](https://github.com/shekharAggarwal), [@&#8203;tanruian](https://github.com/tanruian), and [@&#8203;wonyongg](https://github.com/wonyongg) ### [`v3.5.0`](https://github.com/spring-projects/spring-boot/releases/tag/v3.5.0) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.4.8...v3.5.0) Full [release notes for Spring Boot 3.5](https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-3.5-Release-Notes) are available on the wiki. #### :star: New Features - Make heapdump endpoint restricted by default [#&#8203;45624](https://github.com/spring-projects/spring-boot/pull/45624) - Remove SSL status tag from metrics [#&#8203;45602](https://github.com/spring-projects/spring-boot/issues/45602) - Remove 'spring.http.client' deprecation and change 'spring.http.reactiveclient.settings' to 'spring.http.reactiveclient' [#&#8203;45507](https://github.com/spring-projects/spring-boot/issues/45507) #### :lady\_beetle: Bug Fixes - Unable to override/set nested ConfigurationProperties by passing as a system property [#&#8203;45639](https://github.com/spring-projects/spring-boot/issues/45639) - ValidationAutoConfiguration triggers early initialization of properties binding [#&#8203;45618](https://github.com/spring-projects/spring-boot/issues/45618) - Micrometer "enable" annotations property does not cover observed aspect [#&#8203;45617](https://github.com/spring-projects/spring-boot/issues/45617) - spring.graphql.sse.timeout is no longer exposed [#&#8203;45613](https://github.com/spring-projects/spring-boot/issues/45613) - SpringApplication.setEnvironmentPrefix is ignored when reading SPRING\_PROFILES\_ACTIVE [#&#8203;45549](https://github.com/spring-projects/spring-boot/issues/45549) - IllegalStateException when extracting using layers a module with no code of its own [#&#8203;45449](https://github.com/spring-projects/spring-boot/issues/45449) - Removed spring.batch.initialize-schema property is still considered [#&#8203;45380](https://github.com/spring-projects/spring-boot/pull/45380) - ReactorHttpClientBuilder does not offer a factory method to create the HttpClient [#&#8203;45378](https://github.com/spring-projects/spring-boot/issues/45378) - Suggested values for spring.jpa.hibernate.ddl-auto are not aligned with Hibernate [#&#8203;45351](https://github.com/spring-projects/spring-boot/issues/45351) - Custom default units declared on a field are ignored when binding properties in a native image [#&#8203;45347](https://github.com/spring-projects/spring-boot/issues/45347) - DockerRegistryConfigAuthentication uses the wrong serverUrl as a fallback for the Credentials helper [#&#8203;45345](https://github.com/spring-projects/spring-boot/pull/45345) - Various spring.datasource properties are mistakenly marked as ignored [#&#8203;45342](https://github.com/spring-projects/spring-boot/issues/45342) - JerseyWebApplicationInitializer always gets loaded, setting a ServletContext initParameter [#&#8203;45297](https://github.com/spring-projects/spring-boot/issues/45297) - DockerRegistryConfigAuthentication does not align with Docker CLI [#&#8203;45292](https://github.com/spring-projects/spring-boot/pull/45292) - Unlike the Docker CLI, "\x00" characters are not trimmed from a decoded Docker Registry password [#&#8203;45290](https://github.com/spring-projects/spring-boot/pull/45290) - CloudFoundry security matcher logs a warning due to use of the 'ignoring()' method [#&#8203;32622](https://github.com/spring-projects/spring-boot/issues/32622) #### :notebook\_with\_decorative\_cover: Documentation - Document the java info contribution [#&#8203;45634](https://github.com/spring-projects/spring-boot/issues/45634) - Document the process info contribution [#&#8203;45632](https://github.com/spring-projects/spring-boot/issues/45632) - Document the os info contribution [#&#8203;45630](https://github.com/spring-projects/spring-boot/issues/45630) - Document typical spring.application.group and name use [#&#8203;45628](https://github.com/spring-projects/spring-boot/issues/45628) - Document that bean methods should be static when annotated with `@ConfigurationPropertiesBinding` [#&#8203;45626](https://github.com/spring-projects/spring-boot/issues/45626) - Document the way that primary Kotlin constructors are used when binding [#&#8203;45553](https://github.com/spring-projects/spring-boot/issues/45553) - Improve "profile" reference documentation with additional admonitions [#&#8203;45551](https://github.com/spring-projects/spring-boot/issues/45551) - Improve setEnvironmentPrefix(...) reference documentation [#&#8203;45376](https://github.com/spring-projects/spring-boot/issues/45376) - Document all the available Testcontainers integrations [#&#8203;45367](https://github.com/spring-projects/spring-boot/issues/45367) - Document when a spring.config.import value is relative and when it is fixed [#&#8203;45363](https://github.com/spring-projects/spring-boot/issues/45363) - Update org.cyclonedx.bom version in docs to 2.3.0 [#&#8203;45320](https://github.com/spring-projects/spring-boot/issues/45320) - Update link to "Parameter Name Retention" section of Spring Framework's release notes [#&#8203;45299](https://github.com/spring-projects/spring-boot/issues/45299) #### :hammer: Dependency Upgrades - Prevent upgrade to Prometheus Client 1.3.7 [#&#8203;45541](https://github.com/spring-projects/spring-boot/issues/45541) - Upgrade to Couchbase Client 3.8.1 [#&#8203;45539](https://github.com/spring-projects/spring-boot/issues/45539) - Upgrade to Elasticsearch 8.18.1 [#&#8203;45447](https://github.com/spring-projects/spring-boot/issues/45447) - Upgrade to GraphQL Java 24.0 [#&#8203;45588](https://github.com/spring-projects/spring-boot/issues/45588) - Upgrade to Hibernate 6.6.15.Final [#&#8203;45540](https://github.com/spring-projects/spring-boot/issues/45540) - Upgrade to HttpClient5 5.4.4 [#&#8203;45462](https://github.com/spring-projects/spring-boot/issues/45462) - Upgrade to Jackson Bom 2.18.4 [#&#8203;45463](https://github.com/spring-projects/spring-boot/issues/45463) - Upgrade to Jackson Bom 2.19.0 [#&#8203;45542](https://github.com/spring-projects/spring-boot/issues/45542) - Upgrade to Jetty 12.0.21 [#&#8203;45519](https://github.com/spring-projects/spring-boot/issues/45519) - Upgrade to jOOQ 3.19.23 [#&#8203;45465](https://github.com/spring-projects/spring-boot/issues/45465) - Upgrade to Kafka 3.9.1 [#&#8203;45606](https://github.com/spring-projects/spring-boot/issues/45606) - Upgrade to Micrometer 1.15.0 [#&#8203;45432](https://github.com/spring-projects/spring-boot/issues/45432) - Upgrade to Micrometer Tracing 1.5.0 [#&#8203;45433](https://github.com/spring-projects/spring-boot/issues/45433) - Upgrade to Neo4j Java Driver 5.28.5 [#&#8203;45446](https://github.com/spring-projects/spring-boot/issues/45446) - Upgrade to Netty 4.1.121.Final [#&#8203;45466](https://github.com/spring-projects/spring-boot/issues/45466) - Upgrade to R2DBC Proxy 1.1.6.RELEASE [#&#8203;45467](https://github.com/spring-projects/spring-boot/issues/45467) - Upgrade to Reactor Bom 2024.0.6 [#&#8203;45434](https://github.com/spring-projects/spring-boot/issues/45434) - Upgrade to REST Assured 5.5.2 [#&#8203;45571](https://github.com/spring-projects/spring-boot/issues/45571) - Upgrade to Spring Authorization Server 1.5.0 [#&#8203;45435](https://github.com/spring-projects/spring-boot/issues/45435) - Upgrade to Spring Data Bom 2025.0.0 [#&#8203;45436](https://github.com/spring-projects/spring-boot/issues/45436) - Upgrade to Spring Framework 6.2.7 [#&#8203;45437](https://github.com/spring-projects/spring-boot/issues/45437) - Upgrade to Spring GraphQL 1.4.0 [#&#8203;45438](https://github.com/spring-projects/spring-boot/issues/45438) - Upgrade to Spring HATEOAS 2.5.0 [#&#8203;45559](https://github.com/spring-projects/spring-boot/issues/45559) - Upgrade to Spring Integration 6.5.0 [#&#8203;45439](https://github.com/spring-projects/spring-boot/issues/45439) - Upgrade to Spring Kafka 3.3.6 [#&#8203;45440](https://github.com/spring-projects/spring-boot/issues/45440) - Upgrade to Spring LDAP 3.3.0 [#&#8203;45441](https://github.com/spring-projects/spring-boot/issues/45441) - Upgrade to Spring Pulsar 1.2.6 [#&#8203;45442](https://github.com/spring-projects/spring-boot/issues/45442) - Upgrade to Spring Retry 2.0.12 [#&#8203;45443](https://github.com/spring-projects/spring-boot/issues/45443) - Upgrade to Spring Security 6.5.0 [#&#8203;45444](https://github.com/spring-projects/spring-boot/issues/45444) - Upgrade to Spring Session 3.5.0 [#&#8203;45560](https://github.com/spring-projects/spring-boot/issues/45560) - Upgrade to Spring WS 4.1.0 [#&#8203;45445](https://github.com/spring-projects/spring-boot/issues/45445) - Upgrade to Tomcat 10.1.41 [#&#8203;45520](https://github.com/spring-projects/spring-boot/issues/45520) - Upgrade to XmlUnit2 2.10.1 [#&#8203;45607](https://github.com/spring-projects/spring-boot/issues/45607) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;ahrytsiuk](https://github.com/ahrytsiuk), [@&#8203;izeye](https://github.com/izeye), [@&#8203;lhotari](https://github.com/lhotari), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;nosan](https://github.com/nosan), [@&#8203;quaff](https://github.com/quaff), [@&#8203;thecooldrop](https://github.com/thecooldrop), and [@&#8203;yybmion](https://github.com/yybmion) ### [`v3.4.8`](https://github.com/spring-projects/spring-boot/releases/tag/v3.4.8) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.4.7...v3.4.8) #### :lady\_beetle: Bug Fixes - LambdaSafe.withFilter is not public [#&#8203;46472](https://github.com/spring-projects/spring-boot/issues/46472) - Executable JAR application class encounters performance issues when used with Palo Alto Network Cortex XDR agent [#&#8203;46401](https://github.com/spring-projects/spring-boot/issues/46401) - Runtime dependencies are missing from aotCompileClasspath and aotTestCompileClasspath when using Kotlin [#&#8203;46397](https://github.com/spring-projects/spring-boot/issues/46397) - jdbc.connections.active and jdbc.connections.idle metrics are not available when using Hikari in a native image [#&#8203;46214](https://github.com/spring-projects/spring-boot/issues/46214) - Hash calculation for uber archive entries that require unpacking is inefficient [#&#8203;46202](https://github.com/spring-projects/spring-boot/issues/46202) - Permissions are applied inconsistently when building uber archives with Gradle [#&#8203;46193](https://github.com/spring-projects/spring-boot/issues/46193) - EmbeddedWebServerFactoryCustomizerAutoConfiguration fails when undertow-core is on the classpath and undertow-servlet is not [#&#8203;46178](https://github.com/spring-projects/spring-boot/issues/46178) - Setting spring.netty.leak-detection has no effect when lazy initialization is enabled [#&#8203;46164](https://github.com/spring-projects/spring-boot/pull/46164) - Executable JAR application class encounters performance issues [#&#8203;46063](https://github.com/spring-projects/spring-boot/issues/46063) - developmentOnly and testAndDevelopmentOnly dependencies may prevent implementation dependencies from being included in the uber-jar [#&#8203;46043](https://github.com/spring-projects/spring-boot/issues/46043) - Binder context does not restore previous source causing missing data on Spring Boot 3.5 or above [#&#8203;46039](https://github.com/spring-projects/spring-boot/issues/46039) - Setting spring.reactor.context-propagation has no effect when lazy initialization is enabled [#&#8203;45846](https://github.com/spring-projects/spring-boot/issues/45846) #### :notebook\_with\_decorative\_cover: Documentation - Fix description of spring.batch.job.enabled [#&#8203;46228](https://github.com/spring-projects/spring-boot/pull/46228) - Fix broken Kotlin examples in reference documentation [#&#8203;46064](https://github.com/spring-projects/spring-boot/pull/46064) #### :hammer: Dependency Upgrades - Upgrade to ActiveMQ 6.1.7 [#&#8203;46385](https://github.com/spring-projects/spring-boot/issues/46385) - Upgrade to GraphQL Java 22.4 [#&#8203;46394](https://github.com/spring-projects/spring-boot/issues/46394) - Upgrade to Groovy 4.0.28 [#&#8203;46512](https://github.com/spring-projects/spring-boot/issues/46512) - Upgrade to Hibernate 6.6.22.Final [#&#8203;46491](https://github.com/spring-projects/spring-boot/issues/46491) - Upgrade to Infinispan 15.0.18.Final [#&#8203;46462](https://github.com/spring-projects/spring-boot/issues/46462) - Upgrade to Jetty 12.0.23 [#&#8203;46388](https://github.com/spring-projects/spring-boot/issues/46388) - Upgrade to Micrometer 1.14.9 [#&#8203;46273](https://github.com/spring-projects/spring-boot/issues/46273) - Upgrade to Micrometer Tracing 1.4.8 [#&#8203;46274](https://github.com/spring-projects/spring-boot/issues/46274) - Upgrade to MySQL 9.3.0 [#&#8203;46370](https://github.com/spring-projects/spring-boot/issues/46370) - Upgrade to Neo4j Java Driver 5.28.9 [#&#8203;46430](https://github.com/spring-projects/spring-boot/issues/46430) - Upgrade to Netty 4.1.123.Final [#&#8203;46431](https://github.com/spring-projects/spring-boot/issues/46431) - Upgrade to Prometheus Client 1.3.10 [#&#8203;46389](https://github.com/spring-projects/spring-boot/issues/46389) - Upgrade to Reactor Bom 2024.0.8 [#&#8203;46275](https://github.com/spring-projects/spring-boot/issues/46275) - Upgrade to RxJava3 3.1.11 [#&#8203;46390](https://github.com/spring-projects/spring-boot/issues/46390) - Upgrade to Spring AMQP 3.2.6 [#&#8203;46276](https://github.com/spring-projects/spring-boot/issues/46276) - Upgrade to Spring Data Bom 2024.1.8 [#&#8203;46277](https://github.com/spring-projects/spring-boot/issues/46277) - Upgrade to Spring Framework 6.2.9 [#&#8203;46278](https://github.com/spring-projects/spring-boot/issues/46278) - Upgrade to Spring GraphQL 1.3.6 [#&#8203;46391](https://github.com/spring-projects/spring-boot/issues/46391) - Upgrade to Spring Integration 6.4.6 [#&#8203;46361](https://github.com/spring-projects/spring-boot/issues/46361) - Upgrade to Spring Kafka 3.3.8 [#&#8203;46363](https://github.com/spring-projects/spring-boot/issues/46363) - Upgrade to Spring Pulsar 1.2.8 [#&#8203;46279](https://github.com/spring-projects/spring-boot/issues/46279) - Upgrade to Spring Security 6.4.8 [#&#8203;46476](https://github.com/spring-projects/spring-boot/issues/46476) - Upgrade to Tomcat 10.1.43 [#&#8203;46392](https://github.com/spring-projects/spring-boot/issues/46392) - Upgrade to XmlUnit2 2.10.3 [#&#8203;46393](https://github.com/spring-projects/spring-boot/issues/46393) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;Dockerel](https://github.com/Dockerel), [@&#8203;PiyalAhmed](https://github.com/PiyalAhmed), [@&#8203;benelog](https://github.com/benelog), [@&#8203;dmitrysulman](https://github.com/dmitrysulman), [@&#8203;izeye](https://github.com/izeye), [@&#8203;nosan](https://github.com/nosan), and [@&#8203;quaff](https://github.com/quaff) ### [`v3.4.7`](https://github.com/spring-projects/spring-boot/releases/tag/v3.4.7) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.4.6...v3.4.7) #### :warning: Noteworthy Changes - This release [upgrades to Tomcat 10.1.42](https://github.com/spring-projects/spring-boot/issues/45870) which has introduced limits for part count and header size in `multipart/form-data` requests. These limits can be customized using `server.tomcat.max-part-count` and `server.tomcat.max-part-header-size` respectively. #### :lady\_beetle: Bug Fixes - Executable JAR application class encounters performance issues when classpath URLs reference a host [#&#8203;46027](https://github.com/spring-projects/spring-boot/issues/46027) - Loading from spring.factories may fail with a ClassNotFoundException when the TCCL changes between calls [#&#8203;46018](https://github.com/spring-projects/spring-boot/issues/46018) - Actuator heapdump endpoint is failing on modern OpenJ9 JVMs [#&#8203;46004](https://github.com/spring-projects/spring-boot/issues/46004) - DataSouceBuilder can fail with a NPE when the driver is null [#&#8203;45991](https://github.com/spring-projects/spring-boot/issues/45991) - JSON writer incorrectly escapes forward slash which can cause structure logging issues [#&#8203;45972](https://github.com/spring-projects/spring-boot/issues/45972) - spring.couchbase.authentication.jks.private-key-password has no effect [#&#8203;45883](https://github.com/spring-projects/spring-boot/issues/45883) - ConditionalOnAvailableEndpoint does not use the ConditionContext's ClassLoader to load exposure outcome contributors [#&#8203;45800](https://github.com/spring-projects/spring-boot/issues/45800) - ManagementWebServerFactoryCustomizer and ManagementErrorPageCustomizer should not have the same order [#&#8203;45728](https://github.com/spring-projects/spring-boot/issues/45728) - SAML2 autoconfiguration is not imported by `@WebMvcTest` [#&#8203;45650](https://github.com/spring-projects/spring-boot/pull/45650) #### :notebook\_with\_decorative\_cover: Documentation - Fix Docker security options links in Packaging OCI images sections [#&#8203;46020](https://github.com/spring-projects/spring-boot/issues/46020) - Improve documentation for configuring Spring Security with '/error' [#&#8203;46008](https://github.com/spring-projects/spring-boot/issues/46008) - Timestamps in Retrieving Audit Events examples do not match the accompanying text [#&#8203;45996](https://github.com/spring-projects/spring-boot/issues/45996) - Update javadoc of test slice annotations to suggest MockitoBean rather than MockBean [#&#8203;45887](https://github.com/spring-projects/spring-boot/pull/45887) - Include configuration classes from all modules in the "Auto-configuration Classes" appendix [#&#8203;45861](https://github.com/spring-projects/spring-boot/issues/45861) - Links to Testcontainers javadoc for many classes not in the core testcontainers module do not work [#&#8203;45843](https://github.com/spring-projects/spring-boot/issues/45843) - Add SSL response structure to actuator info endpoint documentation [#&#8203;45792](https://github.com/spring-projects/spring-boot/pull/45792) - Gradle Shadow Plugin link in the reference guide is outdated [#&#8203;45739](https://github.com/spring-projects/spring-boot/issues/45739) - Document use of git-commit-id-maven-plugin consistently [#&#8203;45682](https://github.com/spring-projects/spring-boot/issues/45682) - Update javadoc of Configurer classes that apply sensible defaults to describe how they're typically used [#&#8203;45655](https://github.com/spring-projects/spring-boot/issues/45655) - Clarify the situation with support for Prometheus PushGateway and the deprecated simpleclient [#&#8203;45649](https://github.com/spring-projects/spring-boot/issues/45649) #### :hammer: Dependency Upgrades - Upgrade to Build Helper Maven Plugin 3.6.1 [#&#8203;45812](https://github.com/spring-projects/spring-boot/issues/45812) - Upgrade to Git Commit ID Maven Plugin 9.0.2 [#&#8203;45813](https://github.com/spring-projects/spring-boot/issues/45813) - Upgrade to Groovy 4.0.27 [#&#8203;45814](https://github.com/spring-projects/spring-boot/issues/45814) - Upgrade to Hibernate 6.6.18.Final [#&#8203;45956](https://github.com/spring-projects/spring-boot/issues/45956) - Upgrade to Infinispan 15.0.15.Final [#&#8203;45816](https://github.com/spring-projects/spring-boot/issues/45816) - Upgrade to Jackson Bom 2.18.4.1 [#&#8203;45957](https://github.com/spring-projects/spring-boot/issues/45957) - Upgrade to Jaybird 5.0.8.java11 [#&#8203;45817](https://github.com/spring-projects/spring-boot/issues/45817) - Upgrade to Jetty 12.0.22 [#&#8203;45819](https://github.com/spring-projects/spring-boot/issues/45819) - Upgrade to Jetty Reactive HTTPClient 4.0.10 [#&#8203;45818](https://github.com/spring-projects/spring-boot/issues/45818) - Upgrade to Micrometer 1.14.8 [#&#8203;45763](https://github.com/spring-projects/spring-boot/issues/45763) - Upgrade to Micrometer Tracing 1.4.7 [#&#8203;45764](https://github.com/spring-projects/spring-boot/issues/45764) - Upgrade to Netty 4.1.122.Final [#&#8203;45820](https://github.com/spring-projects/spring-boot/issues/45820) - Upgrade to Postgresql 42.7.6 [#&#8203;45821](https://github.com/spring-projects/spring-boot/issues/45821) - Upgrade to Prometheus Client 1.3.8 [#&#8203;45822](https://github.com/spring-projects/spring-boot/issues/45822) - Upgrade to Pulsar 3.3.7 [#&#8203;45823](https://github.com/spring-projects/spring-boot/issues/45823) - Upgrade to Reactor Bom 2024.0.7 [#&#8203;45765](https://github.com/spring-projects/spring-boot/issues/45765) - Upgrade to REST Assured 5.5.5 [#&#8203;45824](https://github.com/spring-projects/spring-boot/issues/45824) - Upgrade to Spring Authorization Server 1.4.4 [#&#8203;45766](https://github.com/spring-projects/spring-boot/issues/45766) - Upgrade to Spring Data Bom 2024.1.7 [#&#8203;45767](https://github.com/spring-projects/spring-boot/issues/45767) - Upgrade to Spring Framework 6.2.8 [#&#8203;45768](https://github.com/spring-projects/spring-boot/issues/45768) - Upgrade to Spring Kafka 3.3.7 [#&#8203;45769](https://github.com/spring-projects/spring-boot/issues/45769) - Upgrade to Spring LDAP 3.2.13 [#&#8203;45770](https://github.com/spring-projects/spring-boot/issues/45770) - Upgrade to Spring Pulsar 1.2.7 [#&#8203;45771](https://github.com/spring-projects/spring-boot/issues/45771) - Upgrade to Spring RESTDocs 3.0.4 [#&#8203;45772](https://github.com/spring-projects/spring-boot/issues/45772) - Upgrade to Spring Security 6.4.7 [#&#8203;45773](https://github.com/spring-projects/spring-boot/issues/45773) - Upgrade to Spring Session 3.4.4 [#&#8203;45774](https://github.com/spring-projects/spring-boot/issues/45774) - Upgrade to Spring WS 4.0.15 [#&#8203;45775](https://github.com/spring-projects/spring-boot/issues/45775) - Upgrade to Tomcat 10.1.42 [#&#8203;45870](https://github.com/spring-projects/spring-boot/issues/45870) - Upgrade to XmlUnit2 2.10.2 [#&#8203;45825](https://github.com/spring-projects/spring-boot/issues/45825) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;chanbinme](https://github.com/chanbinme), [@&#8203;csbiy](https://github.com/csbiy), [@&#8203;davidlj95](https://github.com/davidlj95), [@&#8203;izeye](https://github.com/izeye), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;nicolasgarea](https://github.com/nicolasgarea), [@&#8203;nosan](https://github.com/nosan), [@&#8203;quaff](https://github.com/quaff), [@&#8203;shekharAggarwal](https://github.com/shekharAggarwal), and [@&#8203;wonyongg](https://github.com/wonyongg) ### [`v3.4.6`](https://github.com/spring-projects/spring-boot/releases/tag/v3.4.6) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.4.5...v3.4.6) #### :lady\_beetle: Bug Fixes - Micrometer "enable" annotations property does not cover observed aspect [#&#8203;45616](https://github.com/spring-projects/spring-boot/issues/45616) - SpringApplication.setEnvironmentPrefix is ignored when reading SPRING\_PROFILES\_ACTIVE [#&#8203;45548](https://github.com/spring-projects/spring-boot/issues/45548) - IllegalStateException when extracting using layers a module with no code of its own [#&#8203;45448](https://github.com/spring-projects/spring-boot/issues/45448) - Suggested values for spring.jpa.hibernate.ddl-auto are not aligned with Hibernate [#&#8203;45350](https://github.com/spring-projects/spring-boot/issues/45350) - Custom default units declared on a field are ignored when binding properties in a native image [#&#8203;45346](https://github.com/spring-projects/spring-boot/issues/45346) - JerseyWebApplicationInitializer always gets loaded, setting a ServletContext initParameter [#&#8203;45296](https://github.com/spring-projects/spring-boot/issues/45296) #### :notebook\_with\_decorative\_cover: Documentation - Document the java info contribution [#&#8203;45633](https://github.com/spring-projects/spring-boot/issues/45633) - Document the process info contribution [#&#8203;45631](https://github.com/spring-projects/spring-boot/issues/45631) - Document the os info contribution [#&#8203;45629](https://github.com/spring-projects/spring-boot/issues/45629) - Document typical spring.application.group and name use [#&#8203;45627](https://github.com/spring-projects/spring-boot/issues/45627) - Document that bean methods should be static when annotated with `@ConfigurationPropertiesBinding` [#&#8203;45625](https://github.com/spring-projects/spring-boot/issues/45625) - Document the way that primary Kotlin constructors are used when binding [#&#8203;45552](https://github.com/spring-projects/spring-boot/issues/45552) - Improve "profile" reference documentation with additional admonitions [#&#8203;45550](https://github.com/spring-projects/spring-boot/issues/45550) - Improve setEnvironmentPrefix(...) reference documentation [#&#8203;45375](https://github.com/spring-projects/spring-boot/issues/45375) - Document all the available Testcontainers integrations [#&#8203;45366](https://github.com/spring-projects/spring-boot/issues/45366) - Document when a spring.config.import value is relative and when it is fixed [#&#8203;45362](https://github.com/spring-projects/spring-boot/issues/45362) - Update link to "Parameter Name Retention" section of Spring Framework's release notes [#&#8203;45298](https://github.com/spring-projects/spring-boot/issues/45298) #### :hammer: Dependency Upgrades - Upgrade to Hibernate 6.6.15.Final [#&#8203;45537](https://github.com/spring-projects/spring-boot/issues/45537) - Upgrade to HttpClient5 5.4.4 [#&#8203;45455](https://github.com/spring-projects/spring-boot/issues/45455) - Upgrade to Jackson Bom 2.18.4 [#&#8203;45456](https://github.com/spring-projects/spring-boot/issues/45456) - Upgrade to Jetty 12.0.21 [#&#8203;45516](https://github.com/spring-projects/spring-boot/issues/45516) - Upgrade to jOOQ 3.19.23 [#&#8203;45458](https://github.com/spring-projects/spring-boot/issues/45458) - Upgrade to Micrometer 1.14.7 [#&#8203;45412](https://github.com/spring-projects/spring-boot/issues/45412) - Upgrade to Micrometer Tracing 1.4.6 [#&#8203;45413](https://github.com/spring-projects/spring-boot/issues/45413) - Upgrade to Neo4j Java Driver 5.28.5 [#&#8203;45431](https://github.com/spring-projects/spring-boot/issues/45431) - Upgrade to Netty 4.1.121.Final [#&#8203;45459](https://github.com/spring-projects/spring-boot/issues/45459) - Upgrade to R2DBC Proxy 1.1.6.RELEASE [#&#8203;45460](https://github.com/spring-projects/spring-boot/issues/45460) - Upgrade to Reactor Bom 2024.0.6 [#&#8203;45414](https://github.com/spring-projects/spring-boot/issues/45414) - Upgrade to REST Assured 5.5.2 [#&#8203;45570](https://github.com/spring-projects/spring-boot/issues/45570) - Upgrade to Spring Data Bom 2024.1.6 [#&#8203;45415](https://github.com/spring-projects/spring-boot/issues/45415) - Upgrade to Spring Framework 6.2.7 [#&#8203;45417](https://github.com/spring-projects/spring-boot/issues/45417) - Upgrade to Spring Integration 6.4.5 [#&#8203;45419](https://github.com/spring-projects/spring-boot/issues/45419) - Upgrade to Spring Kafka 3.3.6 [#&#8203;45421](https://github.com/spring-projects/spring-boot/issues/45421) - Upgrade to Spring Pulsar 1.2.6 [#&#8203;45423](https://github.com/spring-projects/spring-boot/issues/45423) - Upgrade to Spring Retry 2.0.12 [#&#8203;45425](https://github.com/spring-projects/spring-boot/issues/45425) - Upgrade to Spring Security 6.4.6 [#&#8203;45558](https://github.com/spring-projects/spring-boot/issues/45558) - Upgrade to Spring WS 4.0.14 [#&#8203;45581](https://github.com/spring-projects/spring-boot/issues/45581) - Upgrade to Tomcat 10.1.41 [#&#8203;45517](https://github.com/spring-projects/spring-boot/issues/45517) - Upgrade to XmlUnit2 2.10.1 [#&#8203;45605](https://github.com/spring-projects/spring-boot/issues/45605) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;ahrytsiuk](https://github.com/ahrytsiuk), [@&#8203;izeye](https://github.com/izeye), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;nosan](https://github.com/nosan), [@&#8203;quaff](https://github.com/quaff), [@&#8203;thecooldrop](https://github.com/thecooldrop), and [@&#8203;yybmion](https://github.com/yybmion) ### [`v3.4.5`](https://github.com/spring-projects/spring-boot/releases/tag/v3.4.5) [Compare Source](https://github.com/spring-projects/spring-boot/compare/v3.4.4...v3.4.5) #### :lady\_beetle: Bug Fixes - Spring Boot with native image container image build fails on podman due to directory permissions [#&#8203;45256](https://github.com/spring-projects/spring-boot/issues/45256) - Neo4jReactiveDataAutoConfiguration assumes that certain beans are available [#&#8203;45235](https://github.com/spring-projects/spring-boot/issues/45235) - Wrong jOOQ exception translator with empty db name [#&#8203;45219](https://github.com/spring-projects/spring-boot/issues/45219) - MessageSourceMessageInterpolator does not replace a parameter when the message matches its code [#&#8203;45213](https://github.com/spring-projects/spring-boot/issues/45213) - IntegrationMbeanExporter is not eligible for getting processed by all BeanPostProcessors warnings are shown when using JMX [#&#8203;45194](https://github.com/spring-projects/spring-boot/issues/45194) - OAuth2AuthorizationServerJwtAutoConfiguration uses `@ConditionalOnClass` incorrectly [#&#8203;45178](https://github.com/spring-projects/spring-boot/issues/45178) - MongoDB's dependency management is missing Kotlin coroutine driver modules [#&#8203;45159](https://github.com/spring-projects/spring-boot/issues/45159) - ImagePlatform can cause "OS must not be empty" IllegalArgumentException [#&#8203;45153](https://github.com/spring-projects/spring-boot/issues/45153) - TypeUtils does not handle generics with identical names in different positions [#&#8203;45039](https://github.com/spring-projects/spring-boot/issues/45039) - HttpClient5 5.4.3 breaks local Docker transport [#&#8203;45028](https://github.com/spring-projects/spring-boot/issues/45028) - spring.datasource.hikari.data-source-class-name cannot be used as a driver class name is always required and Hikari does not accept both [#&#8203;45002](https://github.com/spring-projects/spring-boot/issues/45002) - Post-processing to apply custom JdbcConnectionDetails triggers an NPE in Hikari if the JDBC URL is for an unknown driver [#&#8203;44998](https://github.com/spring-projects/spring-boot/issues/44998) - DataSourceBuilder triggers an NPE in Hikari when trying to build a DataSource with a JDBC URL for an unknown driver [#&#8203;44995](https://github.com/spring-projects/spring-boot/issues/44995) - SSL config does not watch for symlink file changes [#&#8203;44887](https://github.com/spring-projects/spring-boot/issues/44887) - EmbeddedLdapAutoConfiguration should not rely on PreDestroy [#&#8203;44874](https://github.com/spring-projects/spring-boot/issues/44874) - DataSourceTransactionManagerAutoConfiguration should run after DataSourceAutoConfiguration [#&#8203;44819](https://github.com/spring-projects/spring-boot/issues/44819) - JsonValueWriter can throw StackOverflowError on deeply nested items [#&#8203;44627](https://github.com/spring-projects/spring-boot/pull/44627) - In a reactive web app, SslBundle can no longer open store file locations without using a 'file:' prefix [#&#8203;44535](https://github.com/spring-projects/spring-boot/pull/44535) - Logging a Path object using structured logging throws StackOverflowError [#&#8203;44507](https://github.com/spring-projects/spring-boot/pull/44507) #### :notebook\_with\_decorative\_cover: Documentation - Make `@Component` a javadoc link [#&#8203;45258](https://github.com/spring-projects/spring-boot/issues/45258) - Fix documentation links to buildpacks.io [#&#8203;45241](https://github.com/spring-projects/spring-boot/issues/45241) - Clarify the use of multiple profile expressions with "spring.config.activate.on-profile" [#&#8203;45224](https://github.com/spring-projects/spring-boot/issues/45224) - Show the use of token properties in authorization server clients configuration example [#&#8203;45176](https://github.com/spring-projects/spring-boot/issues/45176) - Add details of the purpose of the metrics endpoint [#&#8203;45047](https://github.com/spring-projects/spring-boot/issues/45047) - Escape the asterisk in spring-application.adoc [#&#8203;45033](https://github.com/spring-projects/spring-boot/issues/45033) - Add reference to Styra (OPA) Spring Boot SDK [#&#8203;44976](https://github.com/spring-projects/spring-boot/issues/44976) - Update CDS documentation to cover AOTCache [#&#8203;44970](https://github.com/spring-projects/spring-boot/issues/44970) - WebFlux security documentation incorrectly links to servlet classes [#&#8203;44966](https://github.com/spring-projects/spring-boot/issues/44966) - Replace mentions of deprecated MockBean annotation [#&#8203;44947](https://github.com/spring-projects/spring-boot/pull/44947) - TaskExecution documentation should describe what happens when multiple Executor beans are present [#&#8203;44908](https://github.com/spring-projects/spring-boot/issues/44908) - Documentation lists coordinates for some dependencies that are not actually managed [#&#8203;44879](https://github.com/spring-projects/spring-boot/issues/44879) - Polish javadoc of SpringProfileAction [#&#8203;44826](https://github.com/spring-projects/spring-boot/issues/44826) #### :hammer: Dependency Upgrades - Upgrade to AspectJ 1.9.24 [#&#8203;45184](https://github.com/spring-projects/spring-boot/issues/45184) - Upgrade to Couchbase Client 3.7.9 [#&#8203;45072](https://github.com/spring-projects/spring-boot/issues/45072) - Upgrade to Hibernate 6.6.13.Final [#&#8203;45073](https://github.com/spring-projects/spring-boot/issues/45073) - Upgrade to HttpClient5 5.4.3 [#&#8203;45074](https://github.com/spring-projects/spring-boot/issues/45074) - Upgrade to HttpCore5 5.3.4 [#&#8203;45075](https://github.com/spring-projects/spring-boot/issues/45075) - Upgrade to Jaybird 5.0.7.java11 [#&#8203;45076](https://github.com/spring-projects/spring-boot/issues/45076) - Upgrade to Jetty 12.0.19 [#&#8203;45077](https://github.com/spring-projects/spring-boot/issues/45077) - Upgrade to jOOQ 3.19.22 [#&#8203;45078](https://github.com/spring-projects/spring-boot/issues/45078) - Upgrade to Lombok 1.18.38 [#&#8203;45079](https://github.com/spring-projects/spring-boot/issues/45079) - Upgrade to MariaDB 3.4.2 [#&#8203;45080](https://github.com/spring-projects/spring-boot/issues/45080) - Upgrade to Maven Failsafe Plugin 3.5.3 [#&#8203;45081](https://github.com/spring-projects/spring-boot/issues/45081) - Upgrade to Maven Surefire Plugin 3.5.3 [#&#8203;45082](https://github.com/spring-projects/spring-boot/issues/45082) - Upgrade to Micrometer 1.14.6 [#&#8203;45085](https://github.com/spring-projects/spring-boot/issues/45085) - Upgrade to Micrometer Tracing 1.4.5 [#&#8203;45086](https://github.com/spring-projects/spring-boot/issues/45086) - Upgrade to Neo4j Java Driver 5.28.4 [#&#8203;45133](https://github.com/spring-projects/spring-boot/issues/45133) - Upgrade to Pulsar 3.3.6 [#&#8203;45083](https://github.com/spring-projects/spring-boot/issues/45083) - Upgrade to Reactor Bom 2024.0.5 [#&#8203;45087](https://github.com/spring-projects/spring-boot/issues/45087) - Upgrade to Spring AMQP 3.2.5 [#&#8203;45088](https://github.com/spring-projects/spring-boot/issues/45088) - Upgrade to Spring Authorization Server 1.4.3 [#&#8203;45089](https://github.com/spring-projects/spring-boot/issues/45089) - Upgrade to Spring Data Bom 2024.1.5 [#&#8203;45090](https://github.com/spring-projects/spring-boot/issues/45090) - Upgrade to Spring Framework 6.2.6 [#&#8203;45091](https://github.com/spring-projects/spring-boot/issues/45091) - Upgrade to Spring GraphQL 1.3.5 [#&#8203;45092](https://github.com/spring-projects/spring-boot/issues/45092) - Upgrade to Spring Integration 6.4.4 [#&#8203;45093](https://github.com/spring-projects/spring-boot/issues/45093) - Upgrade to Spring Kafka 3.3.5 [#&#8203;45094](https://github.com/spring-projects/spring-boot/issues/45094) - Upgrade to Spring LDAP 3.2.12 [#&#8203;45095](https://github.com/spring-projects/spring-boot/issues/45095) - Upgrade to Spring Pulsar 1.2.5 [#&#8203;45096](https://github.com/spring-projects/spring-boot/issues/45096) - Upgrade to Spring Security 6.4.5 [#&#8203;45097](https://github.com/spring-projects/spring-boot/issues/45097) - Upgrade to Spring Session 3.4.3 [#&#8203;45098](https://github.com/spring-projects/spring-boot/issues/45098) - Upgrade to Spring WS 4.0.13 [#&#8203;45099](https://github.com/spring-projects/spring-boot/issues/45099) - Upgrade to Tomcat 10.1.40 [#&#8203;45084](https://github.com/spring-projects/spring-boot/issues/45084) #### :heart: Contributors Thank you to all the contributors who worked on this release: [@&#8203;EvaristeGalois11](https://github.com/EvaristeGalois11), [@&#8203;MelleD](https://github.com/MelleD), [@&#8203;aahlenst](https://github.com/aahlenst), [@&#8203;ali-jalaal](https://github.com/ali-jalaal), [@&#8203;erichaagdev](https://github.com/erichaagdev), [@&#8203;florgust](https://github.com/florgust), [@&#8203;geniusYoo](https://github.com/geniusYoo), [@&#8203;izeye](https://github.com/izeye), [@&#8203;jonatan-ivanov](https://github.com/jonatan-ivanov), [@&#8203;nenros](https://github.com/nenros), [@&#8203;nevenc](https://github.com/nevenc), [@&#8203;ngocnhan-tran1996](https://github.com/ngocnhan-tran1996), [@&#8203;nosan](https://github.com/nosan), [@&#8203;quaff](https://github.com/quaff), and [@&#8203;rainboyan](https://github.com/rainboyan) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNTQuMiIsInVwZGF0ZWRJblZlciI6IjQxLjQ2LjMiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbInJlbm92YXRlIl19-->
renovate-bot scheduled this pull request to auto merge when all checks succeed 2025-04-25 01:04:36 +00:00
renovate-bot changed title from fix(deps): update dependency org.springframework.boot:spring-boot-dependencies to v3.4.5 to fix(deps): update all dependencies 2025-05-14 01:03:17 +00:00
renovate-bot force-pushed renovate/all from a5d53e8fc7
All checks were successful
/ release (pull_request) Successful in 49s
to cadf21b50f
All checks were successful
/ release (pull_request) Successful in 48s
2025-05-14 01:03:18 +00:00
Compare
renovate-bot force-pushed renovate/all from cadf21b50f
All checks were successful
/ release (pull_request) Successful in 48s
to e26cd35ca1
All checks were successful
/ release (pull_request) Successful in 52s
2025-05-23 01:03:54 +00:00
Compare
renovate-bot force-pushed renovate/all from e26cd35ca1
All checks were successful
/ release (pull_request) Successful in 52s
to 6698148630
All checks were successful
/ release (pull_request) Successful in 50s
2025-06-02 14:34:43 +00:00
Compare
renovate-bot force-pushed renovate/all from 6698148630
All checks were successful
/ release (pull_request) Successful in 50s
to b72598edf1
All checks were successful
/ release (pull_request) Successful in 40s
2025-06-16 15:31:58 +00:00
Compare
renovate-bot force-pushed renovate/all from b72598edf1
All checks were successful
/ release (pull_request) Successful in 40s
to 4d286fe9ae
All checks were successful
/ release (pull_request) Successful in 37s
2025-06-20 03:55:56 +00:00
Compare
renovate-bot force-pushed renovate/all from 4d286fe9ae
All checks were successful
/ release (pull_request) Successful in 37s
to d682d08b2d
All checks were successful
/ release (pull_request) Successful in 37s
2025-06-21 03:55:22 +00:00
Compare
renovate-bot force-pushed renovate/all from d682d08b2d
All checks were successful
/ release (pull_request) Successful in 37s
to 99f2ecd01f
All checks were successful
/ release (pull_request) Successful in 38s
2025-06-24 01:06:47 +00:00
Compare
renovate-bot force-pushed renovate/all from 99f2ecd01f
All checks were successful
/ release (pull_request) Successful in 38s
to af6ca759c3
All checks were successful
/ release (pull_request) Successful in 34s
2025-07-25 01:06:43 +00:00
Compare
renovate-bot force-pushed renovate/all from af6ca759c3
All checks were successful
/ release (pull_request) Successful in 34s
to 3f762e72e5
Some checks failed
/ release (pull_request) Failing after 15s
2025-08-12 01:07:07 +00:00
Compare
renovate-bot force-pushed renovate/all from 3f762e72e5
Some checks failed
/ release (pull_request) Failing after 15s
to d147b2efd1
Some checks failed
/ release (pull_request) Failing after 15s
2025-08-15 01:07:22 +00:00
Compare
christian.keller deleted branch renovate/all 2025-08-21 07:50:12 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
DenktMit-OSS/lt-parent!4
No description provided.