私は、パッケージ自体を含むzipファイルとして配布するパッケージを作成しようとしています。残念ながら、少なくともvirtualenvから実行すると、zipには長いサブディレクトリが含まれます。setuptools:zipからlib/python3.5/site-packagesプレフィックスを削除します
.
├── my_package
│ └── __init__.py
├── README.md
└── setup.py
setup.pyが含まれています:これは、プロジェクトのファイル構造である
from setuptools import setup, find_packages
setup(
name='my_package',
version='1.0.0',
author='my name',
author_email='[email protected]',
packages=find_packages('.'),
data_files=[('my_package', ['README.md'])],
zip_safe=True,
)
私はpython setup.py bdist_dumb --format zip --relative
を実行すると、私は次のような出力を得る:あなたが見ることができるように
running bdist_dumb
running build
running build_py
creating build
creating build/lib
creating build/lib/my_package
copying my_package/__init__.py -> build/lib/my_package
installing to build/bdist.linux-x86_64/dumb
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/dumb
creating build/bdist.linux-x86_64/dumb/home
creating build/bdist.linux-x86_64/dumb/home/sybren
creating build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs
creating build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test
creating build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test/lib
creating build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test/lib/python3.5
creating build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test/lib/python3.5/site-packages
creating build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test/lib/python3.5/site-packages/my_package
copying build/lib/my_package/__init__.py -> build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test/lib/python3.5/site-packages/my_package
byte-compiling build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test/lib/python3.5/site-packages/my_package/__init__.py to __init__.cpython-35.pyc
running install_data
creating build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test/my_package
copying README.md -> build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test/my_package
running install_egg_info
running egg_info
creating my_package.egg-info
writing my_package.egg-info/PKG-INFO
writing dependency_links to my_package.egg-info/dependency_links.txt
writing top-level names to my_package.egg-info/top_level.txt
writing manifest file 'my_package.egg-info/SOURCES.txt'
reading manifest file 'my_package.egg-info/SOURCES.txt'
writing manifest file 'my_package.egg-info/SOURCES.txt'
Copying my_package.egg-info to build/bdist.linux-x86_64/dumb/home/sybren/.virtualenvs/packaging-test/lib/python3.5/site-packages/my_package-1.0.0-py3.5.egg-info
running install_scripts
creating /home/sybren/workspace/packaging-test/dist
creating '/home/sybren/workspace/packaging-test/dist/my_package-1.0.0.linux-x86_64.zip' and adding '.' to it
adding 'lib/python3.5/site-packages/my_package/__init__.py'
adding 'lib/python3.5/site-packages/my_package/__pycache__/__init__.cpython-35.pyc'
adding 'lib/python3.5/site-packages/my_package-1.0.0-py3.5.egg-info/dependency_links.txt'
adding 'lib/python3.5/site-packages/my_package-1.0.0-py3.5.egg-info/PKG-INFO'
adding 'lib/python3.5/site-packages/my_package-1.0.0-py3.5.egg-info/top_level.txt'
adding 'lib/python3.5/site-packages/my_package-1.0.0-py3.5.egg-info/SOURCES.txt'
adding 'lib/python3.5/site-packages/my_package-1.0.0-py3.5.egg-info/zip-safe'
adding 'my_package/README.md'
removing 'build/bdist.linux-x86_64/dumb' (and everything under it)
をそれはパッケージをlib/python3.5/site-packages
に入れます。これは嫌です。パッケージにmy_package/*
が含まれているようにしてください
私たちはmy_package*.egg-info/*
がパックされるのを防ぐことができればさらに良いが、私の主な質問は接頭辞lib/python3.5/site-packages
を取り除くことです。