github JetBrains/amper v0.6.0
0.6.0

latest release: v0.7.0
5 months ago

Full Changelog: v0.5.0...v0.6.0

See our release blog post for the highlights, and to learn about the tooling improvements.

Breaking changes

  • AMPER-4188 — Update Kotlin to 2.1.20
  • AMPER-4161 — Update default Kotlin language version to 2.1
  • AMPER-3764 — Update default Compose version to 1.7.3
  • AMPER-4191 — Update default kotlinx.serialization version to 1.8.0
  • AMPER-4192 — Update default KSP version to 2.1.20-1.0.31
  • Gradle-based Amper
    • The Compose version can no longer be customized when using Gradle-based Amper, and only 1.6.10 is supported. Because our default is now 1.7.3, the settings.compose.version has to be explicitly set to 1.6.10.
    • Gradle <= 8.6 is no longer supported. If you’re using Gradle-based Amper, please update Gradle to 8.7+ (we recommend Gradle 8.11.1, which is the maximum version in Kotlin’s compatibility range)

New features

  • AMPER-632 — Support building and running for an iOS device from Amper CLI
  • AMPER-871 — Generate user-accessible Xcode project for ios/app modules
  • AMPER-3627 — Implement iOS Application Signing Support in Standalone Amper
  • AMPER-3818 — CLI command to generate tab-completion scripts
  • AMPER-3819 — Support the -v option as an alias for --version
  • AMPER-3902 — Graph-based diagnostics reporting in DR
  • AMPER-3937 — Support passing JVM arguments to ./amper run and ./amper test
  • AMPER-3941 — Support running specific tests via Amper CLI
  • AMPER-3944 — Amper firework: the first experimental prototype
  • AMPER-4014 — Provide IDE-friendly output in Amper CLI test
  • AMPER-4025 — Support test stdout/stderr/metadata reports and flow structure in teamcity format
  • AMPER-4079 — Support distinguishing test overloads via test filters
  • AMPER-4153 — Group introspection commands (tasks, settings, modules) under a general 'show' meta-command
  • AMPER-4182 — Interactive 'amper init' without template argument

Enhancements

  • AMPER-3774 — Add more info to SDK version completion
  • AMPER-3942 — If the platform is declared in the product type, generate *all* fragments from the default hierarchy template that contain this platform
  • AMPER-4157 — Add Kotlin language version 2.2 to allowed values
  • AMPER-4198 — Update JBR to 21.0.6-b895.97

Cosmetics

  • AMPER-3272 — Warn in standalone version Android build: This will fail with an error in Gradle 9.0
  • AMPER-3834 — Add colors to distinguish log levels in console output
  • AMPER-3835 — Show bigger units for long elapsed time in running tasks
  • AMPER-3923 — Kotlin compiler logs its arguments at INFO level

Usability improvements

  • AMPER-396 — CLI: Provide coroutine stacktraces
  • AMPER-579 — DR: State clearly that artifact was not found
  • AMPER-580 — DR: Fail resolve if platform support was not found
  • AMPER-3634 — Download the Amper distribution and JRE during `./amper update`
  • AMPER-3826 — Implement tracing of dependent values
  • AMPER-3904 — Always download kotlin-stdlib sources in Amper
  • AMPER-4082 — Test stdout/stderr is not reported if printed from other threads than the test thread
  • AMPER-4136 — Test stdout/stderr is reported in bulk at the end of the test when using teamcity format

Fixed bugs

  • AMPER-526 — Building of 'examples.pure/multiplatform' failed due to 'unresolved reference: Screen'
  • AMPER-713 — The command ./amper task :compose:runIosAppIosSimulatorArm64 opens an outdated simulator.
  • AMPER-778 — Dependency resolution should reasonably do retries
  • AMPER-1068 — Duplicate error messages from Dependency Resolution
  • AMPER-2333 — Regression: Gradle-based Amper doesn't treat Java files as source files anymore
  • AMPER-2956 — Bad code is green when using a class from a transitive runtime dependency
  • AMPER-3443 — "Hashes don't match" when a cache SNAPSHOT version changed in the repository
  • AMPER-3619@iOS settings are not propagated properly in case when only a few ios platforms specified but not all of them
  • AMPER-3817 — Exported module dependencies should be resolved against consuming module target platforms, not against the broader list of target platforms of the module where exported dependency is defined
  • AMPER-3846 — Fail to resolve checksum for retrofit2
  • AMPER-3870 — iOS Version Launch Error for ported app.Resources not connected.
  • AMPER-3914 — No telemetry for model-agnostic commands or if we exit before the project root is determined
  • AMPER-3957 — Duplicate classes in Android (compose-multiplatform-room)
  • AMPER-4001 — Amper sometimes outputs invalid OTLP traces
  • AMPER-4010 — Dependencies graph resolution fails due to unlimited parallelism
  • AMPER-4018 — Commonizer should not be called against jvm target
  • AMPER-4021 — CommonizeNativeDistributionTask fails with IllegalMonitorStateException
  • AMPER-4053 — Network problem during build of project with a lot of dependencies
  • AMPER-4055 — java.lang.IllegalStateException: File <...> was returned from dependency resolution, but is missing on disk
  • AMPER-4081 — Failed tests stacktraces are staggered with `--format=teamcity`
  • AMPER-4137 — DR hangs on trying to resolve artifact with invalid version
  • AMPER-4143 — amper bash script doesn't support quoted args in AMPER_JAVA_OPTIONS
  • AMPER-4149 — Dependencies for spring-boot-starter-web can't be resolved
  • AMPER-4150 — Variable substitution in POM issue
  • AMPER-4158 — Published pom.xml (JVM modules) contains multiplatform dependencies
  • AMPER-4159 — Red code in Amper gradle-based project
  • AMPER-4164 — ./amper update fails with random errors depending on the current and target versions
  • AMPER-4175 — Guava transitive dependency problem
  • AMPER-4193 — Duplicate content roots detected on import of Amper gradle-based project

Don't miss a new amper release

NewReleases is sending notifications on new releases.