
Yuriy
07.09.2018
08:30:45

Aleksey
07.09.2018
08:30:46
hoogle DB построенный по всему hackage, проиндексирует только свежие версии. hoogle на stackage индексирует снапшот. Это удобно для поиска по либам, которые использует проект, построенный на снапшоте же. Но в проектах бывают ещё и extra deps, поэтому локальный хугл по проекту будет единственно точным.

Alexander
07.09.2018
08:31:29
да ладно, если разрабатываешь, то все равно все исходники у тебя уже скачаны

Yuriy
07.09.2018
08:31:29

Google

Alexander
07.09.2018
08:31:32
для всех пакетов

Aleksey
07.09.2018
08:32:21
локальный hoogle умеет в интерактивный поиск с fuzzy matching, если что
Прямо в браузере

Iva
07.09.2018
08:33:16

Anton
07.09.2018
08:33:26
А как ставите локальный хугл для проекта?

Iva
07.09.2018
08:34:05
Хорошо, что в скале победил SBT и он единственное средство сборки проекта.

Aleksey
07.09.2018
08:34:34

Anton
07.09.2018
08:34:47
Не верю, не может быть так просто
пойду проверю

Alexander
07.09.2018
08:34:52
а с нормальной утилитой нету?

Dmitry
07.09.2018
08:34:54

Yuriy
07.09.2018
08:34:56

Alexander
07.09.2018
08:35:03
а то стек все портит чаще, чем собирает

Google

Aleksey
07.09.2018
08:35:06

Andrei
07.09.2018
08:35:30

Alexander
07.09.2018
08:35:37
в генте use=hoogle был, но для локального проекта это не удобно

Aleksey
07.09.2018
08:35:38

Iva
07.09.2018
08:35:41

Alexander
07.09.2018
08:35:56

Dmitry
07.09.2018
08:36:00
короче, IDE где всё из коробки нет. кому надо - тот вопрсо решает, кому не надо - страдает или идет дальше своей дорогой.

Aleksey
07.09.2018
08:36:18

Dmitry
07.09.2018
08:36:39

Alexander
07.09.2018
08:36:40
если бы оно просто работало,. то я бы не делал stack clean 2 раза в день

Yuriy
07.09.2018
08:36:55

Aleksey
07.09.2018
08:37:25

Andrei
07.09.2018
08:37:31

Alexander
07.09.2018
08:37:47
дальше то что

Dmitry
07.09.2018
08:37:50

Andrei
07.09.2018
08:37:50
другой вопрос, что это больше обёртка над intero

Anton
07.09.2018
08:37:59
потом stack hoogle --serve
conduit used in:
- PLIndex "conduit-1.2.13.1"
- PLIndex "conduit-1.3.0.3"
Надо только согласовать кондуиты

Alexander
07.09.2018
08:38:08
или ты это все разработчики?

Yuriy
07.09.2018
08:38:09

Google

Aleksey
07.09.2018
08:38:18
дальше то что
Это я к тому, что тут на stack принято набрасывать. Но мой опыт в основном положительный

Alexander
07.09.2018
08:38:26

Aleksey
07.09.2018
08:38:47
Ага. Вот я и радуюсь

Alexander
07.09.2018
08:39:38
тогда не мешай другим искать нормальное решение ;)
у меня пока опыт средний, стек все ещё остается удобной тулзой, но его уже скоро доломают
: (

Aleksey
07.09.2018
08:40:21
Я мешаю на любой stack-related вопрос отвечать "не используй stack для начала" :)

Alexander
07.09.2018
08:40:41
тут было 0 stack-related вопросов
я не писал, что stack не использовать
проф деформация? =)

Leonid
07.09.2018
08:41:12
ко-Моррис

Aleksey
07.09.2018
08:41:33

Alexander
07.09.2018
08:41:38
но, я буду всегда писать не используй стек, пока рядом будут люди говорящие, что только стек есть

Anton
07.09.2018
08:42:03
Я только что попал в stack hell, когда невозможно согласовать extra deps, чтобы hoogle завёлся

