стек установки "План строительства не удалось", но почему? как исправить? - PullRequest
0 голосов
/ 05 июля 2019
$ stack install megaparsec-7.0.5

Error: While constructing the build plan, the following exceptions were encountered:

In the dependencies for megaparsec-7.0.5:
    parser-combinators-0.1.0 from stack configuration does not match >=1.0 && <2.0 (latest matching version is 1.1.0)
needed since megaparsec is a build target.

Some potential ways to resolve this:

  * Recommended action: try adding the following to your extra-deps in /Users/anentropic/.stack/global-project/stack.yaml:

- parser-combinators-1.1.0

  * Set 'allow-newer: true' to ignore all version constraints and build anyway.

  * You may also want to try using the 'stack solver' command.

Plan construction failed.

Терпите меня, я новичок в Haskell, пришедший из Python.

Формулировка этой ошибки и предложения, которые она делает, не кажутся очень полезными.

Если бы я догадался, что здесь не так, я думаю что это значит, когда говорится parser-combinators-0.1.0 from stack configuration, что у меня уже установлена ​​эта версия в моей среде?И для megaparsec-7.0.5 требуется версия >=1.0 && <2.0?

Я действительно не думаю, что добавление parser-combinators-1.1.0 в мой глобальный стек. Yaml extra-deps - это решение, которое я хочу.Это не похоже на правильное решение.Но, возможно, я ошибаюсь.

Что я действительно хочу сделать, так это обновить устаревшую версию зависимости до более новой версии, которую хочет megaparsec-7.0.5.(Ранее я установил более старую версию megaparsec).

Проверка справки по cli, команда stack install, похоже, имеет около ста различных вариантов, некоторые из которых включают копченую рыбу, но ни одна из них, очевидно, не позволила бы мнеобновить зависимости при установке мегапарсек.

Может быть, мне следует сначала удалить устаревший пакет?

Но stack uninstall help говорит:

УСТАРЕЛО: Эта команда не выполняет никакихдействия и присутствует только для документации

Итак ... как мне удалить пакеты вручную?

Является ли stack правильным инструментом, или у сообщества Haskell есть лучшие варианты?

...