
Sergey
19.02.2018
14:25:49

Egor
19.02.2018
14:26:17
Мб попробовать откатиться?

Roman
19.02.2018
14:27:05
Хм, а почему у других пользователей котлин плагина все ок?

Egor
19.02.2018
14:28:02
Пресловутые вылетающие у каждого 1/10000 пользователя баги

Google

Sergey
19.02.2018
14:28:57

Roman
19.02.2018
14:29:53
Ну у меня проект с 11 модулями. Некоторые вложенные. Полет нормальный.
У меня помню тоже были проблемы с циклами, решил разрывом зависимостей с помощью +1 модуля.

Sergey
19.02.2018
14:44:01
Дело было в этом:
https://youtrack.jetbrains.com/issue/KT-21181
https://github.com/gradle/gradle/issues/847
ошибка возникает только если у проектов есть одинаковое название
например A:jvm, B:jvm (jvm - одинаковое название)

Andrew
19.02.2018
14:45:19

Руслан
19.02.2018
14:46:08
Мои вопросы он как-то проигнорил и я забил на кобальт

Andrew
19.02.2018
14:48:19

Sergey
19.02.2018
14:49:53
но вобще если бы оно работало, я бы тоже перешел
в градле слишком много магии из за груви...

Руслан
19.02.2018
14:50:30
Можно устроить флешмоб...

Sergey
19.02.2018
14:50:37
а с kotlin srcipt для меня так вобще не очевидно. пока все исходники не перечитаешь не поймешь что нужно сделать чтобы заработало...

Google

Денис
19.02.2018
14:50:56

Egor
19.02.2018
14:51:09
Ну вот я все собираюсь катнуть статейку в хабр про кобальт, пробабли это прибавит ему известности и мейнтейнеров
Хотя, кажется, каждый котлинист в мире про него уже знает

Mikhail
19.02.2018
14:53:10

Руслан
19.02.2018
14:54:34

Egor
19.02.2018
14:55:20
Нет, ну шутка ли, писать билдскрипты на котлине
Это та фича, что в свое время обеспечила успех градла
В некотором смысле

Руслан
19.02.2018
14:55:50
https://github.com/KotlinBy/awesome-kotlin/commit/16cae798560abe7b5aba69ac4964c4b6a0f5a41d#diff-9e9bc3b137c68b6d2f626cfa2a8545e5
Вот я переводил один проект на кобальт (потом откатил конечно)

Egor
19.02.2018
14:56:15
Хотя на фоне мавена все, в чем нет xml-я имело бы успех -_-

Andrew
19.02.2018
14:56:38
Оно-то круто, если бы закрывало хотя бы основные юзкейсы. Сейчас за глаза хватает мавена тем, кто любит декларативное описание процесса сборки и гредла остальным.

Руслан
19.02.2018
14:56:47
Банально не нашел как сделать папочку со скриптом запуска и зависимостями, аля application плагин в gradle

Egor
19.02.2018
14:58:38
Кстати, кобальт был бы гораздо более дееспособен, будь у него интероп с градлом

Руслан
19.02.2018
14:59:02
Если бы не было gradle

Andrew
19.02.2018
14:59:15
Звучит логично, но страшно себе представлять, насколько бы это усложнило кобальт (и убило всю его суть).

Egor
19.02.2018
14:59:37

Andrew
19.02.2018
14:59:58
Это одна из его проблем ?

Руслан
19.02.2018
15:00:06
Почему, он же сам детектит какие у тебя папочки и умеет собирать groovy/java/kotlin

Andrew
19.02.2018
15:00:43
А потом у тебя появляется необходимость подтянуть нативную зависимость с JNI-прослойкой и ты кидаешься менять систему сборки.

Google

Egor
19.02.2018
15:01:10
Потому что билдскрипты пишутся на котлине, а котлин джавистам гораздо менее интуитивно понятен, чем груви

Andrew
19.02.2018
15:01:35
Ой ли?

Egor
19.02.2018
15:01:45
Да и у котлина вообще пока ast-tree нет

Руслан
19.02.2018
15:02:00

Egor
19.02.2018
15:02:11
Это иллюзия

Andrew
19.02.2018
15:02:13
Кстати, Руслан, как там дела с UAST, когда в паблик выйдет?)

Egor
19.02.2018
15:02:14
))

Руслан
19.02.2018
15:02:19
И понимать этот java-groovy синтаксис не могу

Mikhail
19.02.2018
15:02:29

