
Oleg
14.03.2018
10:03:34
В моей MonadError. И, кстати, тот факт, что это Throwable - нигде в реализации не используется

Daniel
14.03.2018
10:04:31
используется, handleErrorWith

Oleg
14.03.2018
10:05:15

Daniel
14.03.2018
10:05:31
да, есть такая проблема

Google

Daniel
14.03.2018
10:09:30
это было сделано из-за того, что filter в обычной фьюче выбрасывает NoSuchElementException, в твиттеровой фьюче ещё какой-то exception
Был выбор либо сделать так, либо требовать внешний инстанс с типом ошибки от пользователя

Oleg
14.03.2018
10:12:39
Я по секрету признаюсь, что у лысого есть пару фичей
Которые могли бы стать решающими, и я внезапно начал бы это использовать
И эти фичи - не перфоманс

Denis
14.03.2018
10:13:47
левый и правый трицепсы? :)

Oleg
14.03.2018
10:16:28
Почти
первый вот такой
https://github.com/jdegoes/scalaz/blob/series/8.0.x/effect/shared/src/main/scala/scalaz/effect/Fiber.scala#L36
IO.fork возвращает некий объект, указывающий на "логическую нить", в которой будет крутиться "параллельные вычисления"
В любой момент туда можно вбросить эксепшон
Тот процесс этот эксепшон даже может поймать и сделать какой-то ресурс-хэндлинг
В принципе, наверное, это заменяется явным cancellation ом и обработкой ресурсов в мониксе
Но всё равно очень полезная фича для многих паттернов
ну а второй - это, конечно, трицепсы
на самом деле была ещё одна фича, но походу она в блогах осталась у него

Google

Aleksandr
14.03.2018
10:35:59
Вопрос: чем можно гонять тесты на скале с определенным периодом? и в идеале чтоб веб морда была и эмейлы умел отправлять.
посмотрел на гатлинг - базовая версия ниочень, а не базовая стоит 6к бачей в год

Denis
14.03.2018
10:37:06

Aleksandr
14.03.2018
10:37:43
jenkins ?
дженкинс так себе интегрирован со скалой. Типо можных примочек и красивого мониторинга не завезли.

Юрий
14.03.2018
10:47:31

Александр
14.03.2018
10:48:49
Если я правильно понял, то господин хочет не тесты по крону а красивые отчетики в конце и понимание - есть ли деградация

Юрий
14.03.2018
10:49:14
скалатест умеет генерировать junit отчёт
и вот уже дженкинс не так плох

Daniel
14.03.2018
10:51:27
нормальных вариантов нет (в паблике или задаром), даже без относительно скалы, жвм и прочего

M
14.03.2018
10:52:20
профит неблагодари

Gleb
14.03.2018
10:52:50

Aleksandr
14.03.2018
10:53:05

Gleb
14.03.2018
10:53:17
jenkins разве не умеет расписание сделать?

Aleksandr
14.03.2018
10:53:24
умеет
но я думал малоли есть какой-нибудь клевый солюшон из коробки
походу нет

M
14.03.2018
10:53:43
а если серьезно из вопроса не понятно что нужно, к дженкинсу можно и сонар подрубить там и код ковередж и всякая шляпа как конструктор дописывается - собирается
и его допилить можно
из коробки ничего готового нету )

Google

Юрий
14.03.2018
10:54:47
тож думаю, что тока руками собирать по кускам

Vladyslav
14.03.2018
11:13:27
https://docs.qameta.io/allure/
Со скалой есть интеграция

Daniel
14.03.2018
11:17:29
у алюра бардак в организации и нет регресса (по крайней мере наши тестеры говорили что нет)

sherzod
14.03.2018
11:20:21
Кто-нить использовал alpakka unixdomainsocket ? (чёт он не работает, нет входящих байтиков)

Ivan
14.03.2018
11:47:35
Кто-нибудь юзал akka-http + swagger? У нас на проекте yml файл с простыней кода (1700+ строк). Неужели нет альтернативных вариантов конфигурации?

Oleg
14.03.2018
11:48:37

Ivan
14.03.2018
11:49:06

