From c7cdee258eba1e3e047930d10b2e5ba360ce340c Mon Sep 17 00:00:00 2001 From: Marc Mueller <30130371+cdce8p@users.noreply.github.com> Date: Sat, 29 Jan 2022 05:18:09 +0100 Subject: [PATCH] Move remaining keys to `setup.cfg` (#65154) * Move metadata keys * Move options * Delete setup.py * Remove unused constants * Remove deprecated test_suite key * Improve metadata * Only include homeassistant*, not script* * Add long_desc_content_type * Remove license file (auto-included by setuptools + wheels) * Add setup.py Pip 21.2 doesn't support editable installs without it. --- MANIFEST.in | 1 - setup.cfg | 16 +++++++++++++++- setup.py | 30 ++++++------------------------ 3 files changed, 21 insertions(+), 26 deletions(-) mode change 100755 => 100644 setup.py diff --git a/MANIFEST.in b/MANIFEST.in index 490b550e705..780ffd02719 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,4 +1,3 @@ include README.rst -include LICENSE.md graft homeassistant recursive-exclude * *.py[co] diff --git a/setup.cfg b/setup.cfg index 274e1ac362a..061e0bbc0cb 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,10 +1,13 @@ [metadata] +name = homeassistant version = 2022.3.0.dev0 +author = The Home Assistant Authors +author_email = hello@home-assistant.io license = Apache-2.0 -license_file = LICENSE.md platforms = any description = Open-source home automation platform running on Python 3. long_description = file: README.rst +long_description_content_type = text/x-rst keywords = home, automation url = https://www.home-assistant.io/ project_urls = @@ -23,6 +26,9 @@ classifier = Topic :: Home Automation [options] +packages = find: +zip_safe = False +include_package_data = True python_requires = >=3.9.0 install_requires = aiohttp==3.8.1 @@ -51,6 +57,14 @@ install_requires = voluptuous-serialize==2.5.0 yarl==1.7.2 +[options.packages.find] +include = + homeassistant* + +[options.entry_points] +console_scripts = + hass = homeassistant.__main__:main + [flake8] exclude = .venv,.git,.tox,docs,venv,bin,lib,deps,build max-complexity = 25 diff --git a/setup.py b/setup.py old mode 100755 new mode 100644 index febaab62be0..69bf65dd8a4 --- a/setup.py +++ b/setup.py @@ -1,25 +1,7 @@ -#!/usr/bin/env python3 -"""Home Assistant setup script.""" -from datetime import datetime as dt +""" +Entry point for setuptools. Required for editable installs. +TODO: Remove file after updating to pip 21.3 +""" +from setuptools import setup -from setuptools import find_packages, setup - -PROJECT_NAME = "Home Assistant" -PROJECT_PACKAGE_NAME = "homeassistant" -PROJECT_LICENSE = "Apache License 2.0" -PROJECT_AUTHOR = "The Home Assistant Authors" -PROJECT_COPYRIGHT = f" 2013-{dt.now().year}, {PROJECT_AUTHOR}" -PROJECT_EMAIL = "hello@home-assistant.io" - -PACKAGES = find_packages(exclude=["tests", "tests.*"]) - -setup( - name=PROJECT_PACKAGE_NAME, - author=PROJECT_AUTHOR, - author_email=PROJECT_EMAIL, - packages=PACKAGES, - include_package_data=True, - zip_safe=False, - test_suite="tests", - entry_points={"console_scripts": ["hass = homeassistant.__main__:main"]}, -) +setup()