Egor
19.02.2018
15:03:03

Vitalii
19.02.2018
15:03:26

Руслан
19.02.2018
15:03:44
У меня в Kobalt хоть автодополнение было, а в груви ты сам себе отдан - пиши любую чушь, и запускай - проверяй работает ли. те же тесты на споке и gradlе

Egor
19.02.2018
15:03:54
Идея постоянно показывает, что ничерта не понимает и не может найти объявлений и инициализаций, а градл все равно работает

Руслан
19.02.2018
15:04:21

Egor
19.02.2018
15:04:28
Про груви
Ща бы Баруха с его греилсом скастовать, прости господи
Всегда его вспоминаю, когда разговор заходит про груви

Andrew
19.02.2018
15:05:38

Mikhail
19.02.2018
15:05:50

Vitalii
19.02.2018
15:06:27

Google

Vitalii
19.02.2018
15:07:18

Egor
19.02.2018
15:09:32
Аа, так груви это скриптовый язык
А я все думал, что так сложно

Sergey
19.02.2018
15:36:26
это же вроде только для универсальных инспекций в идее
а для плагинов к котлину они как раз переводят все на ir
нет?

Руслан
19.02.2018
15:37:45
Но в Talking Kotlin рассказывали что UAST в новом андроидовом линте используется

Andrew
19.02.2018
15:38:48
Дээ, это я тебя с Кириллом перепутал. Прошу пардона. :)
Знаю, об этом ещё на котлинконф рассказывали, но с тех пор я больше новостей не слышал.
(понаставят себе тёмных аватарок, понавешают лычек "admin", поди разберись, кто где)

Sergey
19.02.2018
15:41:01
ну линт - это же инспекции. можно посмотреть, и сделать какое то сообщение об ошибки. но код преобразовать не получиться (чтобы плагин к компилятору сделать). не похоже на аналог ast-tree в груви.
вроде где то говорили что компилятор собираются перевести на ir, который можно будет трансформировать в плгаинах к компилятору
но сейчас компилятор явы не использует ir
вроде как то так

Kirill
19.02.2018
15:41:16
Я пытался найти среди участников чата человека, который делает UAST.
Не нашёл
И таки uast -- это про инспекции в идее, да

Andrew
19.02.2018
15:42:22

Gleb
19.02.2018
17:31:32
как из ByteArray красиво извлечь подмассивы длиной по 16, чтобы получилось
val list: List<ByteArray>, где list[anyIndex].size == 16?

balolam
19.02.2018
17:33:28
filter

Google

Gleb
19.02.2018
17:35:07
filter
нет-нет, ты не совсем правильно понял
я хочу разделить один длинный ByteArray на массивы по 16 байт
плохо сформулировал, наверное

Vladimir
19.02.2018
17:35:20
Chunked(16)?

Gleb
19.02.2018
17:35:57
ну да

Andrew
19.02.2018
17:42:35
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/chunked.html

Gleb
19.02.2018
17:44:11

Andrew
19.02.2018
17:45:59
Правда возвращает он List<LIst<Byte>>, что может не подойти в зависимости от задачи.

Igor
19.02.2018
18:53:22
А можно ли как-то осуществить pattern-матчинг List<T> по T в котлине?) В лоб на ночь глядя навряд-ли что-то смогу придумать

Даниил
19.02.2018
19:02:27

Quantum Harmonizer
19.02.2018
19:03:53
В любом случае, нельзя, потому что паттерн-матчинга в Котлине нет.
(сейчас мне наваляют за занудство)

Даниил
19.02.2018
19:04:46
ты же админ, кто тебе наваляет-то

Quantum Harmonizer
19.02.2018
19:05:14
сообщество же)

Igor
19.02.2018
19:05:36

Даниил
19.02.2018
19:07:14
ну учитывая то что типы стираются и в рантайме это всё один тип List – нельзя
притом, а если это List<T>, где T – твой sealed класс? то есть среди элементов есть и A, и B

Quantum Harmonizer
19.02.2018
19:07:19

Даниил
19.02.2018
19:07:25
если ты уверен что элементы только одного типа, то можешь по типу первого элемента матчить

Igor
19.02.2018
19:07:38

Quantum Harmonizer
19.02.2018
19:07:42

Даниил
19.02.2018
19:07:58

Siarhei
19.02.2018
19:08:10
ребята, нужны про корутины проекты опенсорсные красивые, чтобы изучить