Oleg
14.03.2018
11:49:27
короче, юзали, юзаем, придумали либу типо Haskell Servant, пока опенсорсить не собираемся

Alex
14.03.2018
11:51:06
очень жаль.

Denis
14.03.2018
11:52:03

Oleg
14.03.2018
11:52:24

Alexander
14.03.2018
11:53:26
дсл над дсл?

Denis
14.03.2018
11:53:40
Я могу высказать непопулярное мнение, но мне кажется что OpenAPI должен идти первым.

Oleg
14.03.2018
11:53:59

Denis
14.03.2018
11:54:02
сначала спека - потом реализация

Oleg
14.03.2018
11:54:13

Daniel
14.03.2018
11:54:15

Alexander
14.03.2018
11:54:16
тип того
как-то тоже влажно мечтал о таком :)

Denis
14.03.2018
11:55:36

Google

Denis
14.03.2018
11:55:37
и

Oleg
14.03.2018
11:55:53
т.е. сначала пустотелый тип, описывающий дерево операций твоего сервиса

sherzod
14.03.2018
11:56:26

Alex
14.03.2018
11:56:57

sherzod
14.03.2018
11:57:21
чем типы не формальная спека?)

Alex
14.03.2018
11:57:45
в скале — слишком слабы, вообще — вполне себе формальная.

Denis
14.03.2018
11:58:35

sherzod
14.03.2018
11:59:24
ну получается вопрос не спеки а стандартов.

Admin
ERROR: S client not available

Oleg
14.03.2018
11:59:57
потом две независимые штуки - превратить его в akka http Route и в OpenApi
первая может неудасться когда -
1.а) Непонятно, какую в определённый момент привязать директиву к данному узлу твоей спеки (тут мы ищем Directive1
1.б) Нет метода в хэндлере, соответствующего данному листу дерева (тут наш макрос обходит внутренность объекта, связывает его с типом)
1.в) Непонятно, как превратить результат из метода в объявленный в спеке результат (тут мы конвертим монадки)
вторая может неудасться когда
2.а) Непонятно, как описать в сваггере данный узел твоей спеки
2.б) Непонятно, как описать в сваггере тип параметра\результата

Alex
14.03.2018
12:01:55
на безрыбье и сваггер сойдет, да.

Oleg
14.03.2018
12:02:28
а какую рыбу ты хотел бы видеть в качестве спеки для веб-сервиса?

Alex
14.03.2018
12:03:20
в идеальном мире я хотел бы видеть код с доказанными свойствами.

Oleg
14.03.2018
12:04:59
доказанными в спеке?
какие пропозишены в спеке для веб-сервиса ты хотел бы объявлять, чтобы доказывать их?
и самое главное, в каких формализмах?
какая версия теории типов\логики достаточно спеклась, чтобы можно было объявить её стандартом, который могло бы понять подавляющее большинство серверов и клиентов?

Vladimir
14.03.2018
12:10:58

Google

Alex
14.03.2018
12:11:43
Остальные вопросы — это хорошие вопросы)

Alexander
14.03.2018
12:12:00
Олег, а можешь показать пример такого описания рест апи? Ну на вашей либе

Oleg
14.03.2018
12:12:03

Andrey
14.03.2018
12:20:45

Oleg
14.03.2018
12:31:05
https://gist.github.com/Odomontois/8a33f359c2e580239c5b97143062562b

Alexander
14.03.2018
12:32:49
благодарю

Oleg
14.03.2018
12:36:14
это почти всё имплиситы
только 1.б макрос

Alexander
14.03.2018
12:36:48
?

Igor
14.03.2018
12:42:58
а какой апи для хедеров?

Oleg
14.03.2018
12:44:13
т.е. все хедеры как строки рассматриваем и уже конвертим своими имплиситами, без акковских фишек

Igor
14.03.2018
12:45:38
и в итоге, метод (хендлер) должен так же принимать этот параметр, верно?

Oleg
14.03.2018
12:46:03
не должен, но если хочет - ему передадут
если параметр объявлен, но в хендлере его нет - это не ошибка. Обратное - ошибка