Is it just me...? Finding a combination between I...
# android
d
Is it just me...? Finding a combination between IDEA, the android plugin, compose plugin, compose, jdk version, kotlin version, R0, proguard, agp version and gradle and gradle build plugin is near-impossible? I managed to get one agp 8.x combination working eventually months ago. Since then, there have been AGP update, project structure Update, IDEA Updates, Compose Updates, Gradle updates... and almost every time it is a big ball of incompatible mess. The kind of tight compatibility windows is super frustrating and baffeling me. Every time it feels like Jetbrains is unable to support their own latest versions of their software. Kotlin 2.4 needs AGP 9.1 which does nto work in idea... agp 9.0.1 has some build stuff that pulls in some Kotlin 2.4.0, proguard in agp 8.x comes in some old version not supporting anything beyond jvm 21... This is really one super frustrating aspect of the whole ecosystem. Right now I am trying to get a current AGP and Kotlin running, and it seems impossible.
p
I guess the safest path is Android Studio
c
The main issue is that there are lots of compelling new upgrades & features in all the new versions of everything! It is true there is some juggling on the frontier. From memory - both AGP 9 and Kotlin 2 were challenging times managing compatiability. At the moment it's simpiler if you use Android Studio with the newest versions of everything. There have been other times when it was better sticking with Intellij though, as that gets the KMP features sooner.
d
I worked on the 'hope' that it will get 'eventually easier' thoughout the whole agp 8.x era and compose multiplatform IntelliJ integration. There has been done a lot to make things smoother, I know. But it is hard to see the results. I hope things will eventually settle down now. Amper/kotlin-toolchain, the new layout with agp 9 and a stronger multiplatform ecosystem, I hope it gets better. I keep hoping. While I have many years of experience, I often try to judge it through the eyes of someone new joining the ecosystem. How often would I say things like 'Well, in that case...' and 'Except here, here we must...' when onboarding the person. And it has been and still is rough. For example: Yes, bridging the navigation gap cleanly across platforms is hard, but discovering that something like navigation was not part of KMP compose until a while ago was really surprising last year. Actual/Except still being experimental and the endless pain of Gradle, the KMP wizard and examples not updated in time... I remember a year ago Sebastian talking on the Kotlin Podcast that 'now is the perfect time to get into the ecosystem' - right while I was getting in and finding out, that I need to integrate external projects like Voyager for navigation and things constantly breaking. It fest VERY not ready. Again, it is getting better, I really love Kotlin and the KMP ecosystem. But trying to keep compatibility, giving clearer error messages if something does not fit, coordinating releases (wait until IntellIJ, documentation(!) and the website catches up!) and things like this would lower the friction a lot.
p
Sellers gotta sell - that's everywhere
e
Is it just me...?
No it is not just you, we get a lot of these signals and actively consider them with everything we do. I think one of our main difficulties is that a lot of our improvements come with a new thing to learn or adopt. Specifically regarding your comment on alignment of AGP with IntelliJ, we have setup a new process in the last months to make that process smoother for the future. It won't help today, but we hope to pick the fruits later this year already.
d
That sounds great. And I appreciate it a lot, just as I like Kotlin a lot and why I am building on it right now 😛 I will try to move over to kotlin-toolchain. We are targeting web, ios, desktop and android. Let's see how this will work out.
kodee loving 1
e
Keep in mind that Kotlin Toolchain is still in alpha! We have a whole bunch of improvements planned, but you might get some unsupported features. Specifically running a web app (you can build it, but there is no web server included to run it) is something you will run into. Please do join us in #C062WG3A7T8 to provide feedback, the team is super responsive.
🙌 1
d
Yes, that I am very aware. I am not using every tool right away and then complain about it being brittle, in case it came across like this. 😛 I have been following and loving amper for a while and this is on the 'I want to use and improve it, so for future devs Kotlin will be even easier to get into' pile. I'd use our app as a testground in a seperate branch to see what breaks, debug and report/fix it. 🙂
🙌 1
thank you color 1
e
I am not using every tool right away and then comlaining about it being brittle, in case if came across like this.
I can't be mad if you did do this, without that feedback we won't know what to improve 😛 Thanks a lot, looking forward to hear from your experience!
❤️ 1