42

setuptools を使用して Python プロジェクトを tarball に入れようとしています。問題は、setuptools が、ソース ツリーが最初にセットアップされた方法を気に入らないように見えることです (私によるものではありません。追加する必要があります)。実際に配布したいものはすべて、setuptools のドキュメントで説明されているようなサブディレクトリではなく、最上位のディレクトリにあります。

ツリーにはtests、リリースされたパッケージに含めたくないディレクトリ があります。ただし、 usingexclude_package_dataは実際には除外を行っていないようです。私が間違っていたことを解決したいと思います。

関連する部分で、私setup.pyはこのように見えます:

setup(
  name="project",
  packages=[''],
  include_package_data=True,
  exclude_package_data={'': ['tests']},
  test_suite='nose.collector',
)
4

7 に答える 7

31

パッケージから「テスト」を除外するには、次の規則を使用します。

setup(
   name="project",
   packages=find_packages(exclude=("tests",)),
   include_package_data=True, 
   test_suite='nose.collector',
)

また、MANIFEST.in を使用して、何を行うかをより適切に制御include_package_data=Trueします。

于 2012-03-19T11:59:20.953 に答える
1

同様の目的で、私の同僚が setuptools-dummy パッケージを作成しました: http://github.com/ella/setuptools-dummy/tree/master

setuptools_dummy を見て、必要に応じて除外を変更すると、機能するはずです。そうでない場合は、問題を開いてください;)

于 2009-06-16T10:33:39.850 に答える