Size: a a a

Scala User Group

2020 February 14

AV

Abyr Valg in Scala User Group
Nikita Melkozerov
Откуда мне знать? Наверное имеет смысл такой таймаут который покрывает N-ный процент всех возможных задержек репликации из Кафки в посгрес
ну вот, ткнулись в фундаменталочку
источник

DM

Daniel Matveev in Scala User Group
да ничего
а вот решение выглядит не как решение, а предтеча задачи вынесенной на несколько разных систем распределенщины
источник

AV

Abyr Valg in Scala User Group
Nikita Melkozerov
Что не так с таймаутом?
Их невозможно выбрать "правильно"
источник

AV

Abyr Valg in Scala User Group
Oleksandr Olgashko
def foo: Foo[VeryLongTypeName1, VeryLongTypeName2]
type ShortType = VeryLongTypeName1, VeryLongTypeName2 // doesn't compile
def foo2: Foo[ShortType]
foo === foo2
скажите, можно ли сделать вот такой ShortType алиас?
Нет
источник

AV

Abyr Valg in Scala User Group
Oleksandr Olgashko
def foo: Foo[VeryLongTypeName1, VeryLongTypeName2]
type ShortType = VeryLongTypeName1, VeryLongTypeName2 // doesn't compile
def foo2: Foo[ShortType]
foo === foo2
скажите, можно ли сделать вот такой ShortType алиас?
Но можно достичь похожего эффекта
источник

OO

Oleksandr Olgashko in Scala User Group
Abyr Valg
Но можно достичь похожего эффекта
хотелка — сделать тип читаемым путем введения алиаса
источник

OO

Oleksandr Olgashko in Scala User Group
просто сделать 2 коротких алиаса на длинные типы — туповато
источник

λ

λλ in Scala User Group
Oleksandr Olgashko
def foo: Foo[VeryLongTypeName1, VeryLongTypeName2]
type ShortType = VeryLongTypeName1, VeryLongTypeName2 // doesn't compile
def foo2: Foo[ShortType]
foo === foo2
скажите, можно ли сделать вот такой ShortType алиас?
trait Foo {
       type X = VeryLongTypeName1
       type Y = VeryLongTypeName2
     }

     case class Foo0[A, B]()
     
     def foo(foo: Foo): Foo0[foo.X, foo.Y] = ???
источник

AV

Abyr Valg in Scala User Group
Он хочет один параметр в два распаковать
источник

OO

Oleksandr Olgashko in Scala User Group
λλ
trait Foo {
       type X = VeryLongTypeName1
       type Y = VeryLongTypeName2
     }

     case class Foo0[A, B]()
     
     def foo(foo: Foo): Foo0[foo.X, foo.Y] = ???
хз, теряется смысл, читать еще хуже
в моем коде у пары [VeryLongTypeName1, VeryLongTypeName2] _вместе_ есть определенное значение, и вот его бы хотелось вынести в одноместный алиас
источник

OO

Oleksandr Olgashko in Scala User Group
Abyr Valg
Но можно достичь похожего эффекта
и как?
источник

AV

Abyr Valg in Scala User Group
ну вон тебе пример с тайпмемберами. сделай алиас Type k[a <: foo] = foo0[a.x, a.y]
источник

λ

λλ in Scala User Group
да типо того
источник

OO

Oleksandr Olgashko in Scala User Group
мм, там ниже еще есть
def bar: Bar[VeryLongTypeName1, VeryLongTypeName2]
def baz: Baz[VeryLongTypeName1, VeryLongTypeName2]
источник

OO

Oleksandr Olgashko in Scala User Group
то есть добавлять Foo в алиас нельзя
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Попробовал использовать tofu-logging, но очень сложно, документации нет.
Интуиция подсказывает, что либа очень хорошая, но как же её использовать?
Может кто-то написать доки?
источник

DM

Daniel Matveev in Scala User Group
Oleg ℕizhnik
Попробовал использовать tofu-logging, но очень сложно, документации нет.
Интуиция подсказывает, что либа очень хорошая, но как же её использовать?
Может кто-то написать доки?
проще использовать логинг от 7minds, все что надо есть и дока тоже
источник

DS

Danieλ Sλapman in Scala User Group
Daniel Matveev
проще использовать логинг от 7minds, все что надо есть и дока тоже
слышал, что они и DI сделали
источник

λ

λλ in Scala User Group
пацаны а как fallBack накрутить на enumeratum circe если кодек для типа не находит по ентринейму ?
источник

DM

Daniel Matveev in Scala User Group
Danieλ Sλapman
слышал, что они и DI сделали
были отзывы, что пара контор втащила себе и вполне довольны
источник