Мы в компании все проекты, какие возможно, пишем на Kotlin. Я всем сердцем его люблю. Оттого больнее то, что с ним происходит...
Сегодня утром мне написал коллега. Говорит, помоги разобраться:
renderConstructor mustn't be called with an intersection type argument. Call render to simply render the type or filter out intersection types on the call-site.
Решилось какой-то там пересборкой, возможно, какой-то очисткой кэша. Казалось бы, ну мы же инженеры, почему у нас "какая-то пересборка" и "возможно"? Вот в этом и проблема.
Примерно с год-два я наблюдаю, как в котлине творятся проблемы с:
Надёжностью сборок. То тут, то там какие-то приколы со странными ошибками, которые то есть, то нет
Тулингом. Постоянные косяки в подсветке в IDE, отсутствие удобных визардов для создания проектов, особенно для проектов вроде на базе Kotlin Multiplatform
Библиотеками. Не все базовые вещи закрыты (привет, kotlinx-io без поддержки файлов в JS Browser), Compose Multiplatform пытается сделаться кроссплатформенным (привет, Compose Web, который не использует нативные HTML тэги и CSS стили)
Я понимаю, что сейчас происходит переход на K2 (не все библиотеки на него перешли => вскрываются новые проблемы время от времени). Я понимаю, что язык и его рабочее окружение пытается двигаться. Но я не понимаю, почему я не могу запустить gradlew clean build
и не бояться, что какие-то кэши сборки затрутся во время этой же сборки.
Я надеюсь, что котлин будет становиться лучше. Но я пока не понимаю, когда.