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

@ -11,7 +11,7 @@ recommend installing version 0.6.4.
#### Installing
This package uses distutils, so you can just run:
This package uses setuptools, so you can just run:
python setup.py install

View file

@ -2,8 +2,9 @@
import itertools
import os
import sys
from typing import Any, Dict, Generator, List, Tuple
from typing import Any, Generator, List, Tuple
from setuptools import find_packages, setup
with open("README.md") as fh:
long_description = fh.read()
@ -26,8 +27,7 @@ def recur_expand(target_root: Any, dir: Any) -> Generator[Tuple[str, List[str]],
yield os.path.join(target_root, root), paths
# We should be installable with either setuptools or distutils.
package_info = dict(
setup(
name="zulip",
version=version(),
description="Bindings for the Zulip message API",
@ -63,9 +63,6 @@ package_info = dict(
"zulip-api=zulip.cli:cli",
],
},
) # type: Dict[str, Any]
setuptools_info = dict(
install_requires=[
"requests[security]>=0.12.1",
"matrix_client",
@ -73,28 +70,5 @@ setuptools_info = dict(
"click",
"typing_extensions>=3.7",
],
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
# Manual dependency check
try:
import requests
assert LooseVersion(requests.__version__) >= LooseVersion("0.12.1")
except (ImportError, AssertionError):
print("requests >=0.12.1 is not installed", file=sys.stderr)
sys.exit(1)
package_info["packages"] = ["zulip"]
setup(**package_info)

View file

@ -11,7 +11,6 @@ import traceback
import types
import urllib.parse
from configparser import SafeConfigParser
from distutils.version import LooseVersion
from typing import (
IO,
Any,
@ -37,9 +36,6 @@ assert sys.version_info >= (3, 6)
logger = logging.getLogger(__name__)
# Check that we have a recent enough version
# Older versions don't provide the 'json' attribute on responses.
assert LooseVersion(requests.__version__) >= LooseVersion("0.12.1")
# In newer versions, the 'json' attribute is a function, not a property
requests_json_is_function = callable(requests.Response.json)