Skip to content

0.11.0

Choose a tag to compare

@joffrey-bion joffrey-bion released this 04 Jun 20:52
· 144 commits to main since this release

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 -jvm suffix when using product type kmp/lib even for JVM-only libs
  • AMPER-5293 — Rename the lib product type to kmp/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 run if 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-4754show dependencies --filter doesn'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 @Configurable class
  • 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: exported doesn'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 "@Configurable interface 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-5308plugins completion 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