Cabal - как установить конкретную версию пакета

Мне нужна, например, второстепенная версия пакета, например, persist-postgresql .. или hdbc-mysql или что-то еще.

Если я побегу

cabal install persistent-postgresql

он установит persist-postgresql версии 1.3, а затем я получаю сообщение об ошибке «Отсутствуют по крайней мере следующие зависимости: persist-postgresql >= 1.2 && ‹ 1.3». Вот почему я хотел бы установить более раннюю версию этого пакета, чтобы он работал. . Или может есть другое решение?

Заранее спасибо.


person Steffi    schedule 07.01.2014    source источник
comment
Для подобных вопросов вы можете начать с просмотра cabal --help или, точнее, cabal install --help. В этом случае вам даже не пришлось бы просматривать все варианты, потому что короткий раздел «Примеры» в конце показывает, как установить конкретную версию.   -  person raymonad    schedule 07.01.2014


Ответы (1)


Вам, вероятно, следует попытаться установить пакет, который на самом деле зависит от persistent-postgresql, так как cabal затем попытается выбрать правильную версию автоматически.

Однако, если вам нужно это сделать, есть простой способ:

cabal install persistent-postgresql-1.2.1.3

Или сложнее:

cabal install persistent-postgresql --constraint 'persistent-postgresql < 1.3'

Здесь вы можете просто продолжать указывать, что вам нужно что-то более раннее, чем конкретная версия, поскольку вещи не работают без необходимости знать точную следующую версию. При необходимости вы также можете наложить ограничения на другие пакеты.

person GS - Apologise to Monica    schedule 07.01.2014