Remove legacy distutils support.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
Anders Kaseorg 2022-02-09 17:48:32 -08:00 committed by Tim Abbott
parent 095d5d8f4e
commit 05d591a906
5 changed files with 13 additions and 130 deletions

View file

@ -1,15 +1,13 @@
#!/usr/bin/env python3
import sys
from typing import Any, Dict, Optional
from setuptools import find_packages, setup
ZULIP_BOTSERVER_VERSION = "0.8.1"
with open("README.md") as fh:
long_description = fh.read()
# We should be installable with either setuptools or distutils.
package_info = dict(
setup(
name="zulip_botserver",
version=ZULIP_BOTSERVER_VERSION,
description="Zulip's Flask server for running bots",
@ -42,48 +40,10 @@ package_info = dict(
},
test_suite="tests",
package_data={"zulip_botserver": ["py.typed"]},
) # type: Dict[str, Any]
setuptools_info = dict(
install_requires=[
"zulip",
"zulip_bots",
"flask>=0.12.2",
],
packages=find_packages(exclude=["tests"]),
)
try:
from setuptools import find_packages, setup
package_info.update(setuptools_info)
package_info["packages"] = find_packages(exclude=["tests"])
except ImportError:
from distutils.core import setup
from distutils.version import LooseVersion
from importlib import import_module
# Manual dependency check
def check_dependency_manually(module_name: str, version: Optional[str] = None) -> None:
try:
module = import_module(module_name) # type: Any
if version is not None:
assert LooseVersion(module.__version__) >= LooseVersion(version)
except (ImportError, AssertionError):
if version is not None:
print(
f"{module_name}>={version} is not installed.",
file=sys.stderr,
)
else:
print(f"{module_name} is not installed.", file=sys.stderr)
sys.exit(1)
check_dependency_manually("zulip")
check_dependency_manually("zulip_bots")
check_dependency_manually("flask", "0.12.2")
package_info["packages"] = ["zulip_botserver"]
setup(**package_info)