@scala_ru

Страница 1441 из 1499
Daniel
28.04.2018
14:01:53
Не, твою не пробовал

Если ты считаешь, что будет лучше, могу попробовать

Alexander
28.04.2018
14:03:09
Oleg
28.04.2018
14:03:33
началось

Google
Oleg
28.04.2018
14:04:38
Господа проходил мимо, и не в курсе обсуждаемого, не соблаговолите ли провести вводную презентацию.

Mikhail
28.04.2018
14:05:15
Если ты считаешь, что будет лучше, могу попробовать
Если будет возможность - попробуй) Там кода на порядки меньше чем каролс.

Alexander
28.04.2018
14:05:22
/toxic

Daniel
28.04.2018
14:05:24
6 гигов оперативки и амд А6 проц

Oleg
28.04.2018
14:05:58
/chpoxic

Mikhail
28.04.2018
14:06:00
Господа проходил мимо, и не в курсе обсуждаемого, не соблаговолите ли провести вводную презентацию.
Просто очередной засланый казачок, чтобы попиарить https://github.com/rudogma/scala-supertagged

можно пример?
В гисте же) https://gist.github.com/rudogma/58f330db4a9c79f56f968587b49d9f1d

Alexander
28.04.2018
14:07:19
гист видел, втыкать в 300 строк лень

это Олегу можно, он робот

Mikhail
28.04.2018
14:09:21
6 гигов оперативки и амд А6 проц
оперативки конечно совсем уж мало. проц хз какая частота, но на 8гиг и 2.6гц i5 - я на суперкванты не жаловался

гист видел, втыкать в 300 строк лень
300 и не надо) я всегда акцентирую внимание на тех блоках, которым надо уделить внимание. там первые пару десятков - без всякой магии - просто код для примера (и перед ними в комментарии уазано какие строчки изменены по сравнению с супертаггет) - дальше superduper - просто копипаста супертаггет с парой измененных строк

чтобы можно было вставить и скомпилировать норм

