haskellでhaddock作成時にエラーが起きます。
haskellでstackを使ってhaddockを出力時に
lensパッケージを削除すると
エラーが発生しなくなりました。
実行コマンド
$stack haddock .
発生している問題・エラーメッセージ
<stderr>: commitAndReleaseBuffer: invalid argument (invalid character) <stderr>: commitAndReleaseBuffer: invalid argument (invalid character) <stderr>: commitAndReleaseBuffer: invalid argument (invalid character)
該当のソースコード
Lib.hs
haskell
1module Lib where 2someFunc :: IO () 3someFunc = putStrLn "someFunc"
package.yaml
yaml
1dependencies: 2- base >= 4.7 && < 5 3- lens 4
stack.yaml
yaml
1resolver: 2 url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/17/10.yaml 3 4# User packages to be built. 5# Various formats can be used as shown in the example below. 6# 7# packages: 8# - some-directory 9# - https://example.com/foo/bar/baz-0.0.2.tar.gz 10# subdirs: 11# - auto-update 12# - wai 13packages: 14- .
試したこと
警告を抑制したらいいのかなと思って以下をしても問題解決せず
$stack haddock . --haddock-arguments "--optghc=-Wno-unused-imports" --open --ghc-options "-Wno-unused-imports"
補足情報(FW/ツールのバージョンなど)
環境
windows 10
$stack --version
Version 2.5.1, Git revision d6ab861544918185236cf826cb2028abb266d6d5 x86_64 hpack-0.33.0
stack.yaml の中身も載せてください。そうすれば使用しているGHCやhaddockのバージョンが分かるので。
本題と無関係なのでここに書きます。
stack.yamlのresolverの行ですが単に`resolver: lts-17.10` と書くだけで良いです。
ここのresolverのところですね。
https://docs.haskellstack.org/en/v1.0.2/yaml_configuration/#resolver
特に今は触るつもりはなかったので、デフォルトのままの設定にしてました。
なるほど。しばらく新しいプロジェクトを作っていなかったので気づいてませんでしたが、今はstack newやstack initしたときのデフォルトがそうなってるんですね!
回答3件
あなたの回答
tips
プレビュー