
A
11.07.2017
12:07:25
тут есть кто с 2gis ?

KrivdaTheTriewe
11.07.2017
12:11:36

Nick
11.07.2017
12:18:25
@krivdatheliggen просто var нельзя чтоль сделать?)

Google

Mikhail
11.07.2017
12:27:03

Alexander
11.07.2017
12:53:33
используем его + caffeine как бэкэнд

Grigory
11.07.2017
12:57:43
а не напарывались на какиенить баги с scala-cache?
я не помню точно, но была какая-то странность в поведении getOrUpdate
но это было давно и пруфов у меня нет
):

Wystan
11.07.2017
13:00:22
Настроил тут локальный гитлаб с докер раннером, ажур докер реджистри и ажурный же dcos. Билжу в гитлабе доекр, кидаю в регистр, и потом деплою тоже одной кнопкой в dcos. Сказочно и многоообещающе выглядит
Но документация там как ландау-лифшиц, если не знаешь как делать, то не поймешь, если знаешь, то все очевидно.
И там пул агентов вроде автоматический, просто докупай. А еще у майкрософта подписка есть бесплатная на полгода, если ты как старап зарегаешься.

Alexander
11.07.2017
13:02:18
а не напарывались на какиенить баги с scala-cache?
нет, но там явно не хватает "compute", чтобы при отсутстсвии значения в кэше оно вычислилось один раз, а все желающие в это время подождали, пока оно вычислится https://github.com/cb372/scalacache/issues/85

Grigory
11.07.2017
13:02:45

Alexander
11.07.2017
13:03:50
в смысле просто напрямую кафеин заюзали?

Google

Grigory
11.07.2017
13:07:05
да
ну или тончайший их дсл для скалы

Alexey
11.07.2017
13:55:10
Кто нибудь из пользующих дуби решил проблему с подсветкой кода в idea?

Nick
11.07.2017
13:56:47
баг в idea есть

Alexey
11.07.2017
14:03:27
да это я видел, да. Грустно конечно. При близком рассмотрении того что есть на рынке в плане sql для скалы оказалось что внятных библиотек две — scalikejdbc (как ни странно) и дуби. Но я сдохну разбираться где idea тупит, а где я)

Alexey
11.07.2017
14:04:17

Юрий
11.07.2017
14:07:02
Чочо

Alexey
11.07.2017
14:07:38
ищут представителей 2гис...

Daniel
11.07.2017
14:07:53
Юрий должен быть тут
Алексей, если не секрет, релокейт в Берлин или ситуативно вышло записывать подкаст оттуда?

Alexey
11.07.2017
14:08:19
да, я переехал )

Юрий
11.07.2017
14:09:44

Daniel
11.07.2017
14:11:41

Nick
11.07.2017
14:37:27

KrivdaTheTriewe
11.07.2017
14:38:10

Nick
11.07.2017
14:38:24
я в виме дома
потому что с неитивом впринципе пофигу

Alexey
11.07.2017
14:49:35

folex
11.07.2017
14:53:30
Внутри методов точно знаешь почему подсвечивает, а снаружи всё explicit типами пометил, и збс

Alex
11.07.2017
15:28:33
https://twitter.com/posco/status/884460486074392576

Google

Alexey
11.07.2017
15:49:54
чтото туплю. в котах можно из ApplicativeError[F, E1] и E1 -> E2 получить ApplicativeError[F, E2]?

Oleg
11.07.2017
15:50:42

Alexey
11.07.2017
15:51:03
вроде можно реализовать. они просто не сделали или была причина?

Alexey
11.07.2017
15:51:21
@folexeyy это да...вот думаю так и сделать. меня вконец запутал scalike. Там все хорошо пока не надо с play его интегрировать. В этот момент начинаются пляски с бубном. Я тупо не понимаю где мне брать этот его db для того чтобы в транзакции заворачивать вызовы методов репозиториев. В дуби API как ни странно в этом плане проще. Ничего никуда заворачивать не нужно, собрал стек из запросов и вызвал его где надо с чем надо. Вопрос вот только. Насколько просто его интегрировать с play. В книге дуби раздел про connection pool не совсем мне понятен (в силу глубины моих знаний думается мне)

Oleg
11.07.2017
15:52:27
ApplicativeError инвариантна, а не ковариантна относительно E ,поэтому ей нужны функции туда и обратно

Alexey
11.07.2017
15:53:58
окей, давай попросим две функции

Oleg
11.07.2017
15:54:03
Вот Invariant можно

folex
11.07.2017
15:54:49

Alexey
11.07.2017
15:55:38
@folexeyy справедливо:-)

Diemust
11.07.2017
15:57:29

Alexey
11.07.2017
15:59:56
@diemust ну в плей есть HikariComponents например. Хотелось использовать его для дуби

Alexey
11.07.2017
16:00:05
чтобы пулом занимался плей

Diemust
11.07.2017
16:00:23
пулом будет заниматься хикари, у дуби он вроде как из коробки есть

Alexey
11.07.2017
16:01:25
то есть тупо в контроллере транзактор создавать? независимо от play?

