неправильная и непонятная зависимость добавлена ​​стековым решателем - PullRequest
0 голосов
/ 01 сентября 2018

У меня большой и сложный пакет, который компилируется на двух компьютерах, но не на третьем (файлы перемещаются с помощью zip и scp). Сообщение об ошибке

In the dependencies for leksah-0.17.0.0:
    process-1.4.2.0 from stack configuration does not match >=1.4.3.0 && <1.7
                    (latest matching version is 1.6.4.0)
needed since leksah is a build target.

Я не могу найти источник процесса 1.4.2.0. Его нет ни в резолвере lts 9.9 (он дает процесс-1.4.3.0 библиотеки процессов), ни в файле cabal для лексах. Где еще мне посмотреть? (У меня есть точное совпадение в конфиге).

stack.yaml из global-проекта -

flags: {}
extra-package-dbs: []
packages: []
extra-deps: []
resolver: lts-10.4

config.yaml содержит (кроме шаблонов) только compiler-check: match-exact.

проект stack.yaml равен

resolver: lts-9.9
packages:
- '.'
- 'vendor/leksah-server'
- 'vendor/ltk'
- 'vendor/haskellVCSGUI/vcsgui'
#- 'vendor/yi'
- 'vendor/haskellVCSWrapper/vcswrapper'

# Dependency packages to be pulled from upstream that are not in the resolver
# (e.g., acme-missiles-0.3)
extra-deps:
- binary-shared-0.8.3
- haddock-api-2.17.4
- haskell-gi-overloading-0.0
- gi-gtk-hs-0.3.5.0
- gi-gtksource-3.0.15
- gi-javascriptcore-4.0.14
- gi-soup-2.4.14
- gi-webkit2-4.0.14
- gi-gdk-3.0.14
- gi-gdkpixbuf-2.0.14
- gi-glib-2.0.14
- gi-gobject-2.0.14
- gi-gtk-3.0.17
- gi-cairo-1.0.14
- gi-gio-2.0.14
- gi-pango-1.0.15
- gi-atk-2.0.14
- gi-gtkosxapplication-2.0.14

# Override default flag values for local packages and extra-deps
flags:
  gi-atk:
    enable-overloading: false
  gi-cairo:
    enable-overloading: false
  gi-gdk:
    enable-overloading: false
  gi-gdkpixbuf:
    enable-overloading: false
  gi-gio:
    enable-overloading: false
  gi-glib:
    enable-overloading: false
  gi-gobject:
    enable-overloading: false
  gi-gtk:
    enable-overloading: false
  gi-gtk-hs:
    enable-overloading: false
  gi-gtksource:
    enable-overloading: false
  gi-javascriptcore:
    enable-overloading: false
  gi-pango:
    enable-overloading: false
  gi-soup:
    enable-overloading: false
  gi-webkit2:
    enable-overloading: false
  gi-gtkosxapplication:
    enable-overloading: false

# Extra package databases containing global packages
extra-package-dbs: []

файлы cabal содержат (первый относится к проекту, остальные находятся в пакетах) - ни один из них не запрашивает process-1.4.2.0

   process >=1.4.3.0 && <1.7,
    process >= 1.0.1.1,
    process >=1.0.1.5 && <1.7,
    process >=1.0.1.5 && <1.7,
    process >=1.0.1.5 && <1.7,
    process >=1.0.1.5 && <1.7,
    process >=1.0.1.5 && <1.7,
    process >=1.1 && <1.7,
    process >=1.1 && <1.7,
    process >=1.1 && <1.7,
    process >=1.1 && <1.7,

добавление process-1.4.3.0 к дополнительным командам разрешает требования - но ПОЧЕМУ ЭТО НЕОБХОДИМО? это в 9,9! - Как и ожидалось, он не компилируется - должны быть другие пакеты, не выбранные так же, как на другом компьютере.

...