最近、パッケージのHSpecファイルがハッキングtarfileから欠落しているという問題レポートを受け取りましたが、これは私にはかなり奇妙に思えました。
私はそれをチェックアウトしました、そしてユーザーは正しかったです:
% curl -O http://hackage.haskell.org/packages/archive/ReadArgs/1.2/ReadArgs-1.2.tar.gz
% tar tzf ReadArgs-1.2.tar.gz
ReadArgs-1.2/
ReadArgs-1.2/LICENSE
ReadArgs-1.2/ReadArgs.cabal
ReadArgs-1.2/ReadArgs.hs
ReadArgs-1.2/ReadArgsEx.hs
ReadArgs-1.2/Setup.hs
ただし、私のgitリポジトリのすべてのコミットを実行すると、cabal sdist
常にReadArgsSpec.hs
パッケージに含まれているようです。
% cabal configure
Resolving dependencies...
Configuring ReadArgs-1.2...
% cabal sdist
Building source dist for ReadArgs-1.2...
Preprocessing library ReadArgs-1.2...
Preprocessing executable 'ReadArgsEx' for ReadArgs-1.2...
Source tarball created: dist/ReadArgs-1.2.tar.gz
% tar tzf dist/ReadArgs-1.2.tar.gz
ReadArgs-1.2/
ReadArgs-1.2/LICENSE
ReadArgs-1.2/ReadArgs.cabal
ReadArgs-1.2/ReadArgs.hs
ReadArgs-1.2/ReadArgsEx.hs
ReadArgs-1.2/ReadArgsSpec.hs
ReadArgs-1.2/Setup.hs
だから今、私は3つの可能性を考えることができます:
- 以外のものを使用してhackageにアップロードしたtarfileを生成しましたが
cabal sdist
、そのプロセスは省略されましたReadArgsSpec.hs
。 ReadArgs.cabal
実行する前にファイルを変更して、変更cabal sdist
を除外するようにしましReadArgsSpec.hs
たが、変更をコミットできませんでした。ReadArgsSpec.hs
パッケージファイルからハッキングが削除されました。
私は(1)と(2)を可能な限り見ていますが、特に私のパッケージの以前の2つのバージョンで同じ問題が発生しているようで、毎回同じ奇妙な動作をしたとは思えないため、ありそうにありません。
これは私に(3)を残しますが、これは対照的である可能性が高いようです。ReadArgsSpec.hs
アップロードしたtarfileからHackageが削除されていますか?もしそうなら、ファイルが含まれていることを確認するためにReadArgs.cabal
ファイルをどのように変更する必要がありますか?