Move install_requires
to setup.cfg
(#65095)
This commit is contained in:
parent
631c4bf10f
commit
86ed720335
4 changed files with 33 additions and 34 deletions
|
@ -107,7 +107,7 @@ repos:
|
||||||
pass_filenames: false
|
pass_filenames: false
|
||||||
language: script
|
language: script
|
||||||
types: [text]
|
types: [text]
|
||||||
files: ^(homeassistant/.+/manifest\.json|setup\.py|\.pre-commit-config\.yaml|script/gen_requirements_all\.py)$
|
files: ^(homeassistant/.+/manifest\.json|setup\.cfg|\.pre-commit-config\.yaml|script/gen_requirements_all\.py)$
|
||||||
- id: hassfest
|
- id: hassfest
|
||||||
name: hassfest
|
name: hassfest
|
||||||
entry: script/run-in-env.sh python3 -m script.hassfest
|
entry: script/run-in-env.sh python3 -m script.hassfest
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
"""Generate an updated requirements_all.txt."""
|
"""Generate an updated requirements_all.txt."""
|
||||||
|
import configparser
|
||||||
import difflib
|
import difflib
|
||||||
import importlib
|
import importlib
|
||||||
import os
|
import os
|
||||||
|
@ -167,10 +168,9 @@ def explore_module(package, explore_children):
|
||||||
|
|
||||||
def core_requirements():
|
def core_requirements():
|
||||||
"""Gather core requirements out of setup.py."""
|
"""Gather core requirements out of setup.py."""
|
||||||
reqs_raw = re.search(
|
parser = configparser.ConfigParser()
|
||||||
r"REQUIRES = \[(.*?)\]", Path("setup.py").read_text(), re.S
|
parser.read("setup.cfg")
|
||||||
).group(1)
|
return parser["options"]["install_requires"].strip().split("\n")
|
||||||
return [x[1] for x in re.findall(r"(['\"])(.*?)\1", reqs_raw)]
|
|
||||||
|
|
||||||
|
|
||||||
def gather_recursive_requirements(domain, seen=None):
|
def gather_recursive_requirements(domain, seen=None):
|
||||||
|
|
28
setup.cfg
28
setup.cfg
|
@ -14,6 +14,34 @@ classifier =
|
||||||
Programming Language :: Python :: 3.9
|
Programming Language :: Python :: 3.9
|
||||||
Topic :: Home Automation
|
Topic :: Home Automation
|
||||||
|
|
||||||
|
[options]
|
||||||
|
install_requires =
|
||||||
|
aiohttp==3.8.1
|
||||||
|
astral==2.2
|
||||||
|
async_timeout==4.0.2
|
||||||
|
attrs==21.2.0
|
||||||
|
atomicwrites==1.4.0
|
||||||
|
awesomeversion==22.1.0
|
||||||
|
bcrypt==3.1.7
|
||||||
|
certifi>=2021.5.30
|
||||||
|
ciso8601==2.2.0
|
||||||
|
# When bumping httpx, please check the version pins of
|
||||||
|
# httpcore, anyio, and h11 in gen_requirements_all
|
||||||
|
httpx==0.21.3
|
||||||
|
ifaddr==0.1.7
|
||||||
|
jinja2==3.0.3
|
||||||
|
PyJWT==2.1.0
|
||||||
|
# PyJWT has loose dependency. We want the latest one.
|
||||||
|
cryptography==35.0.0
|
||||||
|
pip>=8.0.3,<20.3
|
||||||
|
python-slugify==4.0.1
|
||||||
|
pyyaml==6.0
|
||||||
|
requests==2.27.1
|
||||||
|
typing-extensions>=3.10.0.2,<5.0
|
||||||
|
voluptuous==0.12.2
|
||||||
|
voluptuous-serialize==2.5.0
|
||||||
|
yarl==1.7.2
|
||||||
|
|
||||||
[flake8]
|
[flake8]
|
||||||
exclude = .venv,.git,.tox,docs,venv,bin,lib,deps,build
|
exclude = .venv,.git,.tox,docs,venv,bin,lib,deps,build
|
||||||
max-complexity = 25
|
max-complexity = 25
|
||||||
|
|
29
setup.py
29
setup.py
|
@ -31,34 +31,6 @@ PROJECT_URLS = {
|
||||||
|
|
||||||
PACKAGES = find_packages(exclude=["tests", "tests.*"])
|
PACKAGES = find_packages(exclude=["tests", "tests.*"])
|
||||||
|
|
||||||
REQUIRES = [
|
|
||||||
"aiohttp==3.8.1",
|
|
||||||
"astral==2.2",
|
|
||||||
"async_timeout==4.0.2",
|
|
||||||
"attrs==21.2.0",
|
|
||||||
"atomicwrites==1.4.0",
|
|
||||||
"awesomeversion==22.1.0",
|
|
||||||
"bcrypt==3.1.7",
|
|
||||||
"certifi>=2021.5.30",
|
|
||||||
"ciso8601==2.2.0",
|
|
||||||
# When bumping httpx, please check the version pins of
|
|
||||||
# httpcore, anyio, and h11 in gen_requirements_all
|
|
||||||
"httpx==0.21.3",
|
|
||||||
"ifaddr==0.1.7",
|
|
||||||
"jinja2==3.0.3",
|
|
||||||
"PyJWT==2.1.0",
|
|
||||||
# PyJWT has loose dependency. We want the latest one.
|
|
||||||
"cryptography==35.0.0",
|
|
||||||
"pip>=8.0.3,<20.3",
|
|
||||||
"python-slugify==4.0.1",
|
|
||||||
"pyyaml==6.0",
|
|
||||||
"requests==2.27.1",
|
|
||||||
"typing-extensions>=3.10.0.2,<5.0",
|
|
||||||
"voluptuous==0.12.2",
|
|
||||||
"voluptuous-serialize==2.5.0",
|
|
||||||
"yarl==1.7.2",
|
|
||||||
]
|
|
||||||
|
|
||||||
MIN_PY_VERSION = ".".join(map(str, hass_const.REQUIRED_PYTHON_VER))
|
MIN_PY_VERSION = ".".join(map(str, hass_const.REQUIRED_PYTHON_VER))
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
|
@ -72,7 +44,6 @@ setup(
|
||||||
packages=PACKAGES,
|
packages=PACKAGES,
|
||||||
include_package_data=True,
|
include_package_data=True,
|
||||||
zip_safe=False,
|
zip_safe=False,
|
||||||
install_requires=REQUIRES,
|
|
||||||
python_requires=f">={MIN_PY_VERSION}",
|
python_requires=f">={MIN_PY_VERSION}",
|
||||||
test_suite="tests",
|
test_suite="tests",
|
||||||
entry_points={"console_scripts": ["hass = homeassistant.__main__:main"]},
|
entry_points={"console_scripts": ["hass = homeassistant.__main__:main"]},
|
||||||
|
|
Loading…
Add table
Reference in a new issue