[build-system] requires = ["setuptools>=61.2"] build-backend = "setuptools.build_meta" [project] name = "calibreweb" description = "Web app for browsing, reading and downloading eBooks stored in a Calibre database." authors = [{name = "@OzzieIsaacs", email = "Ozzie.Fernandez.Isaacs@googlemail.com"}] maintainers = [{name = "@OzzieIsaacs"}] license = {text = "GPLv3+"} classifiers = [ "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: GNU Affero General Public License v3", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Operating System :: OS Independent", ] keywords = [ "calibre", "calibre-web", "library", ] requires-python = ">=3.6" dependencies = [ "APScheduler>=3.6.3,<3.11.0", "Babel>=1.3,<3.0", "Flask-Babel>=0.11.1,<4.1.0", "Flask-Principal>=0.3.2,<0.5.1", "Flask>=1.0.2,<3.1.0", "iso-639>=0.4.5,<0.5.0;python_version<'3.12'", "pycountry>=20.0.0,<25.0.0;python_version>='3.12'", "PyPDF>=3.15.6,<5.1.0", "pytz>=2016.10", "requests>=2.32.0,<2.33.0", "SQLAlchemy>=1.3.0,<2.1.0", "tornado>=6.3,<6.5", "Wand>=0.4.4,<0.7.0", "unidecode>=0.04.19,<1.4.0", "lxml>=4.9.1,<5.3.0", "flask-wtf>=0.14.2,<1.3.0", "chardet>=3.0.0,<5.3.0", "netifaces-plus>=0.12.0,<0.13.0", "urllib3>=1.22,<3.0", "Flask-Limiter>=2.3.0,<3.9.0", "regex>=2022.3.2,<2024.6.25", "bleach>=6.0.0,<6.2.0", "python-magic>=0.4.27,<0.5.0", "flask-httpAuth>=4.4.0,<5.0.0", "cryptography>=30.0.0,<44.0.0", ] dynamic = ["version"] [project.urls] Homepage = "https://github.com/janeczku/calibre-web" "Bug Tracker" = "https://github.com/janeczku/calibre-web/issues" "Release Management" = "https://github.com/janeczku/calibre-web/releases" Documentation = "https://github.com/janeczku/calibre-web/wiki" "Source Code" = "https://github.com/janeczku/calibre-web" [project.readme] file = "README.md" content-type = "text/markdown" [project.optional-dependencies] gdrive = [ "google-api-python-client>=1.7.11,<2.200.0", "gevent>20.6.0,<24.3.0", "greenlet>=0.4.17,<3.1.0", "httplib2>=0.9.2,<0.23.0", "oauth2client>=4.0.0,<4.1.4", "uritemplate>=3.0.0,<4.2.0", "pyasn1-modules>=0.0.8,<0.5.0", "pyasn1>=0.1.9,<0.7.0", "PyDrive2>=1.3.1,<1.20.0", "PyYAML>=3.12,<6.1", "rsa>=3.4.2,<4.10.0", ] gmail = [ "google-auth-oauthlib>=0.4.3,<1.3.0", "google-api-python-client>=1.7.11,<2.200.0", ] goodreads = [ "goodreads>=0.3.2,<0.4.0", "python-Levenshtein>=0.12.0,<0.27.0", ] ldap = [ "python-ldap>=3.0.0,<3.5.0", "Flask-SimpleLDAP>=1.4.0,<2.1.0", ] oauth = [ "Flask-Dance>=2.0.0,<7.1.0", "SQLAlchemy-Utils>=0.33.5,<0.42.0", ] metadata = [ "rarfile>=3.2,<5.0", "scholarly>=1.2.0,<1.8", "markdown2>=2.0.0,<2.5.0", "html2text>=2020.1.16,<2024.2.26", "python-dateutil>=2.1,<2.10.0", "beautifulsoup4>=4.0.1,<4.13.0", "faust-cchardet>=2.1.18,<2.1.20", "py7zr>=0.15.0,<0.21.0", "mutagen>=1.40.0,<1.50.0", "pycountry>=20.0.0,<25.0.0", ] comics = [ "natsort>=2.2.0,<8.5.0", "comicapi>=2.2.0,<3.3.0", ] kobo = [ "jsonschema>=3.2.0,<4.24.0", ] [project.scripts] cps = "calibreweb:main" [tool.setuptools] include-package-data = true license-files = ["LICENSE"] [tool.setuptools.dynamic] version = {attr = "calibreweb.cps.constants.STABLE_VERSION"}