Amper 0.7.0 is out with some significant updates! ...
# amper
z
Amper 0.7.0 is out with some significant updates! πŸš€ The standalone build tool becoming the primary focus of the project 🌱 Server-side support for Spring and Ktor 🍎 iOS development with KMP in Amper Read the blog post for the full details: https://blog.jetbrains.com/amper/2025/05/amper-update-may-2025/
πŸŽ‰ 9
❀️ 3
amper intensifies 9
e
Interesting would be to see how Android build will be handled
m
What about support for wasmJs? If I read the blog post correctly, this is currently not supported.
j
> Interesting would be to see how Android build will be handled At the moment, the Android dex conversion is still handled via a delegated Gradle build that's abstracted away from the user (it's the only part that isn't 100% Amper). Compilation, dependency resolution, packaging & signing are all on Amper side, though. Amper is open-source, so feel free to check everything out for yourself πŸ™‚ (@Anton Prokhorov please correct me if I'm wrong here)
K 2
What about support for wasmJs? If I read the blog post correctly, this is currently not supported.
It's indeed not supported yet
a
> packaging & signing Depends on what you mean by packaging signing and obfuscating/minifying/treeshaking are on the Gradle side, Amper may help with generating keychain for signing, though Everything else indeed on the Amper side: compilation and dependency resolution
πŸ™ 1
e
I mean Android build is super complex and was built over in grade plugin. So wonder was it reverse engineered to replicate. And if yes, I assume it will be hard to keep up with Google updates. Good to know that it is open source - so I could just check myself instead of asking. And using abstracted grade plugin is probably the solution to keep up with Google updates.
πŸ‘Œ 2
z
πŸ™ 1
βœ… 2
a
And using the abstracted grade plugin is probably the solution to keep up with Google updates.
Yes, this is exactly what we did, we try to rely heavily on the public AGP APIs (with only maybe a couple of little hacks), so we actually can keep up with the Google updates
c
Where can I read about what this means when you have third party libraries that provide Gradle plugins?
a
Where can I read about what this means when you have third party libraries that provide Gradle plugins?
what libraries? do you have some specifics?
c
SqlDelight comes to mind as an example. SKIE is another one.
a
We don't support SQLDelight yet, for now it's recommended to use androidx.Room instead, with SKIE it depends on what Gradle plugin does
🫠 1
c
Right, I was wondering more about the long term strategy for Amper. There is no denying that several existing libraries are offered as gradle plugins. Is it expected that the library authors start offering Amper "plugins" (if you can call them that) in the future?
j
Yes, we're actively working on extensibility in Amper to provide 3rd party "plugins" in the future
true 1
πŸ‘πŸ½ 1
πŸ‘ 2
m
can I use compiler plugins like https://github.com/ZacSweers/metro?
j
3rd party compiler plugins are not supported at the moment, only KSP processors
m
Is it planned?
j
It's not strictly planned per se at the moment, but we definitely want to cover important user needs. There aren't a lot of compiler plugins at the moment because the compiler api itself is not stable. But once it stabilizes a bit, we'll definitely consider it. We intend to respond to user demand
πŸ‘ 2
t
@Mate I was able to. I don't have it near me, but here an example for another one I used for my tests.
Copy code
test-dependencies:
  - dev.mokkery:mokkery-runtime:2.4.0

settings:
  kotlin:
    serialization: enabled
    ksp:
      processors:
        - dev.mokkery:mokkery-plugin:2.4.0
  compose:
    enabled: true
Was with the previous version of Amper though.
j
@Tristan this is for KSP processors, which are indeed supported, but they are slightly different from compiler plugins. Compiler plugins are more involved and allow modifying the behaviour of the compiler, such as adding keywords or methods to a class. KSP processors just read code and can produce more code, but they cannot modify existing classes.
gratitude thank you 2
t
Indeed read too fast.
no problem 1