From 023e76973f65e449f860cba35abb32d0ea835bde Mon Sep 17 00:00:00 2001 From: Lance Edgar Date: Tue, 16 May 2023 13:38:57 -0500 Subject: [PATCH] Replace `setup.py` contents with `setup.cfg` --- setup.cfg | 62 +++++++++++++++++++++++ setup.py | 145 +----------------------------------------------------- 2 files changed, 64 insertions(+), 143 deletions(-) create mode 100644 setup.cfg diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..fc0d4fa --- /dev/null +++ b/setup.cfg @@ -0,0 +1,62 @@ +# -*- coding: utf-8; -*- + +[metadata] +name = tailbone-theo +version = attr: theo.__version__ +author = Lance Edgar +author_email = lance@edbob.org +url = https://rattailproject.org +description = Theo, the order system +long_description = file: README.rst +classifiers = + Development Status :: 3 - Alpha + Environment :: Console + Environment :: Web Environment + Framework :: Pyramid + Intended Audience :: Developers + Natural Language :: English + Operating System :: POSIX :: Linux + Programming Language :: Python + Programming Language :: Python :: 3 + Topic :: Office/Business + + +[options] +install_requires = + mysql-connector-python + psycopg2 + Tailbone + +packages = find: +include_package_data = True + + +[options.extras_require] +catapult = onager; rattail-onager; tailbone-onager +corepos = pyCOREPOS; rattail-corepos; tailbone-corepos +fabric = rattail-fabric2 +locsms = luckysmores; rattail-luckysmores; tailbone-locsms + + +[options.entry_points] + +console_scripts = + theo = theo.commands:main + +rattail.config.extensions = + theo = theo.config:TheoConfig + +rattail.importing = + # nb. we always register all 3 handlers here, for version + # imports. any which fail to load will simply not appear + # available to the user. + to_rattail_versions.from_rattail.import.theo_catapult = theo.importing.versions_catapult:FromTheoToTheoVersions + to_rattail_versions.from_rattail.import.theo_corepos = theo.importing.versions_corepos:FromTheoToTheoVersions + to_rattail_versions.from_rattail.import.theo_locsms = theo.importing.versions_locsms:FromTheoToTheoVersions + +paste.app_factory = + main = theo.web.app:main + webapi = theo.web.webapi:main + +theo.commands = + install = theo.commands:Install diff --git a/setup.py b/setup.py index 895a835..d6ebf6b 100644 --- a/setup.py +++ b/setup.py @@ -24,147 +24,6 @@ Theo setup script """ -import os -from setuptools import setup, find_packages +from setuptools import setup - -here = os.path.abspath(os.path.dirname(__file__)) -exec(open(os.path.join(here, 'theo', '_version.py')).read()) -README = open(os.path.join(here, 'README.rst')).read() - - -requires = [ - # - # Version numbers within comments below have specific meanings. - # Basically the 'low' value is a "soft low," and 'high' a "soft high." - # In other words: - # - # If either a 'low' or 'high' value exists, the primary point to be - # made about the value is that it represents the most current (stable) - # version available for the package (assuming typical public access - # methods) whenever this project was started and/or documented. - # Therefore: - # - # If a 'low' version is present, you should know that attempts to use - # versions of the package significantly older than the 'low' version - # may not yield happy results. (A "hard" high limit may or may not be - # indicated by a true version requirement.) - # - # Similarly, if a 'high' version is present, and especially if this - # project has laid dormant for a while, you may need to refactor a bit - # when attempting to support a more recent version of the package. (A - # "hard" low limit should be indicated by a true version requirement - # when a 'high' version is present.) - # - # In any case, developers and other users are encouraged to play - # outside the lines with regard to these soft limits. If bugs are - # encountered then they should be filed as such. - # - # package # low high - - 'mysql-connector-python', - 'psycopg2', # 2.8.5 - 'Tailbone', # 0.8.97 -] - - -extras = { - - 'catapult': [ - # - # package # low high - - # TODO: whoops i already required SA 1.4, so need to test this.. - - # # TODO: must cap this for now, b/c it breaks Catapult integration?! - # # (something about "Syntax error near 'ROWS'" with grid queries) - # 'SQLAlchemy<1.3', # 1.2.19 - - 'onager', # 0.2.8 - 'rattail-onager', # 0.2.1 - 'tailbone-onager', # 0.2.3 - ], - - 'corepos': [ - # - # package # low high - - 'pyCOREPOS', # 0.1.0 - 'rattail-corepos', # 0.1.0 - 'tailbone-corepos', # 0.1.1 - ], - - 'fabric': [ - # - # package # low high - - 'rattail-fabric2', # 0.2.3 - ], - - 'locsms': [ - # - # package # low high - - 'luckysmores', # 0.2.3 - 'rattail-luckysmores', # 0.8.2 - 'tailbone-locsms', # 0.1.0 - ], -} - - -setup( - name = "tailbone-theo", - version = __version__, - author = "Lance Edgar", - author_email = "lance@edbob.org", - url = "https://rattailproject.org", - description = "Theo, the order system", - long_description = README, - - classifiers = [ - 'Development Status :: 3 - Alpha', - 'Environment :: Console', - 'Environment :: Web Environment', - 'Framework :: Pyramid', - 'Intended Audience :: Developers', - 'Natural Language :: English', - 'Operating System :: POSIX :: Linux', - 'Programming Language :: Python', - 'Programming Language :: Python :: 3', - 'Topic :: Office/Business', - ], - - install_requires = requires, - extras_require = extras, - packages = find_packages(), - include_package_data = True, - - entry_points = { - - 'console_scripts': [ - 'theo = theo.commands:main', - ], - - 'rattail.config.extensions': [ - 'theo = theo.config:TheoConfig', - ], - - 'rattail.importing': [ - # nb. we always register all 3 handlers here, for version - # imports. any which fail to load will simply not appear - # available to the user. - 'to_rattail_versions.from_rattail.import.theo_catapult = theo.importing.versions_catapult:FromTheoToTheoVersions', - 'to_rattail_versions.from_rattail.import.theo_corepos = theo.importing.versions_corepos:FromTheoToTheoVersions', - 'to_rattail_versions.from_rattail.import.theo_locsms = theo.importing.versions_locsms:FromTheoToTheoVersions', - ], - - 'paste.app_factory': [ - 'main = theo.web.app:main', - 'webapi = theo.web.webapi:main', - ], - - 'theo.commands': [ - 'install = theo.commands:Install', - ], - }, -) +setup()