Diemust
11.07.2017
16:02:12
ну создавай где хочешь, не понимаю, что может быть не так

Alexey
11.07.2017
16:03:23
так я тоже не понимаю) я думал что вот play разбирается с hikari и нужно его юзать а не сбоку юзать что-то еще. Я тут в чатике самый зеленый если чего:-) с нода пришел

Aleksei
11.07.2017
16:03:55
нужно определение слова сбоку
=)

Google

Diemust
11.07.2017
16:05:16
modules {
enabled += "play.api.db.DBModule"
enabled += "play.api.db.HikariCPModule"
}
как я понимаю вот это в плее можно отключить и юзать БД как хочешь

Aleksei
11.07.2017
16:05:48
вот вот
еще и расположение папочек стандартное можно отрубить )

Alexey
11.07.2017
16:07:19
это хорошие новости! сейчас попробую. Очень не хочется заниматься сликом и scalike
спасибо!

Aleksei
11.07.2017
16:09:42
скалайк, кстати отличный.

Alexey
11.07.2017
16:10:41
мне он нравится до момента интеграции с play — если есть опыт, подскажи пожалуйста, а то у меня даже тесты с ним работают, а к play подрубить не могу

Aleksei
11.07.2017
16:11:23
хз, с плеем не мешал. =(

Admin
ERROR: S client not available

Юрий
11.07.2017
16:16:31

Diemust
11.07.2017
16:16:42
Ну что скалайк, что дуб интегрировать - разницы нет

Alexey
11.07.2017
16:18:15
Юрий macwire
ну compile time в общем

Юрий
11.07.2017
16:19:16

Alexey
11.07.2017
16:20:48
Я подрубил их плагины (которые для play)... ну и собственно все) В какой-то статье я читал что нужно в onLoad вызвать setupAll. Так и сделал
Хотя судя по сорцам плагина scalike уже что-то такое делает в onLoad. Но опять же, я не уверен что плагин работает в принципе ибо он по-моему предполагает, что я guice использую
Юрий А как нужно?:)

Diemust
11.07.2017
16:29:10
Не юзай плагин прост, сам все делай

Юрий
11.07.2017
16:32:53
Юрий А как нужно?:)
Плюсую, не знаю что там в плагинах. Просто юзай синглтон, если тебе это подходит. Либо создай инстанс сам и прокинь в ди

Alexey
11.07.2017
16:49:13
даже scalikejdbc-config не юзать?

Google

Alexey
11.07.2017
16:50:12
у них написано сделай все в конфиге а потом DBs.setupAll(). но я не знаю что потом передавать в котроллеры:-) DB?
Я прям туплю сейчас.

.
11.07.2017
17:00:35
И не возвращать фьючи нужных коллекций

Alexey
11.07.2017
17:06:10
Почему репозиторий не сделать с методами нужными?
Не очень понимаю. У меня все методы в репозитрии, сервис дергает репозитории вызывая методы внутри транзакции, а контроллер вызывает метод на сервисе. Я хочу сессию передавать в самом верху, в котроллере

.
11.07.2017
17:07:25
А. Так не делал. Лучше не буду советовать, а то глупость ещё скажу :)
Я генерил синглтон с репой и дергал оттуда методы.

Alexey
11.07.2017
17:11:52
Ну вот например в слике как — ты там у себя где-то собрал стэк операций и вернул. А где надо ты запускаешь его с db.run. Примерно как в дуби. Дальше ты просишь у плея инстанс db и вперед

Mr.White
11.07.2017
18:53:37
Привет, подскажите пожалуйста, может кто-то разбирался с темой создания мок-сервисов для интеграционного тестирования.
Собственно есть ли фреймворки, где бы можно было бы объявить REST-interface, прописать какую-то логику на scala и использовать его для интеграционных тестов? Что-то вроде mountebank, но ради него не хочется связываться node, npm да и JavaScript.

Roman
11.07.2017
18:57:37
Wiremock
https://github.com/danmassie/wiremock-scala-examples/blob/master/src/test/scala/uk/co/deku/wiremock/ScalaTest.scala

Mr.White
11.07.2017
18:59:29

Alexandr
11.07.2017
19:21:10
А в чем преимущество мокать сторонний http сервис, вместо того чтобы мокнуть свои gateway классы?

Dmitry
11.07.2017
19:21:44
Что бы потестить хттп клиент)) кек

Alexandr
11.07.2017
19:23:23
А, ну да, излишняя предосторожность ещё никому не вредила ?

Mikhail
11.07.2017
19:26:11
Тесты на тесты не забудьте. Излишняя предосторожность еще никому не вредила

Dmitry
11.07.2017
19:26:37
Мок моков

Mr.White
11.07.2017
19:27:10
Полезно хотя бы тем, что можно симулировать нестабильность сети и сервисов без дополнительных костылей, ну или даже запустить приложение без каких-то сторонних сервисов.
Может субъективное, но на мой взгляд юнит-тесты более хрупкие что-ли, пользы от них меньше чем от интеграционных.

Dmitry
11.07.2017
19:28:29
Ну так компонентные