5

内部setup.pyには次のようなものがあります。

setup_requires=['nose>=1.0'],
tests_require=[],

問題は、実行./setup.py testすると、これらのモジュールがダウンロードされ、ディレクトリに解凍されることsetup.pyです。

これに一時ディレクトリを使用するように説得するにはどうすればよいですか。これらでソース管理システムを汚染したくありません。また、大量の除外パターンを追加し始めたくありません。

4

2 に答える 2

1

問題がプロジェクトのソース ツリーにある場合は、セットアップ テストの最後に distutils によって作成されたすべての "dist" および "build" ディレクトリを削除するスクリプトを作成する必要があります。ダウンロードされたパッケージは通常、ソース ツリーの *.egg フォルダーです。

ディストリビューションを汚染していません。

setuptools のドキュメントから:

setup_requiresは、セットアップ スクリプトが実行されているシステムに自動的にインストールされません。ローカルでまだ利用できない場合は、単にセットアップ ディレクトリにダウンロードされます。それらをインストールし、セットアップ スクリプトの実行時に使用できるようにする場合は、それらを install_requires および setup_requires に追加する必要があります。)

tests_requireプロジェクトのテストで、インストールに必要なパッケージ以外に 1 つ以上の追加パッケージが必要な場合は、このオプションを使用してそれらを指定できます。パッケージのテストを実行するために存在する必要がある他のディストリビューションを指定する文字列または文字列のリストである必要があります。test コマンドを実行すると、setuptools はこれらを取得しようとします (EasyInstall を使用してそれらをダウンロードする場合でも)。これらの必要なプロジェクトは、テストが実行されるシステムにはインストールされず、ローカルにインストールされていない場合はプロジェクトのセットアップ ディレクトリにのみダウンロードされることに注意してください。

http://packages.python.org/distribute/setuptools.html

いくつかのパッケージをインストールしていて、それを削除する必要がある場合は、python ディストリビューションのサブフォルダー "site-packages" でパッケージを見つけて削除します。最後に、通常同じ「site-packages」ディレクトリにある easy-install.pth ファイルのパッケージ参照を削除します。

于 2012-05-22T14:16:50.797 に答える