Releases: JetBrains/kotlin-toolchain
Release list
0.12.0
Full Changelog: v0.11.1...v0.12.0
See our release blog post (coming soon) for the highlights, and to learn about the tooling improvements.
Breaking changes
- KTC-5221 — Update default JDK version to 25
- KTC-5237 — Align Ktor dependency catalog with the published ktor-version-catalog
- KTC-5368 — Update default Compose version to 1.11.1
- KTC-5369 — Update default kotlinx.serialization version to 1.11.0
- KTC-5370 — Update default KSP version to 2.3.9
- KTC-5419 — Remove deprecated CLI options --root, --build-output, --shared-caches-root
- KTC-5462 — Remove
iosX64from supported platforms ofios/appproduct type - KTC-5539 — Bump default Android minimum level to 24
- KTC-5625 — Deprecate
android.maxSdk - KTC-5632 — Update default Kotlin version to 2.4.10
- KTC-5635 — Update default Ktor version to 3.5.2
- KTC-5636 — Update default DataFrame version to 1.0.0-rc01
- KTC-5637 — Update default JUnit Platform version to 6.1.3
- KTC-5638 — Update default kotlinx.rpc version to 0.10.3
- KTC-5639 — Update default KSP version to 2.3.11
- KTC-5640 — Update default Spring Boot version to 4.1.0
- KTC-5687 — Enforce a specific Xcode scheme for the xcode project
- KTC-5702 — Remove
macosX64from the default platforms of themacos/appproduct type - KTC-5708 — Raise minimum JDK version to 17
- KTC-5712 — Raise minimum Kotlin version to 2.2.20
- KTC-5728 — Align the
--modulesoption inpublishwith other--moduleoptions - KTC-5729 — Require transitivity flag for
kotlin publish -m module
New features
- KTC-719 — Support KMP libraries publication
- KTC-721 — KMP metadata compilation
- KTC-2139 — Support project-root-relative (
//) paths - KTC-4474 — Allow depending on JVM libraries in JVM+Android "common" fragments (modules)
- KTC-4511 — Kotlin incremental compilation for JVM targets
- KTC-4881 — Support dataframe compiler plugin
- KTC-5042 — Support dependency type = pom and scope != import
- KTC-5270 — Maven packaging type support: Kotlin Toolchain ignores artifacts of libraries published with packaging type POM
- KTC-5272 — Publish Gradle module metadata in addition to pom.xml
- KTC-5437 — Commonize cinterop klibs
- KTC-5452 — Support Android SDK 37
- KTC-5475 — Compose Hot Reload support for standalone CLI with fs watcher
- KTC-5483 — Allow controlling which checksums are published to Maven Central
- KTC-5486 — MCP server for Compose Hot Reload
- KTC-5569 — Add build task for wasm-js
- KTC-5570 — Add run task for wasm-js/app
- KTC-5572 — Implement support of transitive NPM dependencies
- KTC-5585 — Support commonized cinterops as as an input of KMP metadata compilation
- KTC-5608 — Tab completion for
kotlin docommand names - KTC-5610 — Tab completion for module names in the
-m/--moduleoption of various commands - KTC-5696 — Support configuring the Gradle distribution URL (mirror)
- KTC-5699 — Allow customizing Android build tools version
Cosmetics
- KTC-4233 — Use a widget to show test progress
- KTC-5414 — DataFrame compiler plugin pollutes console logs
- KTC-5604 — Rename XCodeProject target build phase and its shell script
Usability improvements
- KTC-839 — Missing credentials file should not prevent the build from working
- KTC-4491 — Compiler warnings are not replayed on cache hit
- KTC-4691 — Make
./amper runask interactively for the module to run when there are multiple - KTC-4846 — Report reference syntax/resolution diagnostics with precise ranges
- KTC-5006 — Add diagnostic for JDK version compatibility with Kotlin version
- KTC-5181 — Invalid version catalog key reference produces repeated duplicate error messages
- KTC-5200 — Maven converter: add a flag to enable all compatibility plugins during conversion
- KTC-5453 — Stop publishing unnecessary checksum files for .asc signatures to Maven Central
- KTC-5457 — No compose resources library added if no resources present
- KTC-5500 — Add PowerAssert runtime library implicitly when PowerAssert is enabled
- KTC-5503 — Add incremental caching for publishing to Maven local
- KTC-5504 — Cleaner logging for publishing to Maven local
- KTC-5515 — Nicely formatted diagnostics reported by tasks
- KTC-5552 — Deprecate the
watchosArm32platform - KTC-5596 — The
runcommand redirects the app's output preventing interactive TUI - KTC-5623 — Allow defining minor versions of compile SDK
- KTC-5626 — Make
AndroidVersionan integer instead of an enum - KTC-5683 — Add
wasm/appmodule to the Compose Multiplatform template - KTC-5700 — Add diagnostic for minimum supported JDK
- KTC-5714 — Java incremental compilation shows Unsafe warning on JDK 24+
- KTC-5720 — Kotlin compiler warning in JDK 24+ about native access by JansiLoader
- KTC-5721 — Metadata compilation warning in JDK 24+ about Unsafe access by FastJarFileSystemKt
Fixed bugs
- KTC-4398 — Room KSP iOS Build Failure
- KTC-4751 — Gradle warning in Android-based example projects
- KTC-5234 — Unable to publish iOS app: KotlinModules.framework being installed outside the app bundle during xcodebuild archive
- KTC-5244 —
JAVA_HOMEwarning logsObjectarray reference instead of actual path value - KTC-5261 — Android AAR dependency is passed directly to kotlinc classpath, causing unresolved references
- KTC-5312 — amper init fails unclearly when an existing path has a different shape than the template expects
- KTC-5395 — internal declarations inaccessible in native test source sets
- KTC-5417 — Internal error when passing invalid compiler args with Kotlin 2.4.0
- KTC-5423 — Task progress visually messes with stdin when running with
kotlin run - KTC-5443 — Progress bar and/or terminal progress sporadically stays upon task failure
- KTC-5445 — Wasm compiler warning with Kotlin 2.4.0+
- KTC-5449 — Nested BOM-to-BOM dependency declared in Gradle metadata of exte...
0.11.1
Full Changelog: v0.11.0...v0.11.1
Usability improvements
- AMPER-5391 — Suggest setting KOTLIN_TOOLCHAIN_SIGNING_KEY_PASSPHRASE when PGP password is needed for signing
Fixed bugs
- AMPER-5397 — Internal error when using Java 26 even with Kotlin 2.4.0
- AMPER-5399 — Maven Central publication requires explicit artifactId
- AMPER-5400 — Maven Central publishingMode=auto doesn't publish automatically
- AMPER-5404 — Android native targets cannot be compiled (thanks to Mohammed Khaled (@MohammedKHC)!)
- AMPER-5408 — Fix env var names for Maven Central credentials
0.11.0
Full Changelog: v0.10.0...v0.11.0
See our release blogpost for the highlights.
Breaking changes
- AMPER-5201 — Forbid conflicting settings from the templates
- AMPER-5287 — Publish with base and
-jvmsuffix when using product typekmp/libeven for JVM-only libs - AMPER-5293 — Rename the
libproduct type tokmp/lib - AMPER-5351 — Update default Kotlin version to 2.3.21
- AMPER-5352 — Update default Compose Hot Reload version to 1.1.1
- AMPER-5353 — Update default KSP version to 2.3.7
- AMPER-5354 — Update default Ktor version to 3.4.3
- AMPER-5355 — Update default SpringBoot version to 4.0.6
- AMPER-5361 — Update default Lombok version to 1.18.46
- AMPER-5362 — Update default JUnit Platform version to 6.0.3
New features
- AMPER-471 — Support publishing to Maven Central
- AMPER-774 — Support dependency classifier
- AMPER-3984 — Allow changing URLs for the default repositories (e.g. to use mirrors)
- AMPER-4852 — Introduce a way to hook custom tasks to commands
- AMPER-5085 — Provide API to get project root dir from a plugin
- AMPER-5098 — Support nested templates (templates applied in templates)
- AMPER-5120 — Provide access to classes (compilation result)
- AMPER-5262 — Support customizing the published pom.xml
- AMPER-5268 — Support signing maven artifacts
- AMPER-5269 — Allow resolving dev versions of the Kotlin compiler
- AMPER-5289 — Allow controlling whether to publish sourcesJar
Cosmetics
- AMPER-5356 — Diagnostic that suggests sorting a module list in project.yaml alphabetically
Usability improvements
- AMPER-4901 — Plugins, not listed in
plugins:in project.yaml are not diagnosed - AMPER-4987 — Provide a snippet of source in the CLI output on compile errors
- AMPER-5063 — Show a more specific error if the plugin settings class is not annotated with configurable
- AMPER-5092 — Confusing UX for task actions without parameters
- AMPER-5193 — Choose a platform by default when running an application
- AMPER-5222 — Warning about compose material3 catalog entry for unknown compose versions
- AMPER-5251 — Subpar error message when trying to run JS or Wasm tests
- AMPER-5278 — Report all missing required properties as a single diagnostic
- AMPER-5310 — Do not fail
runif only a single app module has platforms that can run on the current host
Performance improvements
- AMPER-5235 — Reduce serialized dependency graph size
Fixed bugs
- AMPER-4754 —
show dependencies --filterdoesn't show all occurrences of the filtered library - AMPER-4905 — Align dependency resolution in CLI and IDE
- AMPER-5102 — ${pluginSettings.foo} is not red when no settings class is defined
- AMPER-5259 — Android test dependency is not recognized ("Unresolved reference")
- AMPER-5260 — 'repositories' does not affect third-party compiler plugin dependencies
- AMPER-5300 — Warning from KSP about using Unsafe API
- AMPER-5321 — kotlin-stdlib resolution failures are not shown
- AMPER-5374 — Set User Agent in dependency resolution calls
IDE Improvements
These changes are available in the Kotlin Toolchain plugin for IntelliJ IDEA 2026.1.2.
New features
- AMPER-5065 — Provide a quick fix to add a parameter to the task function from its usage in plugin.yaml
- AMPER-5197 — Add a "Plugin settings class" code vision hint
- AMPER-5210 — Ability to rename task name in plugin.yaml
- AMPER-5228 — Quick-fix for PublishingSettingsMissingInDependencies
- AMPER-5229 — Quick-fix for JvmReleaseTooLowForDependency
- AMPER-5256 — Add a quick fix to bump JDK version if it is too low for the used JUnit platform
- AMPER-5266 — Completion for task names
- AMPER-5297 — Add support for setting platforms of test command in UI
- AMPER-5311 — Provide a quick fix to add a property to a user-defined
@Configurableclass - AMPER-5317 — Add support for cinterop in IDE
Cosmetics
- AMPER-5099 — Strange looking highlighting of the numeric value in plugin.yaml
- AMPER-5277 — Highlight task name usages differently
- AMPER-5318 — Don't show irrelevant sync stages in the Sync tool window
Usability improvements
- AMPER-302 — Enter after a
dependency: exporteddoesn't insert a dash for a new item - AMPER-4242 — Improve the downloading sources experience
- AMPER-4890 — The commonizer call is shown as part of the Dependency Resolution stages
- AMPER-5134 — Main class set in template is always marked as unresolved
- AMPER-5236 — Provide documentation and navigation for elements in "Add dependency"
- AMPER-5238 — Add the module name to the tab name for module.yaml
- AMPER-5249 — Plugin data is always unavailable in dumb mode even if it was read previously
- AMPER-5265 — Quick fix for adding empty object to tagged value
- AMPER-5273 — Quick-fix for
@Configurable declaration must be an interface - AMPER-5274 — Quick-fix to create a @TaskAction function from unresolved ref in plugin.yaml
- AMPER-5282 — Quick-fix for "
@Configurableinterface must be public" - AMPER-5288 — Diagnose unapplied plugins in IDE
- AMPER-5305 — Completion for plugin can list local plugin modules which are not already added to the project
- AMPER-5308 —
pluginscompletion in the project file should suggest only plugin modules
Fixed bugs
- AMPER-4236 — Commonizer paths are not correct in Amper IDE plugin - should be truncated with hash
- AMPER-4266 — Common tests cannot be run from the gutter icon
- AMPER-4723 — Android SDK is 'partially' unresolved in the IDE if a dependency is provided by the shared module
- AMPER-4899 — IllegalStateException from plugin.yaml if the plugin is not declared in project.yaml
- AMPER-5019 — Amper build from IDE generates two nodes
- AMPER-5040 — Spring library is unresolved if exported in the module file
- AMPER-5250 — Native tests are not reported to the Test tool window
- AMPER-5254 — Language features are not propagated to IDE Kotlin facet
- [AMP...
0.10.0
Full Changelog: v0.9.2...v0.10.0
See our release blog post for the highlights.
Breaking changes
- AMPER-4892 — Remove compose-dev from the default repositories list
- AMPER-4936 — Move
--rootand--build-outputoptions to project-aware commands only - AMPER-5012 — Align dirs/caches CLI options naming
- AMPER-5073 — Update default Compose Hot Reload version to 1.0.0
- AMPER-5074 — Update default KSP version to 2.3.6
- AMPER-5078 — Update default kotlinx.serialization version to 1.10.0
- AMPER-5215 — Update default Kotlin version to 2.3.20
- AMPER-5216 — Update default Compose version to 1.10.3
- AMPER-5217 — Update default Ktor version to 3.4.1
- AMPER-5218 — Update default Spring Boot version to 4.0.5
New features
- AMPER-742 — Add a concept of module description in the DSL
- AMPER-4470 — kotlinx.rpc compiler plugin support
- AMPER-4716 — Customizable JDK provisioning and JAVA_HOME handling
- AMPER-4938 — Apply active maven profiles declared in POM files of transitive dependencies
- AMPER-4964 — Support for kotlin plugin jsPlainObject
- AMPER-5084 — Provide API to get the module settings from a plugin
- AMPER-5095 — Support third party compiler plugins
- AMPER-5188 — Support multiple arguments in the
amper taskcommand
Usability improvements
- AMPER-808 — Amper unnecessarily downloads Сorretto JDK even though "JAVA_HOME" is already set to a local JDK
- AMPER-2959 — Improve first-run experience regarding the Amper JRE download
- AMPER-4827 — Add error diagnostic when using JUnit platform 6+ and JDK < 17
- AMPER-4828 — Add error diagnostic when using
settings.java.compileIncrementally(JPS) with JDK < 16 - AMPER-4910 — Do not include compilation result into
compileClasspathfor modules - AMPER-4937 — Support/fix "View assertEquals Difference" for file contents (org.opentest4j.FileInfo)
- AMPER-4959 — Warn the user if JAVA_HOME doesn't point to <jdk_root>/Contents/Home on macOS
- AMPER-5031 — [DR] Reduce telemetry footprint
- AMPER-5032 — [DR] In non-transitive resolution mode, all graph nodes should be resolved and their artifacts should be downloaded
- AMPER-5045 — Compose resources collectors API is still experimental in Amper
- AMPER-5097 — Maven-like layout cannot be set in a template
- AMPER-5198 — Plugin ID and enabled property origin should lead to the plugin definition
Performance improvements
- AMPER-4932 — Get rid of reflection when reading builtin schema
Fixed bugs
- AMPER-4876 — Unable to run JVM GUI App (Compose multiplatform) with invalid ANDROID_SDK_ROOT
- AMPER-4929 — NoSuchAlgorithmException: sha512 MessageDigest not available on corretto-11
- AMPER-4945 — KSP processor can't access local dependencies for web targets
- AMPER-4995 — Fix documentation links in the schema documentation
- AMPER-5043 — [DR] Exception during parsing pom.xml containing tag starting from '<Xlint:'
- AMPER-5051 — Exception while resolving plexus-utils:1.0.2
- AMPER-5052 — Exception while resolving wagon-http-lightweight
- AMPER-5059 — Resolution failure for dependency org.roboquant:roboquant-jupyter:3.0.0
- AMPER-5094 — Unclear error in case of incorrect reference to non-existent property of taskOutputDir
- AMPER-5106 — plugin.yaml errors are not shown if the plugin is not enabled in any module
- AMPER-5137 — Inconsistent classloader for plugins
- AMPER-5196 — Dependency resolution crashes on asm-bom-9.4
IDE Improvements
These changes are available in the Amper IDE plugin for IntelliJ IDEA 2025.3.4 (or above) and IntelliJ 2026.1 (or above), unless specifically mentioned.
New features
- AMPER-2116 — Support the 'Create Actual for Expect' Quick Fix in Amper (only in IntelliJ IDEA 2026.1+)
- AMPER-4063 — Implement UI for editing Amper Run configurations
- AMPER-4531 — IDE support for run with Profiler
- AMPER-4848 — Suggest to install the Amper plugin in Amper-like projects (only in IntelliJ IDEA 2026.1+)
- AMPER-4849 — Suggest to install the Android/KMP plugins when detecting modules that need them (only in IntelliJ IDEA 2026.1+)
- AMPER-4900 — Highlight task names differently from regular mapping keys from the schema
- AMPER-4961 — Provide a quickfix to enable a configured plugin
- AMPER-5014 — Support third-party Kotlin compiler plugins on IDE side
- AMPER-5016 — IDE prints testMetadata events as raw messages instead of processing them
- AMPER-5079 — Add the way to debug Amper tasks from IntelliJ
- AMPER-5087 — Run Anything provider for Amper
- AMPER-5138 — Support Ktor "Add plugins" inlay
- AMPER-5155 — Have "run all code generation" action
- AMPER-5205 — Show module description in the documentation of the module
Usability improvements
- AMPER-57 — Double Enter at the end of the list should put caret back to the outer level (only in IntelliJ IDEA 2026.1+)
- AMPER-5038 — Tests imported from history or from XML don't have navigation, rerun failed, run single test, etc.
- AMPER-5114 — Add "Amper JVM Library" to file templates
- AMPER-5130 — Support native Ktor configurations instead of delegation
- AMPER-5154 — Tests with attachments nodes do not navigate to source on double click
- AMPER-5194 — Indicate that a plugin has no settings in completion
- AMPER-5204 — Improve previews for "This dependency is referenced directly in some modules"
- AMPER-5214 — Quick action to show direct references of the catalog dependency in the Find tool window
Fixed bugs
- AMPER-2955 — IntelliJ IDEA: Build should call amper build
- AMPER-4295 — Amper project with Android can't build from the IDE
- AMPER-4485 — Support running test file with multiple test classes
- AMPER-4802 — Run gutter icon is not enabled for non-jvm app modules.
- AMPER-4926 — "Add dependency on module" doesn't group overloads
- AMPER-4958 — Exception from Amper-Android support in non-android modules
- AMPER-4982 — Report ambiguous main class when same class exists in multiple modules
- AMPER-5009 — "System environment" is not propagated to Amper in MacOS production IDE
- AMPER-5068 — ...
0.9.2
Full Changelog: v0.9.1...v0.9.2
Fixed bugs
- AMPER-2798 — More than a single variant provided: org.junit.jupiter:junit-jupiter-params:5.7.2
- AMPER-4924 — DR fails resolving javax/ws/rs/javax.ws.rs-api:2.1.1 (property 'packaging.type' is not substituted in URL)
0.9.1
Full Changelog: v0.9.0...v0.9.1
Fixed bugs
- AMPER-4885 — Kotlin JVM stdlib extension functions not resolved in IDE for multiplatform modules
- AMPER-4902 — Internal Error TaskExecutionFailed if the task output does not exist
- AMPER-4907 — Amper fails resolving netty-codec-native-quic because ${packaging.type} leaks into artifact/sha URL (URISyntaxException)
- AMPER-4911 — Deadlock in PrintStreamWithUnlockedAutoFlush
0.9.0
Full Changelog: v0.8.2...v0.9.0
See our release blog post for the highlights, and to learn about the tooling improvements.
Breaking changes
- AMPER-4709 — Raise minimum Kotlin compiler version to 2.1.10
- AMPER-4736 — Update default Compose Hot Reload version to 1.0.0-rc01
- AMPER-4767 — Update default JUnit platform version to 6.0.1
- AMPER-4779 — Update default settings.jvm.release to 21
- AMPER-4822 — Update default KSP version to 2.3.0
- AMPER-4823 — Update default Kotlin version to 2.2.21
New features
- AMPER-4778 — Make 'settings.jvm.release` an integer so it's unlimited
- AMPER-4834 — Incremental Java Compilation
- AMPER-4840 — Add a way to disable the welcome banner for the first run
Cosmetics
- AMPER-4719 — Imperfect error message for an amper update failure
Performance improvements
- AMPER-345 — Serialize dependency graph
- AMPER-4177 — Dependency resolution is slow when no changes
- AMPER-4714 — Bump Amper's runtime to JRE 25
Fixed bugs
- AMPER-4715 — Delegated Android Gradle builds are run with Amper's JDK instead of the user JDK
- AMPER-4724 — Fix compose-multiplatform template
- AMPER-4734 — False positive warnings when the serialization version is set in a template
- AMPER-4786 — More than two properties are not substituted
- AMPER-4793 — DR fails resolving com.google.guava:guava:33.4.8-android in JVM context
- AMPER-4795 — DR start receiving 400 responses from remote repository after some time on TC (https://packages.jetbrains.team/maven/p/kds )
- AMPER-4796 — DR fails to resolve files declared in Gradle metadata variant where the 'url' has format as '../xxx/yyy.jar'
- AMPER-4800 — Documentation of test --format option is outdated
- AMPER-4809 — Spaces in the coordinates break DR
- AMPER-4819 — DR can't resolve quasi-SNAPSHOT dependency from incremental cache 'com.jetbrains.intellij.platform:jps-build-dependency-graph:253.25908.13-EAP-SNAPSHOT'
- AMPER-4844 — DR should not reuse cached graph that have potentially recoverable diagnostics
- AMPER-4865 — Existing dependency is not added to new module in IDE Sync
- AMPER-4867 — Dependency resolution warnings are not shown in the console
- AMPER-4873 — Crash on Android commandline tools download
- AMPER-4884 — amper.bat fails by default on GitHub's Windows runners
0.8.2
0.8.1
Full Changelog: v0.8.0...v0.8.1
Breaking changes
Compose Hot Reload no longer requires to be enabled in module.yaml. You can simply use the new CLI option --compose-hot-reload-mode when running any Compose module with at least the JVM target.
Usability improvements
- AMPER-4713 — Misleading UX inside IDE when run without compose hot reload
Fixed bugs
- AMPER-4726 — Gradle properties in pom.xml are not interpolated
- AMPER-4747 —
jaxb-runtimedoesn't transitively resolvejaxb-core
0.8.0
Full Changelog: v0.7.0...v0.8.0
See our release blog post for the highlights, and to learn about the tooling improvements.
Breaking changes
- AMPER-317 — Remove legacy
appproduct type - AMPER-4436 — Use current working dir by default in './amper run', and provide a CLI option to override it
- AMPER-4439 — Change cache directory from .../Amper to .../JetBrains/Amper
- AMPER-4441 — Remove Gradle-based Amper
- AMPER-4442 — Update default Compose version to 1.8.2
- AMPER-4520 — Simplify fragment hierarchy in android/app and jvm/app modules
- AMPER-4633 — Update default kotlinx.serialization version to 1.9.0
- AMPER-4634 — Update default Ktor version to 3.2.3
- AMPER-4635 — Update default Spring Boot version to 3.5.5
- AMPER-4637 — Update default Kotlin version to 2.2.10
- AMPER-4638 — Update default KSP version to 2.2.10-2.0.2
- AMPER-4690 — Update default Android compileSdk to API level 36
Tip
Our cache directory location changed! It's now nested under the JetBrains directory with other JetBrains tools. To save disk space, feel free to clean up the old Amper cache one directory above. To find where the shared cache is on your machine, run ./amper --help and check the default value for --shared-caches-root.
Warning
As previously announced, the Gradle plugin for Gradle-based Amper projects has now been removed, and there was no 0.8.0 publication of this plugin. Please give a try to the standalone Amper build tool and let us know what you think!
New features
- AMPER-424 — Make the Kotlin Compiler version configurable
- AMPER-503 — Possibility to resolve artifacts from a local repository (e.g. maven local)
- AMPER-652 — Add support for kotlin-power-assert
- AMPER-3938 — Firework support (Compose Hot Reload)
- AMPER-4026 — CLI command that shows the dependency graph
- AMPER-4307 — Make JUnit Console Launcher version customizable
- AMPER-4355 — Java annotation processing support
- AMPER-4429 — Spring Hot Swap support
- AMPER-4432 — Interactive module selection for ./amper show settings
- AMPER-4469 — Add support for Android SDK API level 36
- AMPER-4521 — Introduce jvm/lib product type
- AMPER-4534 — Add freeCompilerArgs for the java compiler
- AMPER-4597 — Make lombok version configurable
- AMPER-4599 — Support libs.versions.toml at the project root in addition to gradle/libs.versions.toml
- AMPER-4636 — Make Compose hot reload version configurable
- AMPER-4645 — Add 'web' fragment, shared between js and wasmJs
- AMPER-4649 — Add support of wasmWasi platform
Tip
If you have JVM-only lib modules, try out our new jvm/lib product type! It simplifies the overall experience.
Cosmetics
- AMPER-4433 — Markdown code spans background is too intense on light theme in CLI help
- AMPER-4547 — Screen flickers during multi-target builds
Usability improvements
- AMPER-669 — Provide explanation why CLI needs to download JDK
- AMPER-814 — './amper publish' publishes ALL modules by default
- AMPER-4408 — Disable 'Setting value is redundant' diagnostic for default values
- AMPER-4444 — Report curl errors to stderr
- AMPER-4527 — Report unresolved modules
- AMPER-4559 — Warn when the JVM release is lower than local dependencies
- AMPER-4587 — Support/Fix/Enable
View assertEquals Differencein test runs - AMPER-4588 — Amper should populate expected and actual attributes in the failed test event
- AMPER-4605 — Rearrange built-in spring version catalog
- AMPER-4643 — Remove obsolete Compose version alignment diagnostic
- AMPER-4661 — Do not drop the whole model if one module has broken product type
Performance improvements
- AMPER-3911 — Use coroutines debug agent instead of dynamic ByteBuddy install
Fixed bugs
- AMPER-4241 — Android tests in a KMP library missing Android platform declarations
- AMPER-4376 — Specifying release variant for iOS build makes it skip build task
- AMPER-4422 — Unspecified version of exported dependency from dependent module is not resolved
- AMPER-4427 — Fix the path of annotation processing generating sources
- AMPER-4447 — Can't resolve dependency on io.github.dokar3:sonner:0.3.8 for runtime classpath of Android application
- AMPER-4471 — clean command doesn't complete successfully on Red Hat Enterprise Linux 8.10
- AMPER-4472 — Fail to resolve dependency on 'org.codehaus.plexus:plexus-container-default:1.0-alpha-9-stable-1'
- AMPER-4492 — Misleading test output from CLI
- AMPER-4505 — Amper accepts aliases instead of real property names in module files
- AMPER-4515 — ISE when reading module.yaml with unresolved template
- AMPER-4539 — Enabling
settings.jvm.storeParameterNamesfails native compilation - AMPER-4546 — IllegalStateException when configuring JVM specific freeCompilerArgs
- AMPER-4560 — Unable to resolve dependency com.fasterxml.jackson.core:jackson-databind:2.19.2
- AMPER-4562 — Android tests fail in a multi-module project
- AMPER-4571 — settings.kotlin.linkerOpts is not taken into account
- AMPER-4572 — Spring dependency resolving: Missing 'Modulith'
- AMPER-4579 — KotlinX Deserialization of POM files is too strict
- AMPER-4581 — Changes in annotation processorOptions do not lead to recompilation
- AMPER-4583 — Removing sources generated by a Java annotation processor do not cause recompilation
- AMPER-4598 — Incorrect enum value for JavaVersion has non-human readable error message
- AMPER-4651 — Do not create fragments for empty aliases
- AMPER-4664 — Unable to build due to unresolved variables in URL