среда, 31 декабря 2014 г.

Проблема с обновлением cabal

Проблема: попытки обновить cabal не приводят к появлению более новой версии программы.

Изначально я проверил текущую версию cabal:

C:\Users\Андрей>cabal --version
cabal-install version 1.18.0.5
using version 1.18.1.3 of the Cabal library

Затем отправил запрос на проверку наличия более новой версии:

C:\Users\Андрей\Real>cabal update
Downloading the latest package list from hackage.haskell.org
Note: there is a new version of cabal-install available.
To upgrade, run: cabal install cabal-install

Как видим, более новая версия существует. Запускаю команду обновления до более свежей версии:

C:\Users\Андрей\Real>cabal install cabal-install
Resolving dependencies...
Notice: installing into a sandbox located at
C:\Users\Андрей\Real\.cabal-sandbox
Configuring cabal-install-1.20.0.6...
Building cabal-install-1.20.0.6...
Installed cabal-install-1.20.0.6

Смотрю номер обновлённой версии cabal:

C:\Users\Андрей>cabal --version
cabal-install version 1.18.0.5
using version 1.18.1.3 of the Cabal library

Как видим, ничего не изменилось - номер тот же, что и до обновления. Снова запускаю проверку наличия более новой версии:

C:\Users\Андрей\Real>cabal update
Downloading the latest package list from hackage.haskell.org
Note: there is a new version of cabal-install available.
To upgrade, run: cabal install cabal-install

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

В Интернете нашёл причину такого поведения и способ его исправления: нужно в системной переменной PATH прописать значение %AppData%\cabal\bin перед значением %PROGRAMFILES%\Haskell Platform\...\bin.

После внесения изменений в PATH я попытался выполнить обновление, но в процессе получил ошибки. Однако после этого версия cabal стала отображаться более новой и проверка обновлений стала показывать, что установлена последняя версия приложения:

PS C:\Users\Андрей> cabal --version
cabal-install version 1.20.0.6
using version 1.20.0.2 of the Cabal library
PS C:\Users\Андрей> cabal update
Downloading the latest package list from hackage.haskell.org
Skipping download: Local and remote files match.



Комментариев нет: