Size: a a a

2019 October 17

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Вот это легко решается отдельными плагинами
Решается - да, но это не то, что хочется. Хочется имет плагин, который обслуживает задачу.
источник

AN

Alexander Nozik in Kotlin JVM
Я не говорю, что градл плохой. Я говорю, что его структура нашла свой потолок. И на Kts это особенно заметно
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Я не говорю, что градл плохой. Я говорю, что его структура нашла свой потолок. И на Kts это особенно заметно
Вот kts больше всего страдает от такой динамической структуры, когда будет плагин применён или нет - зависит от каких-то действий в билд-скрипте.
Лучше так не делать.
источник

BV

Boris Vanin in Kotlin JVM
В грейдле сделана система биндингов, изменения отражаются, те если ты поменял что-то в конфиге это отразится в тасках к примеру или можно что-то делать когда конфиг уже применили, там много способов
источник

VP

Vladimir Petrakovich in Kotlin JVM
Vladimir Petrakovich
Вот это легко решается отдельными плагинами
А, кстати, есть ещё решение - не подключать другие плагины по условию, а реагировать на их подключение.
Кода будет столько же, но набор плагинов понятен сразу и известен до исполнения билд-скрипта.
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Вот kts больше всего страдает от такой динамической структуры, когда будет плагин применён или нет - зависит от каких-то действий в билд-скрипте.
Лучше так не делать.
А я не говорю про динамическую структуру. Я напротив говорю, что конфигурирование плагинов должно быть вынесено из билдскрипта совсем.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
А я не говорю про динамическую структуру. Я напротив говорю, что конфигурирование плагинов должно быть вынесено из билдскрипта совсем.
Оно и так фактически не там
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
А, кстати, есть ещё решение - не подключать другие плагины по условию, а реагировать на их подключение.
Кода будет столько же, но набор плагинов понятен сразу и известен до исполнения билд-скрипта.
Ну я так и делаю
источник

BV

Boris Vanin in Kotlin JVM
Alexander Nozik
А я не говорю про динамическую структуру. Я напротив говорю, что конфигурирование плагинов должно быть вынесено из билдскрипта совсем.
Что за билдскрипт такой где конфигурируются плагины?
источник

VP

Vladimir Petrakovich in Kotlin JVM
А вы в том примере пытаетесь сделать динамически
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Оно и так фактически не там
Фактически там. У вас экстеншены, которые реально конфигурируют плагины, там же, где и применение плагинов
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Ну я так и делаю
Нет, вы сами делаете apply по вызову withSerialization например.
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
А вы в том примере пытаетесь сделать динамически
неа, там просто эктеншен подрубает кусок плагина.
источник

BV

Boris Vanin in Kotlin JVM
Хотя я соглашусь, что флоу далёк от идеала
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Нет, вы сами делаете apply по вызову withSerialization например.
там унутре я подключаю фичи в зависимости от того, какие плагины подключены.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
там унутре я подключаю фичи в зависимости от того, какие плагины подключены.
Зачем тогда эти withDokka и withSerialization?
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Зачем тогда эти withDokka и withSerialization?
Потому что я не хочу подключать плагин доки и для каждого проекта дублировать конфигурацию. Я хочу, чтобы в моем плагине были готовые настройки под мои задачи, которые я подключаю одной строкой.
источник

VP

Vladimir Petrakovich in Kotlin JVM
Alexander Nozik
Потому что я не хочу подключать плагин доки и для каждого проекта дублировать конфигурацию. Я хочу, чтобы в моем плагине были готовые настройки под мои задачи, которые я подключаю одной строкой.
Так вы один фиг дублируете эти вызовы, в чём разница, рекурсивное применение к подпроектам?
источник

AN

Alexander Nozik in Kotlin JVM
В принципе, правильнее наверное было бы сделать это топ левел функцией типа Project.withDokka(), но эта штука будет плохо дружить с подгрузкой kts
источник

AN

Alexander Nozik in Kotlin JVM
Vladimir Petrakovich
Так вы один фиг дублируете эти вызовы, в чём разница, рекурсивное применение к подпроектам?
Настройки одинаковые. Пока их там нет, но будут.
источник