Alexander
07.09.2018
08:42:16
stack install cabal-install
stack exec sh

Anton
07.09.2018
08:42:41
nix-shell
cabal build
Но это тоже так себе решение, боль вручную версии выбирать из nixpkgs

Alexander
07.09.2018
08:43:21
кстати, отклоняясь от стека, вот чего в никсе делать, там с стек и кабал дурацкие

Google

Alexander
07.09.2018
08:43:58
curl http://stackage.org/<как-то линк для url>/cabal.freeze -O cabal.project.freeze

Anton
07.09.2018
08:44:12
Я под NixOS нормально стэком билжу, главное —nix добавлять

Alexander
07.09.2018
08:44:18
и там обертка в шеле projectFor
stack - негранулярный

A64m
07.09.2018
08:44:26
ну, у кабала интеграции с хуглом нету, надо будет самому какие-то скрипты костылить

Alexander
07.09.2018
08:44:42
все хаскель зависимости будут каждый раз собираться +- кривой кеш стека
да и сам пакет с нуля
никто из твоего билд-кеша не сможет зависимости скачать

Евгений
07.09.2018
08:45:17
А кто-нибудь пробовал кабал-инстолл из гита? Там вроде большую часть new-* проблем зафиксили

A64m
07.09.2018
08:45:23
(правда стек хугл у меня обычно работает работу пол дня, хотя все собрано уже, а потом на чем-нибудь ломается и так и не дорабатывает)

Alexander
07.09.2018
08:45:50
в итоге у меня nix + stack + stackage2nix

A64m
07.09.2018
08:45:54
но раз 5 мне индекс для локального проекта собрать таки удалось

Alexander
07.09.2018
08:46:02
разработка стеком, CI nix-ом
ну и можно локально тоже полностью никсом
но мне этот вариант не нравится

A64m
07.09.2018
08:46:26

Anton
07.09.2018
08:46:27
Это ещё более не гранулярно выходит

Alexander
07.09.2018
08:46:35
почему?

B. L.
07.09.2018
08:46:36

Index
07.09.2018
08:46:50

Google

Alexander
07.09.2018
08:46:55
гранулярность на уровне пакета

Index
07.09.2018
08:47:17
Не ждать же 3.0 релиз

Anton
07.09.2018
08:47:20
Вот это и боль, в окружение приходится перезаходить, если один из подпакетов проекта поменялся

Alexander
07.09.2018
08:47:42
CI не надо перезаходить

A64m
07.09.2018
08:47:50
(я тоже, но довольно давно уже, не знаю что там с ним сейчас)

Alexander
07.09.2018
08:48:02
единственное надо stackage2nix запускать перед пушем если что поменял
и nix/* раздувает сразу

B. L.
07.09.2018
08:48:27

Anton
07.09.2018
08:48:30
Хм, у нас вручную nix файлы прописаны

Alexander
07.09.2018
08:48:51
в общем когда разрабатываешь делаешь nix-shell и работаешь со стеком

Anton
07.09.2018
08:48:52
Она хотя бы не ребилдит весь пакет

Alexander
07.09.2018
08:49:03
перезайти надо если только shell.nix поменяешь
можно переключаться между ветками и т.п.

B. L.
07.09.2018
08:49:13
а, в этом смысле

Andrei
07.09.2018
08:49:20

Alexander
07.09.2018
08:49:27
если поменял зависимости, то stackage2nix прогнать
CI собирает минимум настолько же гранулярно как и стек

Anton
07.09.2018
08:50:05
А, т.е. в окружении все пакеты проекта

Alexander
07.09.2018
08:50:09
+ может лучше (т.к. не умирает все если -prof флаг добавить но стеку это не нужно)
да

Anton
07.09.2018
08:50:16
у нас в окружении только конкретный, над которым работаешь

A64m
07.09.2018
08:50:32
он же на интере? т.е. где-то с 1KLOC начинает тормозить как континентальный дрейф