6

私はsetup.pynamespace_packagesでなどを使用するPythonパッケージに取り組んでいます:find_packages()

from setuptools import setup, find_packages
setup(name="package",
    version="1.3.3.7",
    package=find_packages(),
    namespace_packages=['package'], ...)

アップストリーム コンポーネントのバンドルであるため、ソース管理には含まれていません。マニフェストはありません。

実行するpython setup.py sdistと、ディレクトリの下にあるほとんどのファイルの tarball が取得されますが、ファイルをpackage/含まないディレクトリ.pyは除外されます。

setup.pyビルドされたディストリビューションに含めるものと除外するもののデフォルトのルールは何ですか? MANIFEST.inwith を追加して問題を解決しました

recursive-include package *

setuptools と distutils がデフォルトで何をしているのかを理解したいと思います。

4

1 に答える 1

4

package_data ディレクティブを追加する必要があります。たとえば、拡張子が .txt または .rst のファイルを含める場合は、次のようにします。

from setuptools import setup, find_packages
setup(name="package",
    version="1.3.3.7",
    package=find_packages(),
    include_package_data=True,
    namespace_packages=['package'], 
     package_data = {
        # If any package contains *.txt or *.rst files, include them:
        '': ['*.txt', '*.rst']...

)
于 2009-05-21T18:22:38.213 に答える