diff --git a/.gitignore b/.gitignore index 1eedc47..53070b1 100644 --- a/.gitignore +++ b/.gitignore @@ -108,6 +108,8 @@ ipython_config.py # in version control. # https://pdm.fming.dev/#use-with-ide .pdm.toml +.pdm-python +.pdm-build/ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm __pypackages__/ diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..59c0612 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,68 @@ + +[project] +name = "namekoplus" +version = "0.5.0" +description = "A lightweight Python distributed microservice solution" +keywords = ["lightweight python distributed microservice solution"] +readme = "README.md" +authors = [ + {name = "Bryant He", email = "bryantsisu@qq.com"}, +] +classifiers = [ + "Development Status :: 3 - Alpha", + "Environment :: Web Environment", + "Intended Audience :: Developers", + "License :: OSI Approved :: MIT License", + "Programming Language :: Python :: 3", + "Topic :: Software Development :: Libraries :: Python Modules", +] +requires-python = ">=3.8, <4" +dependencies = [ + "click==8.1.5", + "mako==1.2.4", + "nameko==3.0.0rc11", + "pytest==7.4.0", + "python-on-whales==0.65.0", + "shortuuid==1.0.11", +] +license = {text = "MIT"} + +[project.urls] +Homepage = "" +"Source Code" = "https://github.com/Bryanthelol/namekoplus" +"Bug Tracker" = "https://github.com/Bryanthelol/namekoplus/issues" + +[project.optional-dependencies] +ha = [ + "cachetools==5.3.0", + "circuitbreaker==2.0.0", + "tenacity==8.2.2", +] +ob = [ + "nameko-sentry==1.0.0", + "nameko-tracer==1.4.0", +] +log = [ + "logstash_formatter==0.5.17", + "loguru==0.7.2", +] +metric = [ + "statsd==4.0.1", +] +schema = [ + "marshmallow==3.20.1", +] +security = [ + "cryptography", +] +dev = [ + "environs==9.5.0", + "python-dotenv==1.0.0", +] + +[project.scripts] +namekoplus = "namekoplus.command:cli" + +[build-system] +requires = ["pdm-backend"] +build-backend = "pdm.backend" diff --git a/setup.py b/setup.py deleted file mode 100644 index fc4ea74..0000000 --- a/setup.py +++ /dev/null @@ -1,71 +0,0 @@ -from setuptools import setup, find_packages -from codecs import open -from os import path - -here = path.abspath(path.dirname(__file__)) - -with open(path.join(here, 'README.md'), encoding='utf-8') as f: - long_description = f.read() - -setup( - name='namekoplus', - version='0.4.27', - description='A lightweight Python distributed microservice solution', - long_description=long_description, - long_description_content_type='text/markdown', - url='', - project_urls={ - 'Source Code': 'https://github.com/Bryanthelol/namekoplus', - 'Bug Tracker': 'https://github.com/Bryanthelol/namekoplus/issues', - }, - author='Bryant He', - author_email='bryantsisu@qq.com', - - license='MIT', - - classifiers=[ - 'Development Status :: 3 - Alpha', - 'Environment :: Web Environment', - 'Intended Audience :: Developers', - 'License :: OSI Approved :: MIT License', - 'Programming Language :: Python :: 3', - 'Topic :: Software Development :: Libraries :: Python Modules', - ], - platforms='any', - python_requires='>=3.8, <4', - - keywords='lightweight python distributed microservice solution', - - packages=find_packages(exclude=['contrib', 'docs', 'tests']), - include_package_data=True, - data_files=['README.md'], - - entry_points={ - 'console_scripts': [ - 'namekoplus = namekoplus.command:cli', - ], - }, - - install_requires=[ - 'nameko==3.0.0rc11', - 'click==8.1.5', - 'python-on-whales==0.65.0', - 'pytest==7.4.0', - 'mako==1.2.4', - 'shortuuid==1.0.11' - ], - extras_require={ - 'ha': ['tenacity==8.2.2', - 'cachetools==5.3.0', - 'circuitbreaker==2.0.0'], - 'ob': ['nameko-sentry==1.0.0', - 'nameko-tracer==1.4.0'], - 'log': ['loguru==0.7.2', - 'logstash_formatter==0.5.17'], - 'metric': ['statsd==4.0.1'], - 'schema': ['marshmallow==3.20.1'], - 'security': ['cryptography'], - 'dev': ['python-dotenv==1.0.0', - 'environs==9.5.0'] - }, -)