
Mikhail
23.04.2018
10:40:52
видимо перенесли на другой ip, у меня показывает, что все ок

Quantum Harmonizer
23.04.2018
10:41:59
Там несколько IP.

Жабра
23.04.2018
10:44:27
Ток щас подумал... А чем отличаются withContext и runBlocking? Первый откладывает вычисления, а второй блокирует поток?

Roman
23.04.2018
10:47:48
withContext - suspend функция, которая позволяет переключить контекст внутри другой корутины, например сделать запрос к бд в фоне. Ее аналог async(Context) { ... }.await().

Google

Roman
23.04.2018
10:48:57
А вообще да, они чем-то похожи. Первая блокирует корутину, вторая тред...
Любопытно.

Жабра
23.04.2018
10:49:25

Roman
23.04.2018
10:51:10
Кстати раньше withContext назывался иначе: run.

Жабра
23.04.2018
10:51:31
Не знал

Roman
23.04.2018
10:51:42
Но он конфликтовал со стандартным run и его переименовали.

Жабра
23.04.2018
10:55:12
Черт, всё же очень не хватает в Anko экстеншена по типу
indeterminateProgressDialog("Ожидание...") {
startSuspendFunction()
}
Чтобы не дергать cancel() постоянно.
Могу сам написать, но встроенный сахарок вкуснее. :)

Andrew
23.04.2018
10:57:48

Vladislav
23.04.2018
11:00:21
Никто не подскажет, а где jdk 6 версии взять, а то на оф сайте аутентификацию требуют, а в репозиториях только 8 и 9?

Roman
23.04.2018
11:01:40

Жабра
23.04.2018
11:02:48

Roman
23.04.2018
11:04:44
Я к тому что их вообще не стоит юзать.

Google

Жабра
23.04.2018
11:05:48

Sergey
23.04.2018
11:06:44
это плохой UX паттерн, но лучше в @kotlin_mobile это обсуждать

Жабра
23.04.2018
11:08:01
Подскажите, плз, чё делать
Написал свою функцию, назвал её так же, как аналогичная называется в anko (indeterminateProgressDialog), а потом подумал, что это не оч и переименовал, но походу я как-то переименовал в кешах оригинальную anko функцию, потому что теперь вылазит e: org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Couldn't inline method call 'showProgressDialog' into
... Сделал инвалид кешей, ребилд проекта, клин проекта, не помогает.


Quantum Harmonizer
23.04.2018
11:57:46
Подскажите, плз, чё делать
Написал свою функцию, назвал её так же, как аналогичная называется в anko (indeterminateProgressDialog), а потом подумал, что это не оч и переименовал, но походу я как-то переименовал в кешах оригинальную anko функцию, потому что теперь вылазит e: org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Couldn't inline method call 'showProgressDialog' into
... Сделал инвалид кешей, ребилд проекта, клин проекта, не помогает.
компилятор не может заинлайнить, попробуй убрать inline

Жабра
23.04.2018
11:59:50

Anton
23.04.2018
12:02:00


Lilia
23.04.2018
14:32:40
Подскажите, плз, чё делать
Написал свою функцию, назвал её так же, как аналогичная называется в anko (indeterminateProgressDialog), а потом подумал, что это не оч и переименовал, но походу я как-то переименовал в кешах оригинальную anko функцию, потому что теперь вылазит e: org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Couldn't inline method call 'showProgressDialog' into
... Сделал инвалид кешей, ребилд проекта, клин проекта, не помогает.
А если содержимое функции закомментировать? А если грэдлвый кэш снести? :)

Bogdan
23.04.2018
18:34:39
а то количество воженых ифов растет

Quantum Harmonizer
23.04.2018
18:35:52
первые два условия слить

Bogdan
23.04.2018
18:40:28
а дорого парсить дабл? я про нативный

Quantum Harmonizer
23.04.2018
18:41:39

Bogdan
23.04.2018
18:42:18

Quantum Harmonizer
23.04.2018
18:42:39

Bogdan
23.04.2018
18:42:52

Artem
23.04.2018
18:42:58
из этого куска не понятно намерение

Quantum Harmonizer
23.04.2018
18:43:10

Google

Quantum Harmonizer
23.04.2018
18:43:45
попробуй заменить условия виртуальными вызовами

Bogdan
23.04.2018
18:44:00

Quantum Harmonizer
23.04.2018
18:54:06
В котлине нет способа сделать самый компактный в мире фейл, т. е. throw null?

Kirill
23.04.2018
18:56:44
null!! ?

Quantum Harmonizer
23.04.2018
18:58:15
Хмм, забавно. INVOKESTATIC kotlin/jvm/internal/Intrinsics.throwNpe ()V
эхх, как же байт-код зависим от стдлибы...
хмм, а чем вызов throwNpe с последующим sanitizeStackTrace лучше создания и выброса KNPE на месте?

Жабра
23.04.2018
19:11:26

Quantum Harmonizer
23.04.2018
19:11:43

dimiii
23.04.2018
19:36:36
@egor_bugaenko - твой выход!

Quantum Harmonizer
23.04.2018
19:37:25
@yegor256, его тут нет

Bogdan
23.04.2018
19:37:41
написал костиль

Alina
23.04.2018
19:38:13

dimiii
23.04.2018
19:38:22

Bogdan
23.04.2018
19:38:57
но понял проще сделать toDouble

Quantum Harmonizer
23.04.2018
19:40:52

dimiii
23.04.2018
19:41:22

Google

Bogdan
23.04.2018
19:42:25

dimiii
23.04.2018
19:46:15

Alexander
23.04.2018
19:47:10
Я не очень в контексте, что тут происходит, поэтому предложения в общем:
1. Если нужно проверить, что всё нормально, а иначе взорваться, то есть require
require(tf.isContentChange) { "Content not changed" }
require(tf.isAdded && !tf.isReplaced)
2. Если есть какое-то простое возвращаемое значение для непройденных проверок, ифы заменить ранними возвратами:
tf.isContentChange || return SOMETHING
tf.isAdded && !tf.isReplaced || return SOMETHING_ELSE
3. Если для непройденных проверок будет тоже нормальное вычисление, то выноси в методы отдельные при достижении определённой глубины.
Наверное так.

Bogdan
23.04.2018
19:49:15

Kirill
23.04.2018
19:50:31

Bogdan
23.04.2018
19:51:44
str.toDoubleOrNull()
ну я как раз хотел этого избежать, и вроде механизм позволяет это сделать, но в итоге прийдется юзать это

Admin
ERROR: S client not available

Boris
23.04.2018
19:52:10

Alexander
23.04.2018
19:52:50
А контракт какой хочешь получить?
Могу предположить либо просто true при наличии, false при отсутствии. Или всё же Double при наличии, null при отсутствии?

Kirill
23.04.2018
19:52:58
Преждевременная оптимизация хуже преждевременного <понятно чего>

Bogdan
23.04.2018
19:53:50

Kirill
23.04.2018
19:54:58
Или тебе нужен просто '-' ?

Bogdan
23.04.2018
19:55:17
Чейта?
ну вводишь "-", и он проверяет
ладно есть проверенный варянт

Boris
23.04.2018
19:57:05
Если это жавафх то рекомендую готовым форматтером воспользоваться

Bogdan
23.04.2018
19:58:53

dimiii
23.04.2018
20:17:16
https://github.com/JetBrains/kotlin/blob/1.2.40/libraries/stdlib/src/kotlin/text/StringNumberConversions.kt#L446
Плюсы, минусы, научная запись, hex - все в лучшем виде

Google

Костя
23.04.2018
20:31:19

Quantum Harmonizer
23.04.2018
20:32:15

Bogdan
23.04.2018
20:32:49

Anton
23.04.2018
21:23:02
И еще вопрос, а как собственно в ktor добавить свой callback на закрытие соединения? Если я хочу подчистить ресурсы, если клиент закрыл сокет.

Quantum Harmonizer
23.04.2018
21:26:10

Anton
23.04.2018
21:28:42
finally
Ну не, не пойдет. Пишу я значит по совету выше в клиента через OutgoingContent.WriteChannelContent у меня есть канал для записи инфы, но я не могу повесить событие, что клиент отключился. Могу только через isClosedForWrite проверять каждый раз (что не очень удобно).

Kirill
23.04.2018
21:29:37

Anton
23.04.2018
21:30:16
Спс, Кирилл :)

Pavel
23.04.2018
21:51:58
Ребят, подскажите плз, чувствую себя дебилом
compile 'com.google.code.gson:gson:2.8.2'
import com.google.gson.annotations.SerializedName
...
val gson = Gson()
и получаю
Error:(4, 12) Kotlin: Unresolved reference: google
Error:(38, 20) Kotlin: Unresolved reference: Gson
Градля синхронизируется, подтягивает библиотеки, кладет в кэш, но блин анресолвед и все.
И автокомплит от среды тож не работает

Quantum Harmonizer
23.04.2018
21:53:07

Pavel
23.04.2018
21:54:11
Эм... не знаю, как узнать?

Dibro
23.04.2018
21:54:25

Pavel
23.04.2018
21:54:52
https://simplecat.tk/shots/shot-20180424-005437.png
Причем kafka-clients работает

Dibro
23.04.2018
21:59:24

Pavel
23.04.2018
22:00:28
Да пробовал, invalidate cache and restart, rm -rf $HOME/.gradle/caches/, ./gradlew build --refresh-dependencies
Вообще ничего не помогает