Oleg
28.04.2018
14:15:10
гист видел, втыкать в 300 строк лень
ну сделал ты например (псевдоскала opaque type Time = Long и есть у тебя что-то типа implicit class TimeOps(val time: Time) extends AnyVal{ def plusSeconds(seconds: Int): Time = ... т.е. методы твоего ньютайпа, не можешь же ты их в тайпалиасе объявить и нужно, чтобы вот тот implicit def TimeOps подтягивался компилятором без дополнительных импортов, т.е. ему достаточно увидеть экземплятр Time, чтобы найти его методы

Google
Oleg
28.04.2018
14:18:35
Если это работает на TaggedType, то круто. У нас везде тайп тэги, импорты с имплиситами неприятны.
Мне тайптеги (которые подтип незатеганного) не очень интересны Мне интересна та вариация, которая newtype, т.е. которая никаким субтайпингом с подврапленным типом не связана

Mikhail
28.04.2018
14:18:49
Если это работает на TaggedType, то круто. У нас везде тайп тэги, импорты с имплиситами неприятны.
на таггеттайп это и так работало. с ньютайпами это не работало, я добавил в чейн мульку - чтобы и в них работало

Alexandr
28.04.2018
15:00:18
Кто работает с quill - как там указать тип возвращаемого значения IO[MyResult, _], не таская за собой постоянно контекст?

Аналогично как я могу импортировать ConnectionIO в doobie или DBIO в slick без привязки к конкретному контексту\профилю\драйверу

Oleg
28.04.2018
15:12:07
Не отвечу, но потоксифицирую. Ты решил от СУБД абстрагироваться?

Alexandr
28.04.2018
15:13:56
Да. С doobie и slick это очень легко, а в quill все как-будто гвоздями прибито к контексту

Daniel
28.04.2018
15:19:39
Да. С doobie и slick это очень легко, а в quill все как-будто гвоздями прибито к контексту
Почему как будто. Вполне себе намертво. Раз в два месяца подымается этот вопрос. Фабио игнорит всё.

Oleg
28.04.2018
15:20:43
ну там же разный SQL у разных СУБД

Daniel
28.04.2018
15:33:15
На самом деле вопрос глубже. Все эти либы для конвертации в sql по сути своей транспайлеры. Но ни одна не пытается подойти хоть как-то формально. Хотя и стандарт есть на скуль и диалекты описаны в доках тоже хорошо как правило. В итоге это все словно на коленках сделано.

Daniel
28.04.2018
15:34:35
Grigory
28.04.2018
17:07:55
Json patch
да может он хочет гонок избежать я хз в чем вопрос у него на самом деле

какой вопрос такие и ответы

Nikolay
28.04.2018
17:10:04
он просто в понве не задал вопрос - там бы разобрались и помогли человеку

Nikolay
28.04.2018
17:23:01
слушайте, а можно в слике такое изобразить через обычные запросы? select * from foo where (a,b) > (2,9)

Google
Nikolay
28.04.2018
17:23:14
я не могу filter по паре сделать

то есть table.filter(r => (r.a, r.b) > (2, 9)) = не катит

Alexandr
28.04.2018
17:29:47
Ему, наверное mapper в sql тип для Tuple2 нужен

Nikolay
28.04.2018
17:31:32
да, судя по всему самому нужно написать его

я просто надеялся что в слике он есть

Alexandr
28.04.2018
17:32:44
Вот что-то похожее https://ru-scala.livejournal.com/65410.html?thread=564866#t564866

Nikolay
28.04.2018
17:35:12
спасибо, похоже на то что мне нужно

работает, только я не понимаю почему ??? в ProdJdbcType не ведут к падению в рантайме

Diemust
28.04.2018
17:53:36
то есть table.filter(r => (r.a, r.b) > (2, 9)) = не катит
А просто два раза фильтр почему бы не написать? Или это в научных целях прост?

Nikolay
28.04.2018
17:54:38
так два фильтра будут по другому работать

попробуйте сами

OlegYch
28.04.2018
17:55:08
a > 2 || (a == 2 && b > 9)

OlegYch
28.04.2018
17:55:21
для больше двух заколебешься имхо

Nikolay
28.04.2018
17:55:48
а, можно и так

Alexandr
28.04.2018
17:55:50
работает, только я не понимаю почему ??? в ProdJdbcType не ведут к падению в рантайме
Вроде этот метод используется только при установке того или иного параметра в null

Nikolay
28.04.2018
17:59:47
А просто два раза фильтр почему бы не написать? Или это в научных целях прост?
лучше так, мне еще in потом нужен будет. с двумя фильтрами его не очень изображать

OlegYch
28.04.2018
18:01:08
може как-то так лучше https://github.com/tminglei/slick-pg/blob/master/src/test/scala/com/github/tminglei/slickpg/PgCompositeSupportSuite.scala

Ilya
28.04.2018
20:30:12
пацаны, по котам вопрос банальный пример не компилится с 1.x, а с 0.9.0 - норм import cats.data.Reader import cats.syntax.applicative._ type MyReader[A] = Reader[String, A] false.pure[MyReader]ошибка ambiguous implicit values, целиком - тут https://gist.github.com/ilya-murzinov/8c2fc8d513365331b468b0776cc82949

если поменять Reader на Kleisli то компилится, хотя это и так одно и то же это баг какой-то?

Google
Sergey
28.04.2018
20:39:59
в scalacOptions

Nick
28.04.2018
20:40:35
+1

https://scastie.scala-lang.org/VZeKrgCMRG6IA8cv3HxcTw

Ilya
28.04.2018
20:40:58
тьфу спс

Daniel
28.04.2018
20:54:13
где-то уже есть вмердженный пр, чтобы включить по дефолту

Alexander
28.04.2018
22:03:26
в 2.12.6 разве не вошло?

Aleksey
29.04.2018
10:34:00
Скаланы! Приходите сегодня на прямой эфир скалалаз-подкаста. https://www.youtube.com/watch?v=L7-l2zCe10U

Admin
ERROR: S client not available

Wystan
29.04.2018
12:30:15
Господа, а как в akka-http избавить от No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. The response had HTTP status code 502.

Wystan
29.04.2018
12:45:56
Ок, спасибо. Думал чо без дополнительной либы есть.

Sergey
29.04.2018
12:48:03
в nginx воткнуть корс в конфиге

или не в nginx

Wystan
29.04.2018
13:12:54
в nginx воткнуть корс в конфиге
А как в nginx это присунуть?

Ну вроде эта библиотечка заработала. Не понимаю все равно, в чем польза от этих cors фильтров, если у меня SPA

Sergey
29.04.2018
13:19:15
А как в nginx это присунуть?
как-то так. если стучишься с google.com: server { location /whatever { if ($http_origin ~* (.*\.google.com)) { set $cors "1"; } # OPTIONS indicates a CORS pre-flight request if ($request_method = 'OPTIONS') { set $cors "${cors}o"; } if ($cors = "1") { more_set_headers "Access-Control-Allow-Origin: $http_origin"; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE, PUT' always; add_header 'Access-Control-Allow-Credentials' 'true' always; add_header 'Access-Control-Allow-Headers' 'User-Agent,Keep-Alive,Content-Type,Authorization,Origin,Accept,Refresh-Token' always; add_header 'Access-Control-Expose-Headers' 'Authorization,Set-Authorization,Set-Refresh-Token' always; } if ($cors = "1o") { add_header 'Access-Control-Allow-Origin' "$http_origin"; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE, PUT'; add_header 'Access-Control-Allow-Headers' 'User-Agent,Keep-Alive,Content-Type,Authorization,Origin,Accept'; return 204; } } }

там много лишнего, в Access-Control-Allow-Headers

Wystan
29.04.2018
13:24:07
Хм, спасибо! Когда-нибудь эта война закончится и я пойму зачем вся эта кухня нужна.

Mikhail
29.04.2018
13:32:36
Хм, спасибо! Когда-нибудь эта война закончится и я пойму зачем вся эта кухня нужна.
Борьба с определенным вектором атак на клиентской стороне по взаимной договоренности с добропорядочными браузерами, которыми пользуется большинство.

Alexander
29.04.2018
14:06:20
кто-нибудь в курсе что с трансляцией на 17 00 ?

Google
Oli
29.04.2018
14:11:54
мы немного задерживаемся

Aleksey
29.04.2018
14:23:40
начали трансляцию!

Nikita
29.04.2018
18:43:30
Скаланы, а кто как добивается маленьких зедержек в построении Read Model, именно в части где мы типа подписываемся на стрим событий. Просто если смотреть на акка персистенс с кассандрой и query by persistence id с поллингом, то выглядит не самым оптимальным вариантом

Nikita
29.04.2018
18:53:01
eventsByTag?

я скоро закончу пилить akka-persistence-foundationdb, вот там будет low-latency для read model

Александр
29.04.2018
18:56:13
И на GitHub?

Nikita
29.04.2018
19:00:12
и туда тоже

Denis
29.04.2018
19:33:19
Мы слезаем на собственный журнал и собственную реализацию eventsourced актора

Журнал на дуби + кластер постгреса из 3х нод с репликацией sync any 2

Если eventsByTag не через костыли то вообще офигенно

Прорекламирую aecor.io

Denis
29.04.2018
19:37:46
А доклад будет?
На осеннем митапе может быть вполне. Сначала проверим продакшеном

Nikita
29.04.2018
19:38:52
Он еще ивенты пропускает иногда ) вообще кайф
Да я видел ишуи) и сами проблемы тоже, но вроде query by persistence id этим не страдала, просто другая проблема если много этих айди, то много кверей

Nikita
29.04.2018
19:41:25
Звучит интересно, а на кафке почему не стали?
кафка не любит много партишнов

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