Ответ 1
Итак, у вас есть проект, в котором вы хотите использовать локально исправленную версию Netwire, и в вашем проекте у вас есть stack.yml
в качестве примера:
flags: {}
packages:
- '.'
extra-deps: {}
resolver: lts-3.7
У вас также есть зависимость от netwire
, объявленная в вашем файле кэша.
Чтобы использовать исправленную Netwire в этом проекте, вы просто помещаете исправленный пакет Netwire в подкаталог вашего проекта, возможно, называемый netwire
, и обновляете свой stack.yml
как таковой:
flags: {}
packages:
- '.'
- netwire
extra-deps: {}
resolver: lts-3.7
Теперь stack build
построит ваш проект с исправленной версией Netwire.
Вы также можете поместить измененный источник онлайн (если лицензия разрешает) и ссылаться на источник, используя либо URL-адрес tarball
- https://example.com/netwire.tar.gz
или репозиторий git и фиксация:
- location:
git: [email protected]/netwire
commit: 6a86ee32e5b869a877151f74064572225e1a0398
(Посмотрите документацию для получения дополнительной информации: https://docs.haskellstack.org/en/stable/yaml_configuration/#packages-and-extra-deps)