@scala_ru

Страница 955 из 1499
Митко Соловец?
25.09.2017
11:40:21
https://habrahabr.ru/post/338556/

достойно уважения

Daniel
25.09.2017
11:44:33
что именно?

Google
Митко Соловец?
25.09.2017
11:45:07
за 10 лет обрел такую популярность и коммьюнити

KrivdaTheTriewe
25.09.2017
11:47:53
занял свою узкую нишу

Nikita
25.09.2017
11:48:46
+ перетянул пхп-шников, рубистов и прочих

Oleksandr
25.09.2017
11:49:50
Митко Соловец?
25.09.2017
11:50:37
занял свою узкую нишу
он кстати по хайлоаду

по идее конкурент скале

Dmitry
25.09.2017
11:51:27
/toxic

Cyrillos
25.09.2017
11:51:41
/toxic

Nick
25.09.2017
11:51:41
за 10 лет обрел такую популярность и коммьюнити
Я уже говорил, но повторюсь. За 10 лет у них нет билд тула)

Cyrillos
25.09.2017
11:51:50
что за фигня это?

Митко Соловец?
25.09.2017
11:52:19
Nick
25.09.2017
11:52:24
Ну так

Dep у них, хуже sbt

Google
Luger
25.09.2017
11:52:45
не понял тебя, это как?????
ну у них как-то грустно с билдтулами, к слову. знакомый гошник грейдлом собирает, например

Митко Соловец?
25.09.2017
11:52:53
ты хочешь сказать, они в папочку все складывают?

Nick
25.09.2017
11:53:10
Наши гошники заткнулись про билд тайм. Потому что скала быстрее собирается)

Как раз из-за депа

Митко Соловец?
25.09.2017
11:53:57
не, ну может как второй язык иметь в своём портфеле

а основным какой-нибудь жвм

Mr.White
25.09.2017
11:54:14
Наши гошники заткнулись про билд тайм. Потому что скала быстрее собирается)
Куда уж медленнее если там какой-нибудь sbt-assembly используется

Nick
25.09.2017
11:54:51
Куда уж медленнее если там какой-нибудь sbt-assembly используется
Есть куда. в случае скалы все депенденси кэшированны. А там каждый раз все подряд качает

Nick
25.09.2017
11:55:25
Сюр?

Mr.White
25.09.2017
11:56:12
Зачем выкачивать каждый раз? Это ведь не билд процедура, а забота package manager

Artem
25.09.2017
11:56:15
ну как бы плюс го в другом, не в скорости сборки

Nick
25.09.2017
11:56:52
Хотя может это виноваты разрабы, а не dep

Но то что видел я - дичь

guga
25.09.2017
12:05:24
да ладно тебе, вон @jbaruch говорит, что их артифактори умеет в кэш

не локальный конечно, но зафризить версии можно

Mikhail
25.09.2017
12:06:39
ну как бы плюс го в другом, не в скорости сборки
у го есть плюсы? хм... не в этом чате

Nick
25.09.2017
12:08:08
ну как бы плюс го в другом, не в скорости сборки
У меня сервис на скале 30 секунд собирается. Даж ускорять не над

Oleksandr
25.09.2017
12:08:39
Google
Nikolay
25.09.2017
12:08:54
Компилится и билдится, или все вместе с тестами?

За 30 секунд

Митко Соловец?
25.09.2017
12:09:23
Nick
25.09.2017
12:09:52
Делает, просто микросервисы

Oleksandr
25.09.2017
12:13:02
хотя стоит заметить, что реально дольше всего занимает загрузка сбт, со всеми его ненужными проверками версий

если держать уже запущенный сбт, то жить можно

Nikolay
25.09.2017
12:15:13
На билд сервере?

Nick
25.09.2017
12:15:17
Да, и резолв тож может быть долгим

Artem
25.09.2017
12:16:08
слышал я что язык выбирают немного по другим критериям нежели скорость сборки

Oleksandr
25.09.2017
12:18:28
слышал я что язык выбирают немного по другим критериям нежели скорость сборки
не надо недооценивать этот параметр 1) время на CI может значительно варьироваться 2) некоторые разработчики (типа меня) при времени > 30с табаются куда-то, и к результату сборки возвращаются значительно позже

Nikolay
25.09.2017
12:19:21
В скала чатик табаются)

