--skip
был введен в стеке 1.6.1, чтобы избежать создания определенного компонента проекта.Компонент соответствует тестовому набору, исполняемому файлу или набору тестов.Поскольку поддержка рюкзака реализована, сюда также должны быть включены библиотеки.
С stack build --help
- пропустить ARG Пропустить указанный компонент, может быть указан несколько раз
В документах более подробно.
--skip
, чтобы пропустить компоненты сборки локального пакета.Он позволяет пропустить тестовые наборы и тесты без указания других компонентов (например, stack test --skip long-test-suite
будет запускать тесты без long-test-suite
набора тестов).Имейте в виду, что пропуск исполняемых файлов не будет работать при первой сборке пакета из-за проблемы в cabal .Эта опция может быть указана несколько раз, чтобы пропустить несколько компонентов.
Например, пакет my-package
может иметь библиотеку, исполняемый файл my-executable
и два набора тестов (unit-tests
и integration-tests
).Для построения и запуска тестов вы можете запустить stack test
.Добавление --skip integration-tests
приведет к тому, что компонент integration-tests
не будет собран (или запущен).
К сожалению, текущая версия стека (ветка 1.9) не поддерживает пропуск пикши для отдельных зависимостей, хотя есть что-токак это должно произойти в ближайшее время.Я столкнулся с точно такой же проблемой (с haskell-src-exts).На данный момент я предлагаю пропустить все зависимости от пикши (--no-haddock-deps
).
Вы можете вызвать пикшу с помощью stack exec -- haddock
, если хотите передать аргументы в пикшу, которые не работают с флагом стека --haddock-arguments
.