
Alexander
15.08.2018
10:45:01
неа
а ещё у Никиты очень сложно либы внутри читать
но это принципиальный вопрос похоже

A64m
15.08.2018
11:18:54
а новый-то вообще допиливается, или этот проект помер давно?

Google

Alexander
15.08.2018
12:07:25
@vlastachu не в курсе?
Никита и в этом чате же есть, но я ник не помню

? animufag ?
15.08.2018
12:12:28
да я просто немного не понимаю ситуацию hasql вполне живой, пользуемся им, 23 дня назад последний комит - вроде можно считать живым
или есть отдельно пакет hasql-2?

Yuriy
15.08.2018
12:15:39

A64m
15.08.2018
12:19:22
речь про тот проект про который автор пару докладов в прошлом году делал
про нативный клиент, а не байндинги к сишной либе

Dmitry
15.08.2018
12:33:58

Dmitry
15.08.2018
12:55:40

Psy
15.08.2018
13:18:00

Nikita
15.08.2018
13:27:27

Alexander
15.08.2018
13:31:14
ну вот у меня вызывается "DELETE .. WHERE id =$1". Encoder верный, в функцию, что надо подаетс

Google

Alexander
15.08.2018
13:31:31
Private.* не экспортирован, а по гитхабу ползать так себе

Nikita
15.08.2018
13:32:52
Сериализация вынесена в отдельную либу: https://hackage.haskell.org/package/postgresql-binary

Alexander
15.08.2018
13:33:11
ага, спасибо
на самом деле очень странная фигня, я не представляю как такое могло случиться

Imants
15.08.2018
13:47:56
по теме сериализации через Generic & Binary (не по hasql):
есть ли разница в размере выходной байт строки, если сериализовать
data A = A { a::Integer, b::Integer }
или
data A = A Integer Integer
?

Nikita
15.08.2018
13:49:15

Imants
15.08.2018
13:50:07

Terminator
15.08.2018
14:00:26
@artemohanjanyan будет жить. Поприветствуем!

Alexander
15.08.2018
14:01:34
в SQL логах не больше информации
no operator matches the given name and argument type(s)
учитывая, что код не менялся полгода, это не случайное изменение или т.п.

Nikita
15.08.2018
14:08:42
https://github.com/nikita-volkov/hasql/blob/master/library/Hasql/Private/Session.hs#L46
Суть в том, что вот этот тип собирает все OID и прочую мета-фигню: https://github.com/nikita-volkov/hasql/blob/master/library/Hasql/Private/Encoders/Params.hs
Потом всё финализируется в типы, которые есть libpq

Alexander
15.08.2018
14:14:53
просто пока единственное объяснение(кроме того что кластер Гугла обстреляли нейтрино), это то что в билдере какой-то редкий баг
что у меня при сборке запроса не тот OID записан
самое тупое, что оно больше не воспроизводится
так что возможно я тупо посмотрю глазами код и забью

Google

A64m
15.08.2018
14:30:29
учитывая, что регулярно обнаруживаются баги в гхц https://git.haskell.org/ghc.git/commitdiff/fd7a7a6363d8dde1813bc23cb4ef00ebb70a49c0 вроде такого, тут и космические лучи не нужны
или в основных библиотеках вроде такого https://github.com/haskell/text/issues/197
байтстринговый баг с записью в один байтстринг я не помню как найти

Alexander
15.08.2018
15:19:26
он в релизе не был
в их коде написаны ссылки

? animufag ?
15.08.2018
16:11:20
крч есть вопрос
как мне сгенерить uuid? вроде system-uuid должен помочь но у меня типы не совпадают с Data.UUID из пакеты uuid

Alexander
15.08.2018
16:12:45
я в документации нажимаю на source
и читаю сырцы на хаддоке
и очень ругаюсь нехорошими словами на пакеты, которые мне это не позволяют
просто UUID же умеет V4

? animufag ?
15.08.2018
16:13:44
и читаю сырцы на хаддоке
ну да это кстати довольно продвинутая часть в хаскель инфраструктуре
нигде больше не видел чтобы генерились подсвеченые сорцы с ссылками

A64m
15.08.2018
16:14:00
да я просто качаю пакет и открываю каким-нибудь редактором, только с телефона хаддоки и надо смотреть, это боль и ужас

? animufag ?
15.08.2018
16:14:34

Alexander
15.08.2018
16:14:53

A64m
15.08.2018
16:15:37
такие доки-исходники со ссылками не для всего сгенерены