Oleksandr
25.09.2017
12:21:31
вот только что запустил time, резолвинг занимает 5с, компиляция + сборка тоже 5с (но тут оч маленький проект сейчас)

Nick
25.09.2017
12:25:23
А резолвинг чего? И какой сбт

сбт ж нынче ускорили)

Oleksandr
25.09.2017
12:25:49
0.13.13

в 1.0 функционал coursier вроде встроили, мб стало шустрее

но вряд ли, тк оно про загрузку джарников, а не резолвинг (который сразу при старте сбт начинается)

Alex
25.09.2017
12:27:20
запустил e2e-тесты и сразу сюда. Токсичность повышать

Google
Alex
25.09.2017
12:33:01
Никаких или ?

Nikolay
25.09.2017
12:33:46
0.13.13
в 0.13.16 должны были запуск ускорить

если я правильно помню - бекпортили улучшения

folex
25.09.2017
12:34:22


KrivdaTheTriewe
25.09.2017
12:59:43
frees.io я вновь пытаюсь выходить на связь, много кто использует, есть фидбек по использованию у кого?

Dmitry
25.09.2017
13:01:35
С дуби использовали

Для логов

Отлично

В целом

Nick
25.09.2017
13:02:59
В каком то из эфиров вроде обсуждали freestyle

KrivdaTheTriewe
25.09.2017
13:03:49
да, я помню, было дело зимой, но если честно обсуждение было странноватым )

Alexey
25.09.2017
13:05:53
Кстати о фриманадках, правильно же я понимаю, что подружить их с MonadError нереально?

что то типа recover

Dmitry
25.09.2017
13:09:03
Ну

Дегоес рассказывал что там как можно

Но больно

folex
25.09.2017
13:32:09
У меня тут выдалась возможность переписать все тесты, и я думаю что стоит посмотреть в сторону создания своего DSL для них. В голову сразу приходят free монады, но опыта у меня с этим ничтожно мало. Может быть у кого-то на примете есть что хорошего почитать на тему построения своих DSL в скале? Особенно хорошо если с уклоном в тесты

Vladimir
25.09.2017
13:35:03
в красной книжке про testing framework было, там, правда, в разрезе property based, но думаю, зайдет

folex
25.09.2017
13:35:26
красная книжка это какая?

Google
folex
25.09.2017
13:37:04
а, понятно

Gregory
25.09.2017
13:48:42
Поцаны, тут такой вопрос: мы в проектике используем skalikejdbc для соединения с постгресом. Постгрес не оч справляется с количеством приходящих данных, так что хочется переписать его на стримы, чтобы базка не захлебывалась. Вопрос: как сделать Sink, который будет сигнализировать, что база что-то может дальше переварить?

Diemust
25.09.2017
13:51:11
я не шарю, но заинтересовал кейс, в котором постгря захлебывается, а приложение не захлебнется, если постгря будет бекпрешить

Gregory
25.09.2017
13:51:17
У тебя чтоли от количества подключений захлёбывается?
не, мы переодически другой сервис дергаем, чтобы он нам данные отдавал. Соответсвенно хотелось бы его дергать тогда, когда все имеющееся уже обработано

Diemust
25.09.2017
13:52:10
а, ясно

Gregory
25.09.2017
14:20:28
там же наоборот работает. Синк делает пулл только тогда, когда свободен.
мб выразился неправильно, но примерно это я и имел ввиду. Типа когда в очереди на запись в базу появились места она пуллит новые элементы

Юрий
25.09.2017
14:21:13
оно так и работает

Gregory
25.09.2017
14:24:18
Юрий
25.09.2017
14:24:40
ну синки

берешь просто и пишешь свой синк по доке. Может уже есть какой jdbc sink даже.

я к тому, что ты спросил, как сделать типичный кейс.

Gregory
25.09.2017
14:26:09
а, понял кажется, спасибо

Alex
25.09.2017
15:02:30
object SaveToPostgresStream { trait Entity def save(e: Entity): Future[Unit] = {/* save to postgres here*/ ??? } val parallelSaves: Int = ??? val saveFlow: Flow[Entity, Unit, NotUsed] = Flow[Entity].mapAsync(parallelSaves)(save) val saveSink: Sink[Entity, NotUsed] = saveFlow.toMat(Sink.ignore)(Keep.left) }

Страница 955 из 1499