]> git.phdru.name Git - sqlconvert.git/blobdiff - setup.py
Build(GHActions): Use `checkout@v4` instead of outdated `v2`
[sqlconvert.git] / setup.py
index 3f58237ec92405dcfe931297258a0cf7a7bdbd2c..3d74634341080352de9c0b8228b23f464449d02b 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -1,50 +1,69 @@
 #!/usr/bin/env python
 
-from imp import load_source
 from os.path import abspath, dirname, join
-
-try:
-    from setuptools import setup
-    is_setuptools = True
-except ImportError:
-    from distutils.core import setup
-    is_setuptools = False
+from setuptools import setup
+import sys
 
 versionpath = join(abspath(dirname(__file__)), 'sqlconvert', '__version__.py')
-load_source('sqlconvert_version', versionpath)
-# Ignore: E402 module level import not at top of file
-from sqlconvert_version import __version__  # noqa
+sqlconvert_version = {}
+
+if sys.version_info[:2] == (2, 7):
+    execfile(versionpath, sqlconvert_version)  # noqa: F821 'execfile' Py3
+
+elif sys.version_info >= (3, 4):
+    exec(open(versionpath, 'r').read(), sqlconvert_version)
 
-kw = {}
-if is_setuptools:
-    kw['install_requires'] = [
-        'sqlparse', 'SQLObject>=2.2.1', 'm_lib.defenc>=1.0', 'm_lib>=3.1',
-    ]
+else:
+    raise ImportError("sqlconvert requires Python 2.7 or 3.4+")
 
-setup(name='sqlconvert',
-      version=__version__,
-      description='Broytman sqlconvert',
-      long_description=open('README.txt', 'rtU').read(),
-      author='Oleg Broytman',
-      author_email='phd@phdru.name',
-      url='http://phdru.name/Software/Python/',
-      license='GPL',
-      platforms=['any'],
-      keywords=[''],
-      classifiers=[
-          'Development Status :: 3 - Alpha',
-          'Environment :: Console',
-          'Intended Audience :: Developers',
-          'License :: OSI Approved :: GNU General Public License (GPL)',
-          'Operating System :: OS Independent',
-          'Programming Language :: Python :: 2',
-          'Programming Language :: Python :: 2.6',
-          'Programming Language :: Python :: 2.7',
-          'Programming Language :: Python :: 3',
-          'Programming Language :: Python :: 3.4',
-      ],
-      packages=['sqlconvert'],
-      package_data={},
-      scripts=['scripts/mysql2sql'],
-      **kw
-      )
+setup(
+    name='sqlconvert',
+    version=sqlconvert_version['__version__'],
+    description='Broytman sqlconvert',
+    long_description=open('README.rst', 'r').read(),
+    long_description_content_type="text/x-rst",
+    author='Oleg Broytman',
+    author_email='phd@phdru.name',
+    url='https://phdru.name/Software/Python/sqlconvert/',
+    project_urls={
+        'Homepage': 'https://phdru.name/Software/Python/sqlconvert/',
+        'Documentation':
+            'https://phdru.name/Software/Python/sqlconvert/docs/',
+        'Download': 'https://pypi.org/project/sqlconvert/%s/'
+        % sqlconvert_version['__version__'],
+        'Git repo': 'https://git.phdru.name/sqlconvert.git/',
+        'Github repo': 'https://github.com/phdru/sqlconvert',
+        'Issue tracker': 'https://github.com/phdru/sqlconvert/issues',
+    },
+    license='GPL',
+    keywords=['sql', 'mysql', 'postgresql', 'sqlite', 'insert'],
+    platforms='Any',
+    classifiers=[
+        'Development Status :: 3 - Alpha',
+        'Environment :: Console',
+        'Intended Audience :: Developers',
+        'License :: OSI Approved :: GNU General Public License (GPL)',
+        'Operating System :: OS Independent',
+        'Programming Language :: Python :: 2',
+        'Programming Language :: Python :: 2.7',
+        'Programming Language :: Python :: 3',
+        'Programming Language :: Python :: 3.4',
+        'Programming Language :: Python :: 3.5',
+        'Programming Language :: Python :: 3.6',
+        'Programming Language :: Python :: 3.7',
+        'Programming Language :: Python :: 3.8',
+        'Programming Language :: Python :: 3.9',
+        'Programming Language :: Python :: 3.10',
+        'Programming Language :: Python :: 3.11',
+        'Programming Language :: Python :: 3.12',
+    ],
+    packages=['sqlconvert'],
+    scripts=['scripts/mysql2sql'],
+    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',
+    install_requires=[
+        'SQLObject>=2.2.1; python_version=="2.7"',
+        'SQLObject>=3.0.0; python_version>="3.4"',
+        'm_lib.full>=1.0',
+        'sqlparse',
+    ],
+)