From d3ca77c63c36f987e5eda7edfa60427d8418b8e8 Mon Sep 17 00:00:00 2001 From: Il`ya Date: Fri, 31 Jan 2020 00:06:13 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A3=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD=D1=8B=20re?= =?UTF-8?q?quirements.txt=20=D1=84=D0=B0=D0=B9=D0=BB=D1=8B.=20=D0=94=D0=BE?= =?UTF-8?q?=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D1=8B=20=D1=81=D1=81=D1=8B?= =?UTF-8?q?=D0=BB=D0=BA=D0=B8=20=D0=BF=D1=80=D0=BE=D0=B5=D0=BA=D1=82=D0=B0?= =?UTF-8?q?=20=D0=B2=20setup.py=20=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D0=B0?= =?UTF-8?q?=20=D0=B4=D0=BB=D1=8F=20=D0=B7=D0=B0=D0=BF=D1=83=D1=81=D0=BA?= =?UTF-8?q?=D0=B0=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2.=20=D0=A2=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D1=8B=20=D0=B2=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=BD?= =?UTF-8?q?=D1=8B=20=D0=B2=20=D0=BF=D0=B0=D0=BA=D0=B5=D1=82.=20=D0=A1?= =?UTF-8?q?=D0=BF=D0=B8=D1=81=D0=BE=D0=BA=20=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=20=D0=B2=20=D0=BE=D0=BF=D0=B8=D1=81=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20=D0=BF=D0=B0=D0=BA=D0=B5=D1=82=D0=B0=20=D0=BD?= =?UTF-8?q?=D0=B0=20PyPi.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MANIFEST.in | 2 +- docs/requirements-docs.txt | 2 - requirements-dev.txt | 7 --- requirements.txt | 1 - setup.py | 91 ++++++++++++++++++++++++-------------- 5 files changed, 58 insertions(+), 45 deletions(-) delete mode 100644 docs/requirements-docs.txt delete mode 100644 requirements-dev.txt delete mode 100644 requirements.txt diff --git a/MANIFEST.in b/MANIFEST.in index d97e1ab..9d563ba 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1 +1 @@ -include LICENSE requirements.txt \ No newline at end of file +include LICENSE Pipfile.lock \ No newline at end of file diff --git a/docs/requirements-docs.txt b/docs/requirements-docs.txt deleted file mode 100644 index 856b3f4..0000000 --- a/docs/requirements-docs.txt +++ /dev/null @@ -1,2 +0,0 @@ -sphinx -sphinx_rtd_theme \ No newline at end of file diff --git a/requirements-dev.txt b/requirements-dev.txt deleted file mode 100644 index 195f47c..0000000 --- a/requirements-dev.txt +++ /dev/null @@ -1,7 +0,0 @@ -requests -pytest -codecov -pytest-cov -ujson -importlib_metadata -atomicwrites \ No newline at end of file diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 617cee6..0000000 --- a/requirements.txt +++ /dev/null @@ -1 +0,0 @@ -requests[socks] \ No newline at end of file diff --git a/setup.py b/setup.py index 4be74d2..244264f 100644 --- a/setup.py +++ b/setup.py @@ -1,43 +1,66 @@ +import sys +import json + from setuptools import setup, find_packages +from setuptools.command.test import test -def requirements(): +class PyTest(test): + def run_tests(self): + import pytest + sys.exit(pytest.main(['tests'])) + + +def requirements(section): """Создание листа зависимостей для этого проекта.""" - requirements_list = [] + with open('Pipfile.lock') as pip_file: + pipfile_json = json.load(pip_file) - with open('requirements.txt') as requirements: - for install in requirements: - requirements_list.append(install.strip()) - - return requirements_list + return [package + detail.get('version', '') + for package, detail in pipfile_json[section].items()] -packages = find_packages(exclude=['tests*']) +packages = find_packages() with open('README.rst', 'r', encoding='utf-8') as f: - setup(name='yandex-music', - version='0.0.16', - author='Il`ya Semyonov', - author_email='Ilya@marshal.by', - license='LGPLv3', - url='https://github.com/MarshalX/yandex-music-api/', - keywords='python yandex music api wrapper library питон яндекс музыка апи обёртка библиотека', - description="Делаю то, что по определённым причинам не сделала компания Yandex.", - long_description=f.read(), - packages=packages, - install_requires=requirements(), - include_package_data=True, - classifiers=[ - 'Development Status :: 2 - Pre-Alpha', - 'Natural Language :: Russian', - 'Intended Audience :: Developers', - 'License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)', - 'Operating System :: OS Independent', - 'Topic :: Software Development :: Libraries :: Python Modules', - 'Topic :: Multimedia :: Sound/Audio', - 'Topic :: Internet', - 'Programming Language :: Python', - 'Programming Language :: Python :: 3.6', - 'Programming Language :: Python :: 3.7', - 'Programming Language :: Python :: 3.8' - ],) + readme = f.read() + +with open('CHANGES.rst', 'r', encoding='utf-8') as f: + changes = f.read() + + +setup(name='yandex-music', + version='0.0.16', + author='Il`ya Semyonov', + author_email='Ilya@marshal.by', + license='LGPLv3', + url='https://github.com/MarshalX/yandex-music-api/', + keywords='python yandex music api wrapper library питон яндекс музыка апи обёртка библиотека', + description='Делаю то, что по определённым причинам не сделала компания Yandex.', + long_description=f'{readme}\n{changes}', + packages=packages, + install_requires=requirements('default'), + include_package_data=True, + classifiers=[ + 'Development Status :: 2 - Pre-Alpha', + 'Natural Language :: Russian', + 'Intended Audience :: Developers', + 'License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)', + 'Operating System :: OS Independent', + 'Topic :: Software Development :: Libraries :: Python Modules', + 'Topic :: Multimedia :: Sound/Audio', + 'Topic :: Internet', + 'Programming Language :: Python', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'Programming Language :: Python :: 3.8' + ], + cmdclass={'test': PyTest}, + tests_require=requirements('develop'), + project_urls={ + 'Code': 'https://github.com/MarshalX/yandex-music-api', + 'Documentation': 'https://yandex-music.readthedocs.io', + 'Chat': 'https://ttttt.me/yandex_music_api', + 'Codecov': 'https://codecov.io/gh/MarshalX/yandex-music-api', + 'Codacy': 'https://www.codacy.com/manual/MarshalX/yandex-music-api', + })