? animufag ?
15.08.2018
16:16:50
да и когда выкладывал пакет не особо видел как я влияю на эти доки

Alexander
15.08.2018
16:17:06
можно самому загрузить
а так хаддок сервер их билдит

Terminator
15.08.2018
16:53:42
@upsilon будет жить. Поприветствуем!

Google

Imants
15.08.2018
17:38:34

Leonid
15.08.2018
19:23:11
Хозяйке на заметку https://twitter.com/mattoflambda/status/1029732028512493568

Anatolii
15.08.2018
19:24:31

Kirill
15.08.2018
19:28:30
чот телеграм фмапы при цитировании твита сожрал

Sergey
15.08.2018
19:28:43

Combot
15.08.2018
19:28:44
Sergey Ivanov (1) увеличил репутацию λeonid Onokhov (1)

Admin
ERROR: S client not available

Marat
15.08.2018
19:54:37
/stat@combot

Combot
15.08.2018
19:54:38
combot.org/c/-1001043143583

Denis
15.08.2018
20:47:06
?

A64m
15.08.2018
21:27:13
я вчера не тем компилятором собирал, как оказалось, заметил сейчас когда решил с ORF сравнить, а ORF-то не компилируется, потому что 8.0.2
> Binary sizes are on the order of 100M, which is clearly absurd.
(новости компиляции хаскеля в вебасембли)
ну и комитетчики приняли https://github.com/ghc-proposals/ghc-proposals/pull/126

Denis
16.08.2018
07:35:52
линзовопрос
как (a ^. lens1, a ^. lens2, a ^. lens3)
записать через someOperation a (lens1, lens2, lens3)?
someOperation должен как-то делать это

A64m
16.08.2018
07:38:13
геттеры оборачиваются в какую-то обертку, для которой инстансы Applicative и Arrow есть, а дельше вроде понятно

Yuriy
16.08.2018
07:40:14
если только чтение, то вопрос сводится к обычным функциям

Denis
16.08.2018
07:43:33
(~&~) = liftA2 (>=>)
(1, 'a', 2) & (_1 ~&~ _3) %~ (*3)
но это немного не то

Aleksey
16.08.2018
08:27:35
если только гетать, то аппликатив + несколько view

IC
16.08.2018
09:25:19
скажите действующее на август 2018 заклинание чтобы собрать статический бинарь. по возможности без докера.

Google

IC
16.08.2018
09:25:52
от libc зависеть можно, от либ в где-то в хоме разработчика нет

Aleksey
16.08.2018
09:39:20
написать на go
(прости)
можно вроде линкеру сказать, что долинковать статически
--ghc-options=-optl-Wl,--whole-archive --ghc-options=-optl/.../libffi.a --ghc-options=-optl-Wl,--no-whole-archive я как-то так делал (давным давно)

IC
16.08.2018
09:57:11
долинковать то ладно.. оно даже сами пакеты не может собрать не убиваясь об -fPIC
libHS....so - вот этот бы мусор убрать
впрочем я согласен уже на заклинание чтобы переключить бинарь на относительные пути для либ

Aleksey
16.08.2018
10:02:24
Посмотри, как stack собирают

? animufag ?
16.08.2018
10:08:53
у меня в серванте есть 2 типа
query1 :<|> query2
и
query1 :<|> query2 :<|> query3
и я хотел сделать
type Api = ApiWithoutQuery3 :<|> query3
и всё ок до тех пор пока не начинаю описывать терм для Api
если записать с дублированием то всё ок, иначе говорит что не совпадают типы (и читать что там не совпадает сложновато
хотя казалось бы type ничего особо не вносит в тип
а хотя кажись доходит
он :<|> применяет к самому последнему типа из цепочки
arg ? arg2 ? Post ...
хмм тики не помогли


Yuriy
16.08.2018
10:18:04
от libc зависеть можно, от либ в где-то в хоме разработчика нет
по умолчанию программа зависит только от
linux-vdso.so.1 (0x00007ffcbc74b000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f6045b6b000)
libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f6045941000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f60455b3000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f6045396000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f6045177000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f6044f6f000)
libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f6044d6c000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f6044b68000)
libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f60448e7000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f60444f6000)
/lib64/ld-linux-x86-64.so.2 (0x00007f6045f09000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f60442de000)
этого недостаточно?


Leonid
16.08.2018
10:18:24

? animufag ?
16.08.2018
10:18:53
всё решил (хотя как обычно до того как написал было сложно)
скобки бы там не помогли какая разница
type Api = ...
или
type Api = (...)