`stack haddock --skip <pkgname>` 有什么作用?
What does `stack haddock --skip <pkgname>` do?
在我的项目无法 运行 stack haddock
因为一个包导致它挂起后(参见 How to show progress of `stack haddock`? )我试图 skip那个包裹
stack haddock --skip haskell-src-exts
但它仍然会尝试黑线鳕 haskell-src-exts
(并挂起)。 --skip
应该做什么?
--skip
是在 stack 1.6.1 中引入的,以避免构建项目的特定组件。一个组件对应于一个测试套件、一个可执行文件或一个基准测试套件。随着背包支持的实施,这也必须包括图书馆。
来自stack build --help
--skip ARG Skip given component, can be specified multiple times
文档更详细。
--skip
, to skip building components of a local package. It allows
you to skip test suites and benchmark without specifying other components
(e.g. stack test --skip long-test-suite
will run the tests without the
long-test-suite
test suite). Be aware that skipping executables won't work
the first time the package is built due to
an issue in cabal.
This option can be specified multiple times to skip multiple components.
例如,一个包 my-package
可能有一个库、一个可执行文件 my-executable
和两个测试套件(unit-tests
和 integration-tests
)。要构建和 运行 测试,您可以 运行 stack test
。添加 --skip integration-tests
将导致无法构建 integration-tests
组件(也不构建 运行)。
不幸的是,当前版本的 stack(1.9 分支)不支持针对单个依赖项跳过黑线鳕,尽管在不久的将来会有类似的东西。我遇到了这个完全相同的问题(haskell-src-exts)。现在,我建议跳过所有黑线鳕依赖项 (--no-haddock-deps
)。
如果您希望将参数传递给黑线鳕,而这些参数不适用于堆栈标志 --haddock-arguments
.
,您可能希望使用 stack exec -- haddock
调用黑线鳕
在我的项目无法 运行 stack haddock
因为一个包导致它挂起后(参见 How to show progress of `stack haddock`? )我试图 skip那个包裹
stack haddock --skip haskell-src-exts
但它仍然会尝试黑线鳕 haskell-src-exts
(并挂起)。 --skip
应该做什么?
--skip
是在 stack 1.6.1 中引入的,以避免构建项目的特定组件。一个组件对应于一个测试套件、一个可执行文件或一个基准测试套件。随着背包支持的实施,这也必须包括图书馆。
来自stack build --help
--skip ARG Skip given component, can be specified multiple times
文档更详细。
--skip
, to skip building components of a local package. It allows you to skip test suites and benchmark without specifying other components (e.g.stack test --skip long-test-suite
will run the tests without thelong-test-suite
test suite). Be aware that skipping executables won't work the first time the package is built due to an issue in cabal. This option can be specified multiple times to skip multiple components.
例如,一个包 my-package
可能有一个库、一个可执行文件 my-executable
和两个测试套件(unit-tests
和 integration-tests
)。要构建和 运行 测试,您可以 运行 stack test
。添加 --skip integration-tests
将导致无法构建 integration-tests
组件(也不构建 运行)。
不幸的是,当前版本的 stack(1.9 分支)不支持针对单个依赖项跳过黑线鳕,尽管在不久的将来会有类似的东西。我遇到了这个完全相同的问题(haskell-src-exts)。现在,我建议跳过所有黑线鳕依赖项 (--no-haddock-deps
)。
如果您希望将参数传递给黑线鳕,而这些参数不适用于堆栈标志 --haddock-arguments
.
stack exec -- haddock
调用黑线鳕