def setup(cls) -> None:
"""Run setuptools.setup() with correct arguments."""
setuptools.setup(
name=cls.name, version=find_version(cls.name), description=cls.description,
long_description=parse_readme(), url=cls.url, download_url=cls.download_url,
author=cls.author, author_email=cls.author_email,
maintainer=cls.try_fields('maintainer', 'author'),
maintainer_email=cls.try_fields('maintainer_email', 'author_email'),
license=cls.license_str, classifiers=cls.classifiers, keywords=cls.keywords,
packages=find_packages(cls.root_directory), package_dir={'': cls.root_directory},
include_package_data=True,
package_data=cls.package_data, exclude_package_data=cls.exclude_package_data,
install_requires=parse_requirements(), extras_require=cls.extras_require,
python_requires=find_required_python_version(cls.classifiers),
entry_points=cls.entry_points, test_suite=cls.test_suite
)
python类find_packages()的实例源码
def main():
base_dir = dirname(__file__)
install_requires = open('requirements.txt').read().splitlines()
with open('hashdd/version', 'r', encoding='utf-8') as config_py:
version = re.search(r'^\s+__version__\s*=\s*[\'"]([^\'"]*)[\'"]', config_py.read(), re.MULTILINE).group(1)
setup(
name='hashdd',
version=version,
description='Official hashdd Python SDK',
long_description=open(join(base_dir, 'README.md'), encoding='utf-8').read(),
author='hashdd',
url='https://www.hashdd.com',
packages=find_packages(exclude=['bin', 'docs', 'libs']),
package_data={ 'hashdd': copy_libs() },
#zip_safe=False,
scripts=['bin/hashdd'],
install_requires=install_requires,
classifiers=CLASSIFIERS,
keywords=['hashdd', 'pyhashdd', 'hash database'],
license=open('LICENSE').read()
)
def _parse_packages(self, value):
"""Parses `packages` option value.
:param value:
:rtype: list
"""
find_directive = 'find:'
if not value.startswith(find_directive):
return self._parse_list(value)
# Read function arguments from a dedicated section.
find_kwargs = self.parse_section_packages__find(
self.sections.get('packages.find', {}))
from setuptools import find_packages
return find_packages(**find_kwargs)
def _parse_packages(self, value):
"""Parses `packages` option value.
:param value:
:rtype: list
"""
find_directive = 'find:'
if not value.startswith(find_directive):
return self._parse_list(value)
# Read function arguments from a dedicated section.
find_kwargs = self.parse_section_packages__find(
self.sections.get('packages.find', {}))
from setuptools import find_packages
return find_packages(**find_kwargs)
def _parse_packages(self, value):
"""Parses `packages` option value.
:param value:
:rtype: list
"""
find_directive = 'find:'
if not value.startswith(find_directive):
return self._parse_list(value)
# Read function arguments from a dedicated section.
find_kwargs = self.parse_section_packages__find(
self.sections.get('packages.find', {}))
from setuptools import find_packages
return find_packages(**find_kwargs)
def find_packages():
modules = [
"twisted.plugins",
]
def is_package(path):
return (
os.path.isdir(path) and
os.path.isfile(os.path.join(path, "__init__.py"))
)
for pkg in filter(is_package, os.listdir(".")):
modules.extend([pkg, ] + [
"{}.{}".format(pkg, subpkg)
for subpkg in setuptools_find_packages(pkg)
])
return modules
def _parse_packages(self, value):
"""Parses `packages` option value.
:param value:
:rtype: list
"""
find_directive = 'find:'
if not value.startswith(find_directive):
return self._parse_list(value)
# Read function arguments from a dedicated section.
find_kwargs = self.parse_section_packages__find(
self.sections.get('packages.find', {}))
from setuptools import find_packages
return find_packages(**find_kwargs)
def _parse_packages(self, value):
"""Parses `packages` option value.
:param value:
:rtype: list
"""
find_directive = 'find:'
if not value.startswith(find_directive):
return self._parse_list(value)
# Read function arguments from a dedicated section.
find_kwargs = self.parse_section_packages__find(
self.sections.get('packages.find', {}))
from setuptools import find_packages
return find_packages(**find_kwargs)
def _parse_packages(self, value):
"""Parses `packages` option value.
:param value:
:rtype: list
"""
find_directive = 'find:'
if not value.startswith(find_directive):
return self._parse_list(value)
# Read function arguments from a dedicated section.
find_kwargs = self.parse_section_packages__find(
self.sections.get('packages.find', {}))
from setuptools import find_packages
return find_packages(**find_kwargs)
def _parse_packages(self, value):
"""Parses `packages` option value.
:param value:
:rtype: list
"""
find_directive = 'find:'
if not value.startswith(find_directive):
return self._parse_list(value)
# Read function arguments from a dedicated section.
find_kwargs = self.parse_section_packages__find(
self.sections.get('packages.find', {}))
from setuptools import find_packages
return find_packages(**find_kwargs)
def setup_package():
setup(
name=MAIN_PACKAGE,
version=version.get_version(pep440=True),
url=URL,
description=DESCRIPTION,
author=AUTHOR,
author_email=EMAIL,
include_package_data=True,
keywords=KEYWORDS,
license=LICENSE,
long_description=readme(),
classifiers=CLASSIFIERS,
packages=find_packages('src'),
package_dir={'': 'src'},
install_requires=INSTALL_REQUIRES,
)
def _parse_packages(self, value):
"""Parses `packages` option value.
:param value:
:rtype: list
"""
find_directive = 'find:'
if not value.startswith(find_directive):
return self._parse_list(value)
# Read function arguments from a dedicated section.
find_kwargs = self.parse_section_packages__find(
self.sections.get('packages.find', {}))
from setuptools import find_packages
return find_packages(**find_kwargs)