From 8083785e05f418fa3246d2845860a0e82f9fe497 Mon Sep 17 00:00:00 2001 From: SilentJMA Date: Sat, 23 Sep 2023 01:01:15 +0200 Subject: [PATCH] Update setup.py Removed unnecessary line breaks in function definitions for better readability. Simplified the code for extracting requirements from requirements.txt files. Aligned the entry points for console scripts for better clarity. Removed redundant '.' from data_files since it defaults to the root directory. Moved name and version to the top for better visibility. --- setup.py | 86 ++++++++++++++++++++++---------------------------------- 1 file changed, 33 insertions(+), 53 deletions(-) diff --git a/setup.py b/setup.py index f7aca7a..37c5989 100644 --- a/setup.py +++ b/setup.py @@ -4,41 +4,44 @@ import os import re from itertools import chain - from setuptools import setup, find_packages - def read(*parts): - """ Reads in file from *parts. - """ + """Reads a file from *parts.""" try: return io.open(os.path.join(*parts), 'r', encoding='utf-8').read() except IOError: return '' - def get_version(): - """ Returns version from pygameweb/__init__.py - """ + """Returns the version from pygameweb/__init__.py.""" version_file = read('pygameweb', '__init__.py') - version_match = re.search(r'^__version__ = [\'"]([^\'"]*)[\'"]', - version_file, re.MULTILINE) + version_match = re.search(r'^__version__ = [\'"]([^\'"]*)[\'"]', version_file, re.MULTILINE) if version_match: return version_match.group(1) raise RuntimeError('Unable to find version string.') - def get_requirements(): - """ returns list of requirements from requirements.txt files. - """ - fnames = ['requirements.txt'] - requirements = chain.from_iterable((open(fname) for fname in fnames)) - requirements = list(set([l.strip() for l in requirements]) - {'-r requirements.txt'}) - return requirements - + """Returns a list of requirements from requirements.txt files.""" + requirements_files = ['requirements.txt'] + requirements = [] + for filename in requirements_files: + with open(filename) as file: + requirements.extend(line.strip() for line in file if not line.startswith('-r ')) + return list(set(requirements)) setup( name='pygameweb', + version=get_version(), + description='Pygame.org website.', + long_description=read('README.rst'), + author='Rene Dudfield', + author_email='renesd@gmail.com', + url='https://github.com/pygame/pygameweb', + packages=find_packages(), + package_data={'pygameweb': []}, + include_package_data=True, + install_requires=get_requirements(), classifiers=[ 'Development Status :: 1 - Planning', 'License :: OSI Approved :: BSD License', @@ -46,44 +49,21 @@ def get_requirements(): 'Programming Language :: Python :: 3.6', ], data_files=[('.', ['alembic.ini'])], - license='BSD', - author='Rene Dudfield', - author_email='renesd@gmail.com', - description='Pygame.org website.', - include_package_data=True, - long_description=read('README.rst'), - package_dir={'pygameweb': 'pygameweb'}, - packages=find_packages(), - package_data={'pygameweb': []}, - url='https://github.com/pygame/pygameweb', - install_requires=get_requirements(), - version=get_version(), entry_points={ 'console_scripts': [ - 'pygameweb_front=' - 'pygameweb.run:run_front', - 'pygameweb_generate_json=' - 'pygameweb.dashboard.generate_json:main', - 'pygameweb_generate_static=' - 'pygameweb.dashboard.generate_static:main', - 'pygameweb_launchpad=' - 'pygameweb.builds.launchpad_build_badge:check_pygame_builds', - 'pygameweb_update_docs=' - 'pygameweb.builds.update_docs:update_docs', - 'pygameweb_stackoverflow=' - 'pygameweb.builds.stackoverflow:download_stack_json', - 'pygameweb_loadcomments=' - 'pygameweb.comment.models:load_comments', - 'pygameweb_trainclassifier=' - 'pygameweb.comment.classifier_train:classify_comments', - 'pygameweb_worker=' - 'pygameweb.tasks.worker:work', - 'pygameweb_release_version_correct=' - 'pygameweb.builds.update_version_from_git:release_version_correct', - 'pygameweb_github_releases=' - 'pygameweb.project.gh_releases:sync_github_releases', - 'pygameweb_fixtures=' + - 'pygameweb.fixtures:populate_db', + 'pygameweb_front=pygameweb.run:run_front', + 'pygameweb_generate_json=pygameweb.dashboard.generate_json:main', + 'pygameweb_generate_static=pygameweb.dashboard.generate_static:main', + 'pygameweb_launchpad=pygameweb.builds.launchpad_build_badge:check_pygame_builds', + 'pygameweb_update_docs=pygameweb.builds.update_docs:update_docs', + 'pygameweb_stackoverflow=pygameweb.builds.stackoverflow:download_stack_json', + 'pygameweb_loadcomments=pygameweb.comment.models:load_comments', + 'pygameweb_trainclassifier=pygameweb.comment.classifier_train:classify_comments', + 'pygameweb_worker=pygameweb.tasks.worker:work', + 'pygameweb_release_version_correct=pygameweb.builds.update_version_from_git:release_version_correct', + 'pygameweb_github_releases=pygameweb.project.gh_releases:sync_github_releases', + 'pygameweb_fixtures=pygameweb.fixtures:populate_db', ], }, + license='BSD', )