0.11.0
Full Changelog: v0.10.0...v0.11.0
We will soon publish a blog post with 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
- AMPER-5267 — Shorthands can't be expanded when in non-key-value position
- AMPER-5279 — java.lang.AssertionError: setSelectedIndex: 0 out of bounds when creating run configuration
- AMPER-5283 — Renaming of a list property leads to garbled value
- AMPER-5294 — Updates in plugin.yaml in non-applied plugins lead to sync
- AMPER-5323 — The default version of Kotlin is used for Kotlin/Native distribution