<NME> setup.py
<BEF> #!/usr/bin/env python

"""
A setuptools based setup module.

See:
https://packaging.python.org/en/latest/distributing.html
"""

from os import path

try:
    from pip.req import parse_requirements
except ImportError:
    # pip >= 10
    from pip._internal.req import parse_requirements

from setuptools import find_packages, setup


def get_requirements(requirements_file):
    """Use pip to parse requirements file."""
    requirements = []
    if path.isfile(requirements_file):
        for req in parse_requirements(requirements_file, session="hack"):
            try:
                if req.markers:
                    requirements.append("%s;%s" % (req.req, req.markers))
                else:
                    requirements.append("%s" % req.req)
            except AttributeError:
                # pip >= 20.0.2
                requirements.append(req.requirement)
    return requirements


if __name__ == "__main__":
    HERE = path.abspath(path.dirname(__file__))
    INSTALL_REQUIRES = get_requirements(path.join(HERE, "requirements.txt"))
    MYSQL_REQUIRES = get_requirements(path.join(HERE, "mysql-requirements.txt"))
    POSTGRESQL_REQUIRES = get_requirements(
        path.join(HERE, "postgresql-requirements.txt"))
    LDAP_REQUIRES = get_requirements(path.join(HERE, "ldap-requirements.txt"))

    with open(path.join(HERE, "README.rst")) as readme:
        LONG_DESCRIPTION = readme.read()

    def local_scheme(version):
        """Skip the local version (eg. +xyz of 0.6.1.dev4+gdf99fe2)
            to be able to upload to Test PyPI"""
        return ""

    setup(

setup(
    name="modoboa",
    version='1.6.0',
    url='http://modoboa.org/',
    license='MIT',
    description="Mail hosting made simple",
    long_description=read('README.rst'),
    author='Antoine Nguyen',
    author_email='tonio@ngyn.org',
    packages=find_packages(),
    include_package_data=True,
    scripts=["bin/modoboa-admin.py"],
    zip_safe=False,
    install_requires=parse_requirements(PIP_REQUIRES),
    dependency_links=parse_dependency_links(PIP_REQUIRES),
    classifiers=['Development Status :: 5 - Production/Stable',
                 'Framework :: Django',
                 'Intended Audience :: System Administrators',
                 'License :: OSI Approved :: MIT License',
                 'Operating System :: OS Independent',
                 'Programming Language :: Python',
                 'Topic :: Internet :: WWW/HTTP']
)
        include_package_data=True,
        zip_safe=False,
        scripts=["bin/modoboa-admin.py"],
        install_requires=INSTALL_REQUIRES,
        use_scm_version={
            "local_scheme": local_scheme
        },
        python_requires=">=3.7",
        setup_requires=["setuptools_scm>6.4"],
        extras_require={
            "ldap": LDAP_REQUIRES,
            "mysql": MYSQL_REQUIRES,
            "postgresql": POSTGRESQL_REQUIRES,
            "argon2": ["argon2-cffi >= 16.1.0"],
        },
    )

<MSG> Version 1.6.1

<DFF> @@ -54,24 +54,24 @@ def read(fname):
 
 setup(
     name="modoboa",
-    version='1.6.0',
-    url='http://modoboa.org/',
-    license='MIT',
+    version="1.6.1",
+    url="http://modoboa.org/",
+    license="ISC",
     description="Mail hosting made simple",
-    long_description=read('README.rst'),
-    author='Antoine Nguyen',
-    author_email='tonio@ngyn.org',
+    long_description=read("README.rst"),
+    author="Antoine Nguyen",
+    author_email="tonio@ngyn.org",
     packages=find_packages(),
     include_package_data=True,
     scripts=["bin/modoboa-admin.py"],
     zip_safe=False,
     install_requires=parse_requirements(PIP_REQUIRES),
     dependency_links=parse_dependency_links(PIP_REQUIRES),
-    classifiers=['Development Status :: 5 - Production/Stable',
-                 'Framework :: Django',
-                 'Intended Audience :: System Administrators',
-                 'License :: OSI Approved :: MIT License',
-                 'Operating System :: OS Independent',
-                 'Programming Language :: Python',
-                 'Topic :: Internet :: WWW/HTTP']
+    classifiers=["Development Status :: 5 - Production/Stable",
+                 "Framework :: Django",
+                 "Intended Audience :: System Administrators",
+                 "License :: OSI Approved :: MIT License",
+                 "Operating System :: OS Independent",
+                 "Programming Language :: Python",
+                 "Topic :: Internet :: WWW/HTTP"]
 )

Version 1.6.1