mirror of
https://github.com/spl0k/supysonic.git
synced 2024-12-22 17:06:17 +00:00
Rationalizing/modernizing building stuff
Metadata in `setup.cfg` rather than `pyproject.toml` as I'm a bit confused about `setuptools` support for PEP-621. Test stuff still in `setup.py`, this needs updating and I'm not satisfied with the way they are loaded/discovered.
This commit is contained in:
parent
64475a8dfa
commit
8ab9f444b7
12
docs/conf.py
12
docs/conf.py
@ -1,11 +1,13 @@
|
|||||||
|
import supysonic
|
||||||
|
|
||||||
# -- Project information -----------------------------------------------------
|
# -- Project information -----------------------------------------------------
|
||||||
|
|
||||||
project = "Supysonic"
|
project = supysonic.NAME
|
||||||
author = "Alban Féron"
|
author = supysonic.AUTHOR
|
||||||
copyright = "2013-2021, " + author
|
copyright = "2013-2021, " + author
|
||||||
|
|
||||||
version = "0.6.3"
|
version = supysonic.VERSION
|
||||||
release = "0.6.3"
|
release = supysonic.VERSION
|
||||||
|
|
||||||
|
|
||||||
# -- General configuration ---------------------------------------------------
|
# -- General configuration ---------------------------------------------------
|
||||||
@ -26,7 +28,7 @@ language = None
|
|||||||
|
|
||||||
html_theme = "alabaster"
|
html_theme = "alabaster"
|
||||||
html_theme_options = {
|
html_theme_options = {
|
||||||
"description": "A Python implementation of the Subsonic server API",
|
"description": supysonic.DESCRIPTION,
|
||||||
"github_user": "spl0k",
|
"github_user": "spl0k",
|
||||||
"github_repo": "supysonic",
|
"github_repo": "supysonic",
|
||||||
}
|
}
|
||||||
|
3
pyproject.toml
Normal file
3
pyproject.toml
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[build-system]
|
||||||
|
requires = ["setuptools>=51.0.0", "wheel"]
|
||||||
|
build-backend = "setuptools.build_meta"
|
74
setup.cfg
Normal file
74
setup.cfg
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
[metadata]
|
||||||
|
name = Supysonic
|
||||||
|
version = attr: supysonic.VERSION
|
||||||
|
url = https://supysonic.readthedocs.io
|
||||||
|
download_url = https://github.com/spl0k/supysonic
|
||||||
|
author = Alban Féron
|
||||||
|
author_email = alban.feron@gmail.com
|
||||||
|
license = GNU AGPLv3
|
||||||
|
license_files = LICENSE
|
||||||
|
|
||||||
|
description = Python implementation of the Subsonic server API
|
||||||
|
long_description =
|
||||||
|
Supysonic is a Python implementation of the [Subsonic][] server API.
|
||||||
|
|
||||||
|
Current supported features are:
|
||||||
|
* browsing (by folders or tags)
|
||||||
|
* streaming of various audio file formats
|
||||||
|
* transcoding
|
||||||
|
* user or random playlists
|
||||||
|
* cover art
|
||||||
|
* starred tracks/albums and ratings
|
||||||
|
* [Last.FM][lastfm] scrobbling
|
||||||
|
* Jukebox mode
|
||||||
|
|
||||||
|
Supysonic currently targets the version 1.10.2 of the Subsonic API. For more
|
||||||
|
details, go check the [API implementation status][docs-api].
|
||||||
|
|
||||||
|
[subsonic]: http://www.subsonic.org/
|
||||||
|
[lastfm]: https://www.last.fm/
|
||||||
|
[docs-api]: https://supysonic.readthedocs.io/en/latest/api.html
|
||||||
|
|
||||||
|
long_description_content_type = text/markdown
|
||||||
|
keywords = subsonic, music, server
|
||||||
|
|
||||||
|
classifiers =
|
||||||
|
Development Status :: 3 - Alpha
|
||||||
|
Environment :: Console
|
||||||
|
Environment :: Web Environment
|
||||||
|
Framework :: Flask
|
||||||
|
Intended Audience :: End Users/Desktop
|
||||||
|
Intended Audience :: System Administrators
|
||||||
|
License :: OSI Approved :: GNU Affero General Public License v3
|
||||||
|
Programming Language :: Python :: 3
|
||||||
|
Programming Language :: Python :: 3.5
|
||||||
|
Programming Language :: Python :: 3.6
|
||||||
|
Programming Language :: Python :: 3.7
|
||||||
|
Programming Language :: Python :: 3.8
|
||||||
|
Programming Language :: Python :: 3.9
|
||||||
|
Topic :: Multimedia :: Sound/Audio
|
||||||
|
|
||||||
|
[options]
|
||||||
|
python_requires = >=3.5,<3.10
|
||||||
|
install_requires =
|
||||||
|
click
|
||||||
|
flask >=0.11
|
||||||
|
pony >=0.7.6
|
||||||
|
Pillow
|
||||||
|
requests >=1.0.0
|
||||||
|
mediafile
|
||||||
|
watchdog >=0.8.0
|
||||||
|
zipstream-ng >=1.1.0, <2.0.0
|
||||||
|
|
||||||
|
packages = find:
|
||||||
|
include_package_data = true
|
||||||
|
zip_safe = false
|
||||||
|
|
||||||
|
[options.packages.find]
|
||||||
|
include = supysonic*
|
||||||
|
|
||||||
|
[options.entry_points]
|
||||||
|
console_scripts =
|
||||||
|
supysonic-cli = supysonic.cli:main
|
||||||
|
supysonic-daemon = supysonic.daemon:main
|
||||||
|
supysonic-server = supysonic.server:mai
|
57
setup.py
57
setup.py
@ -1,64 +1,15 @@
|
|||||||
# This file is part of Supysonic.
|
# This file is part of Supysonic.
|
||||||
# Supysonic is a Python implementation of the Subsonic server API.
|
# Supysonic is a Python implementation of the Subsonic server API.
|
||||||
#
|
#
|
||||||
# Copyright (C) 2013-2019 Alban 'spl0k' Féron
|
# Copyright (C) 2013-2021 Alban 'spl0k' Féron
|
||||||
# 2017 Óscar García Amor
|
# 2017 Óscar García Amor
|
||||||
#
|
#
|
||||||
# Distributed under terms of the GNU AGPLv3 license.
|
# Distributed under terms of the GNU AGPLv3 license.
|
||||||
|
|
||||||
import supysonic as project
|
|
||||||
|
|
||||||
from setuptools import setup
|
from setuptools import setup
|
||||||
from setuptools import find_packages
|
|
||||||
|
|
||||||
reqs = [
|
if __name__ == "__main__":
|
||||||
"click",
|
setup(
|
||||||
"flask>=0.11",
|
|
||||||
"pony>=0.7.6",
|
|
||||||
"Pillow",
|
|
||||||
"requests>=1.0.0",
|
|
||||||
"mediafile",
|
|
||||||
"watchdog>=0.8.0",
|
|
||||||
"zipstream-ng>=1.1.0,<2.0.0",
|
|
||||||
]
|
|
||||||
|
|
||||||
setup(
|
|
||||||
name=project.NAME,
|
|
||||||
version=project.VERSION,
|
|
||||||
description=project.DESCRIPTION,
|
|
||||||
keywords=project.KEYWORDS,
|
|
||||||
long_description=project.LONG_DESCRIPTION,
|
|
||||||
author=project.AUTHOR_NAME,
|
|
||||||
author_email=project.AUTHOR_EMAIL,
|
|
||||||
url=project.URL,
|
|
||||||
license=project.LICENSE,
|
|
||||||
packages=find_packages(exclude=["tests*"]),
|
|
||||||
install_requires=reqs,
|
|
||||||
entry_points={
|
|
||||||
"console_scripts": [
|
|
||||||
"supysonic-cli=supysonic.cli:main",
|
|
||||||
"supysonic-daemon=supysonic.daemon:main",
|
|
||||||
"supysonic-server=supysonic.server:main"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
zip_safe=False,
|
|
||||||
include_package_data=True,
|
|
||||||
test_suite="tests.suite",
|
test_suite="tests.suite",
|
||||||
tests_require=["lxml"],
|
tests_require=["lxml"],
|
||||||
classifiers=[
|
)
|
||||||
"Development Status :: 3 - Alpha",
|
|
||||||
"Environment :: Console",
|
|
||||||
"Environment :: Web Environment",
|
|
||||||
"Framework :: Flask",
|
|
||||||
"Intended Audience :: End Users/Desktop",
|
|
||||||
"Intended Audience :: System Administrators",
|
|
||||||
"License :: OSI Approved :: GNU Affero General Public License v3",
|
|
||||||
"Programming Language :: Python :: 3",
|
|
||||||
"Programming Language :: Python :: 3.5",
|
|
||||||
"Programming Language :: Python :: 3.6",
|
|
||||||
"Programming Language :: Python :: 3.7",
|
|
||||||
"Programming Language :: Python :: 3.8",
|
|
||||||
"Programming Language :: Python :: 3.9",
|
|
||||||
"Topic :: Multimedia :: Sound/Audio",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
@ -6,21 +6,11 @@
|
|||||||
#
|
#
|
||||||
# Distributed under terms of the GNU AGPLv3 license.
|
# Distributed under terms of the GNU AGPLv3 license.
|
||||||
|
|
||||||
NAME = "supysonic"
|
NAME = "Supysonic"
|
||||||
VERSION = "0.6.3"
|
VERSION = "0.6.3"
|
||||||
DESCRIPTION = "Python implementation of the Subsonic server API."
|
DESCRIPTION = "Python implementation of the Subsonic server API"
|
||||||
KEYWORDS = "subsonic music api"
|
AUTHOR = "Alban Féron"
|
||||||
AUTHOR_NAME = "Alban Féron"
|
|
||||||
AUTHOR_EMAIL = "alban.feron@gmail.com"
|
AUTHOR_EMAIL = "alban.feron@gmail.com"
|
||||||
URL = "https://github.com/spl0k/supysonic"
|
URL = "https://supysonic.readthedocs.io/"
|
||||||
|
DOWNLOAD_URL = "https://github.com/spl0k/supysonic"
|
||||||
LICENSE = "GNU AGPLv3"
|
LICENSE = "GNU AGPLv3"
|
||||||
LONG_DESCRIPTION = """Supysonic is a Python implementation of the Subsonic server API.
|
|
||||||
Current supported features are:
|
|
||||||
* browsing (by folders or tags)
|
|
||||||
* streaming of various audio file formats
|
|
||||||
* transcoding
|
|
||||||
* user or random playlists
|
|
||||||
* cover art (cover.jpg files in the same folder as music files)
|
|
||||||
* starred tracks/albums and ratings
|
|
||||||
* Last.FM scrobbling
|
|
||||||
* Jukebox mode"""
|
|
||||||
|
Loading…
Reference in New Issue
Block a user