From c11e569e666d891cce58128003c51676692c2f79 Mon Sep 17 00:00:00 2001 From: George Pchelkin Date: Sun, 13 Oct 2024 22:29:19 +0100 Subject: [PATCH] fix docs build 2, drop python 3.9 --- .github/workflows/build.yml | 2 +- README.rst | 2 +- docs/conf.py | 5 +- poetry.lock | 155 ++++++++++------------------ pyproject.toml | 6 +- requirements-dev.txt | 194 ++++++++++++++++++------------------ requirements-docs.txt | 63 ++++++------ requirements.txt | 120 +++++++++++----------- 8 files changed, 247 insertions(+), 300 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d3932f2c4..79933a229 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,7 +20,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ['3.9', '3.10', '3.11', '3.12', '3.13'] + python-version: ['3.10', '3.11', '3.12', '3.13'] steps: - uses: actions/checkout@v4.2.1 diff --git a/README.rst b/README.rst index 9982d5c91..69b546c5f 100644 --- a/README.rst +++ b/README.rst @@ -100,7 +100,7 @@ Requirements Those should be available in your ``PATH``: -- `Python 3.9+ `__ +- `Python 3.10+ `__ (`pyenv `__ and `poetry `__ are recommended) - `yt-dlp strongly recommended dependencies `__, including: - `FFmpeg 6.1+ `__ (in your `$PATH`) (if not running on Heroku/Render) diff --git a/docs/conf.py b/docs/conf.py index 6f3101f2c..252892ea9 100755 --- a/docs/conf.py +++ b/docs/conf.py @@ -27,7 +27,7 @@ def _get_project_meta(): pkg_meta = _get_project_meta() project = str(pkg_meta['name']) -copyright = '2023, gpchelkin' # noqa: A001 # skipcq: PYL-W0622 +copyright = '2024, gpchelkin' # noqa: A001 # skipcq: PYL-W0622 author = 'gpchelkin' # The short X.Y version @@ -56,7 +56,8 @@ def _get_project_meta(): 'sphinx.ext.napoleon', # Used to include .md files: - 'm2r2', + # 'm2r2', + "myst_parser", # Used to insert typehints into the final docs: 'sphinx_autodoc_typehints', diff --git a/poetry.lock b/poetry.lock index a8d771df0..a5bfb9eb7 100644 --- a/poetry.lock +++ b/poetry.lock @@ -820,13 +820,13 @@ files = [ [[package]] name = "docutils" -version = "0.20.1" +version = "0.21.2" description = "Docutils -- Python Documentation Utilities" optional = false -python-versions = ">=3.7" +python-versions = ">=3.9" files = [ - {file = "docutils-0.20.1-py3-none-any.whl", hash = "sha256:96f387a2c5562db4476f09f13bbab2192e764cac08ebbf3a34a95d9b1e4a59d6"}, - {file = "docutils-0.20.1.tar.gz", hash = "sha256:f08a4e276c3a1583a86dce3e34aba3fe04d02bba2dd51ed16106244e8a923e3b"}, + {file = "docutils-0.21.2-py3-none-any.whl", hash = "sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2"}, + {file = "docutils-0.21.2.tar.gz", hash = "sha256:3a6b18732edf182daa3cd12775bbb338cf5691468f91eeeb109deff6ebfa986f"}, ] [[package]] @@ -897,9 +897,6 @@ files = [ {file = "fake_useragent-1.5.1-py3-none-any.whl", hash = "sha256:57415096557c8a4e23b62a375c21c55af5fd4ba30549227f562d2c4f5b60e3b3"}, ] -[package.dependencies] -importlib-resources = {version = ">=5.0", markers = "python_version < \"3.10\""} - [[package]] name = "ffmpeg-python" version = "0.2.0" @@ -1319,51 +1316,6 @@ files = [ {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, ] -[[package]] -name = "importlib-metadata" -version = "8.5.0" -description = "Read metadata from Python packages" -optional = false -python-versions = ">=3.8" -files = [ - {file = "importlib_metadata-8.5.0-py3-none-any.whl", hash = "sha256:45e54197d28b7a7f1559e60b95e7c567032b602131fbd588f1497f47880aa68b"}, - {file = "importlib_metadata-8.5.0.tar.gz", hash = "sha256:71522656f0abace1d072b9e5481a48f07c138e00f079c38c8f883823f9c26bd7"}, -] - -[package.dependencies] -zipp = ">=3.20" - -[package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] -cover = ["pytest-cov"] -doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -enabler = ["pytest-enabler (>=2.2)"] -perf = ["ipython"] -test = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"] -type = ["pytest-mypy"] - -[[package]] -name = "importlib-resources" -version = "6.4.5" -description = "Read resources from Python packages" -optional = false -python-versions = ">=3.8" -files = [ - {file = "importlib_resources-6.4.5-py3-none-any.whl", hash = "sha256:ac29d5f956f01d5e4bb63102a5a19957f1b9175e45649977264a1416783bb717"}, - {file = "importlib_resources-6.4.5.tar.gz", hash = "sha256:980862a1d16c9e147a59603677fa2aa5fd82b87f223b6cb870695bcfce830065"}, -] - -[package.dependencies] -zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} - -[package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] -cover = ["pytest-cov"] -doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -enabler = ["pytest-enabler (>=2.2)"] -test = ["jaraco.test (>=5.4)", "pytest (>=6,!=8.1.*)", "zipp (>=3.17)"] -type = ["pytest-mypy"] - [[package]] name = "isort" version = "5.13.2" @@ -1424,25 +1376,6 @@ win32-setctime = {version = ">=1.0.0", markers = "sys_platform == \"win32\""} [package.extras] dev = ["Sphinx (==7.2.5)", "colorama (==0.4.5)", "colorama (==0.4.6)", "exceptiongroup (==1.1.3)", "freezegun (==1.1.0)", "freezegun (==1.2.2)", "mypy (==v0.910)", "mypy (==v0.971)", "mypy (==v1.4.1)", "mypy (==v1.5.1)", "pre-commit (==3.4.0)", "pytest (==6.1.2)", "pytest (==7.4.0)", "pytest-cov (==2.12.1)", "pytest-cov (==4.1.0)", "pytest-mypy-plugins (==1.9.3)", "pytest-mypy-plugins (==3.0.0)", "sphinx-autobuild (==2021.3.14)", "sphinx-rtd-theme (==1.3.0)", "tox (==3.27.1)", "tox (==4.11.0)"] -[[package]] -name = "m2r2" -version = "0.3.3.post2" -description = "Markdown and reStructuredText in a single file." -optional = false -python-versions = ">=3.7" -files = [] -develop = false - -[package.dependencies] -docutils = ">=0.19,<0.21" -mistune = "0.8.4" - -[package.source] -type = "git" -url = "https://github.com/adrien-berchet/m2r2.git" -reference = "patch-1" -resolved_reference = "d8e4f6e567dfe2452070c031a6e1d47046ac8ddf" - [[package]] name = "markdown-it-py" version = "3.0.0" @@ -1580,6 +1513,25 @@ files = [ {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, ] +[[package]] +name = "mdit-py-plugins" +version = "0.4.2" +description = "Collection of plugins for markdown-it-py" +optional = false +python-versions = ">=3.8" +files = [ + {file = "mdit_py_plugins-0.4.2-py3-none-any.whl", hash = "sha256:0c673c3f889399a33b95e88d2f0d111b4447bdfea7f237dab2d488f459835636"}, + {file = "mdit_py_plugins-0.4.2.tar.gz", hash = "sha256:5f2cd1fdb606ddf152d37ec30e46101a60512bc0e5fa1a7002c36647b09e26b5"}, +] + +[package.dependencies] +markdown-it-py = ">=1.0.0,<4.0.0" + +[package.extras] +code-style = ["pre-commit"] +rtd = ["myst-parser", "sphinx-book-theme"] +testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] + [[package]] name = "mdurl" version = "0.1.2" @@ -1591,17 +1543,6 @@ files = [ {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, ] -[[package]] -name = "mistune" -version = "0.8.4" -description = "The fastest markdown parser in pure Python" -optional = false -python-versions = "*" -files = [ - {file = "mistune-0.8.4-py2.py3-none-any.whl", hash = "sha256:88a1051873018da288eee8538d476dffe1262495144b33ecb586c4ab266bb8d4"}, - {file = "mistune-0.8.4.tar.gz", hash = "sha256:59a3429db53c50b5c6bcc8a07f8848cb00d7dc8bdb431a4ab41920d201d4756e"}, -] - [[package]] name = "more-itertools" version = "10.5.0" @@ -1635,6 +1576,32 @@ files = [ {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, ] +[[package]] +name = "myst-parser" +version = "4.0.0" +description = "An extended [CommonMark](https://spec.commonmark.org/) compliant parser," +optional = false +python-versions = ">=3.10" +files = [ + {file = "myst_parser-4.0.0-py3-none-any.whl", hash = "sha256:b9317997552424448c6096c2558872fdb6f81d3ecb3a40ce84a7518798f3f28d"}, + {file = "myst_parser-4.0.0.tar.gz", hash = "sha256:851c9dfb44e36e56d15d05e72f02b80da21a9e0d07cba96baf5e2d476bb91531"}, +] + +[package.dependencies] +docutils = ">=0.19,<0.22" +jinja2 = "*" +markdown-it-py = ">=3.0,<4.0" +mdit-py-plugins = ">=0.4.1,<1.0" +pyyaml = "*" +sphinx = ">=7,<9" + +[package.extras] +code-style = ["pre-commit (>=3.0,<4.0)"] +linkify = ["linkify-it-py (>=2.0,<3.0)"] +rtd = ["ipython", "sphinx (>=7)", "sphinx-autodoc2 (>=0.5.0,<0.6.0)", "sphinx-book-theme (>=1.1,<2.0)", "sphinx-copybutton", "sphinx-design", "sphinx-pyscript", "sphinx-tippy (>=0.4.3)", "sphinx-togglebutton", "sphinxext-opengraph (>=0.9.0,<0.10.0)", "sphinxext-rediraffe (>=0.2.7,<0.3.0)"] +testing = ["beautifulsoup4", "coverage[toml]", "defusedxml", "pytest (>=8,<9)", "pytest-cov", "pytest-param-files (>=0.6.0,<0.7.0)", "pytest-regressions", "sphinx-pytest"] +testing-docutils = ["pygments", "pytest (>=8,<9)", "pytest-param-files (>=0.6.0,<0.7.0)"] + [[package]] name = "nitpick" version = "0.35.0" @@ -2657,7 +2624,6 @@ babel = ">=2.13" colorama = {version = ">=0.4.6", markers = "sys_platform == \"win32\""} docutils = ">=0.20,<0.22" imagesize = ">=1.3" -importlib-metadata = {version = ">=6.0", markers = "python_version < \"3.10\""} Jinja2 = ">=3.1" packaging = ">=23.0" Pygments = ">=2.17" @@ -3207,26 +3173,7 @@ url = "https://github.com/yt-dlp/yt-dlp.git" reference = "master" resolved_reference = "cba7868502f04175fecf9ab3e363296aee7ebec2" -[[package]] -name = "zipp" -version = "3.20.2" -description = "Backport of pathlib-compatible object wrapper for zip files" -optional = false -python-versions = ">=3.8" -files = [ - {file = "zipp-3.20.2-py3-none-any.whl", hash = "sha256:a817ac80d6cf4b23bf7f2828b7cabf326f15a001bea8b1f9b49631780ba28350"}, - {file = "zipp-3.20.2.tar.gz", hash = "sha256:bc9eb26f4506fda01b81bcde0ca78103b6e62f991b381fec825435c836edbc29"}, -] - -[package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] -cover = ["pytest-cov"] -doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -enabler = ["pytest-enabler (>=2.2)"] -test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] -type = ["pytest-mypy"] - [metadata] lock-version = "2.0" -python-versions = "^3.9" -content-hash = "da2756bb1658ae4c3a2abcd342fead5a96959996c365a1c5a9859c41cebba6a3" +python-versions = "^3.10" +content-hash = "4e4bea631a0a3ed9032b19c0e01845e9e4bf683a897fdbe52ba6c26f8cd7da5c" diff --git a/pyproject.toml b/pyproject.toml index c67477c0f..5e4472f84 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -41,7 +41,7 @@ include = ["AUTHORS.rst", "CONTRIBUTING.md", "CHANGELOG.rst", "LICENSE", "README scdlbot = "scdlbot.__main__:main" [tool.poetry.dependencies] -python = "^3.9" +python = "^3.10" python-telegram-bot = { version = "21.6", extras = ["webhooks", "job-queue", "http2", "rate-limiter"] } #ptbcontrib = { git = "https://github.com/python-telegram-bot/ptbcontrib.git", branch = "main", extras = ["postgres-persistence"] } # https://python-poetry.org/docs/dependency-specification#path-dependencies @@ -110,7 +110,8 @@ sphinx-autodoc-typehints = "^2.3.0" #m2r2 = "^0.3" # https://github.com/CrossNox/m2r2/issues/68 # https://github.com/CrossNox/m2r2/pull/69 -m2r2 = { git = "https://github.com/adrien-berchet/m2r2.git", branch = "patch-1" } +#m2r2 = { git = "https://github.com/adrien-berchet/m2r2.git", branch = "patch-1" } +myst-parser = "^4.0.0" tomli = "^2.0" recommonmark = "^0.7" typing-extensions = "^4.9" @@ -169,7 +170,6 @@ envlist = py39, py310, py311 [gh-actions] #tox-gh-actions: run tox only on envs which match github actions workflow python version (one env per job) python = - 3.9: py39 3.10: py310 3.11: py311 3.12: py312 diff --git a/requirements-dev.txt b/requirements-dev.txt index a991b04fa..8030376e2 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,97 +1,97 @@ -annotated-types==0.7.0 ; python_version >= "3.9" and python_version < "4.0" -astor==0.8.1 ; python_version >= "3.9" and python_version < "4.0" -attrs==24.2.0 ; python_version >= "3.9" and python_version < "4.0" -authlib==1.3.2 ; python_version >= "3.9" and python_version < "4.0" -autorepr==0.3.0 ; python_version >= "3.9" and python_version < "4.0" -bandit==1.7.10 ; python_version >= "3.9" and python_version < "4.0" -black==24.10.0 ; python_version >= "3.9" and python_version < "4.0" -cattrs==24.1.2 ; python_version >= "3.9" and python_version < "4.0" -certifi==2024.8.30 ; python_version >= "3.9" and python_version < "4.0" -cffi==1.17.1 ; python_version >= "3.9" and python_version < "4.0" and platform_python_implementation != "PyPy" -charset-normalizer==3.4.0 ; python_version >= "3.9" and python_version < "4.0" -click==8.1.7 ; python_version >= "3.9" and python_version < "4.0" -colorama==0.4.6 ; python_version >= "3.9" and python_version < "4.0" and (platform_system == "Windows" or sys_platform == "win32") -configupdater==3.2 ; python_version >= "3.9" and python_version < "4.0" -cryptography==43.0.1 ; python_version >= "3.9" and python_version < "4.0" -darglint==1.8.1 ; python_version >= "3.9" and python_version < "4.0" -dictdiffer==0.9.0 ; python_version >= "3.9" and python_version < "4.0" -doc8==1.1.2 ; python_version >= "3.9" and python_version < "4.0" -docutils==0.20.1 ; python_version >= "3.9" and python_version < "4.0" -dparse==0.6.4b0 ; python_version >= "3.9" and python_version < "4.0" -dpath==2.2.0 ; python_version >= "3.9" and python_version < "4.0" -eradicate==2.3.0 ; python_version >= "3.9" and python_version < "4.0" -exceptiongroup==1.2.2 ; python_version >= "3.9" and python_version < "3.11" -filelock==3.12.4 ; python_version >= "3.9" and python_version < "4.0" -flake8-bandit==4.1.1 ; python_version >= "3.9" and python_version < "4.0" -flake8-broken-line==1.0.0 ; python_version >= "3.9" and python_version < "4.0" -flake8-bugbear==24.8.19 ; python_version >= "3.9" and python_version < "4.0" -flake8-commas==2.1.0 ; python_version >= "3.9" and python_version < "4.0" -flake8-comprehensions==3.15.0 ; python_version >= "3.9" and python_version < "4.0" -flake8-debugger==4.1.2 ; python_version >= "3.9" and python_version < "4.0" -flake8-docstrings==1.7.0 ; python_version >= "3.9" and python_version < "4.0" -flake8-eradicate==1.5.0 ; python_version >= "3.9" and python_version < "4.0" -flake8-isort==6.1.1 ; python_version >= "3.9" and python_version < "4.0" -flake8-quotes==3.4.0 ; python_version >= "3.9" and python_version < "4.0" -flake8-rst-docstrings==0.3.0 ; python_version >= "3.9" and python_version < "4.0" -flake8-string-format==0.3.0 ; python_version >= "3.9" and python_version < "4.0" -flake8==7.1.1 ; python_version >= "3.9" and python_version < "4.0" -flatten-dict==0.4.2 ; python_version >= "3.9" and python_version < "4.0" -furl==2.1.3 ; python_version >= "3.9" and python_version < "4.0" -gitignore-parser==0.1.11 ; python_version >= "3.9" and python_version < "4.0" -identify==2.6.1 ; python_version >= "3.9" and python_version < "4.0" -idna==3.10 ; python_version >= "3.9" and python_version < "4.0" -isort==5.13.2 ; python_version >= "3.9" and python_version < "4.0" -jinja2==3.1.4 ; python_version >= "3.9" and python_version < "4.0" -jmespath==1.0.1 ; python_version >= "3.9" and python_version < "4.0" -loguru==0.7.2 ; python_version >= "3.9" and python_version < "4.0" -markdown-it-py==3.0.0 ; python_version >= "3.9" and python_version < "4.0" -markupsafe==3.0.1 ; python_version >= "3.9" and python_version < "4.0" -marshmallow-polyfield==5.11 ; python_version >= "3.9" and python_version < "4.0" -marshmallow==3.22.0 ; python_version >= "3.9" and python_version < "4.0" -mccabe==0.7.0 ; python_version >= "3.9" and python_version < "4.0" -mdurl==0.1.2 ; python_version >= "3.9" and python_version < "4.0" -more-itertools==10.5.0 ; python_version >= "3.9" and python_version < "4.0" -mypy-extensions==1.0.0 ; python_version >= "3.9" and python_version < "4.0" -nitpick==0.35.0 ; python_version >= "3.9" and python_version < "4.0" -orderedmultidict==1.0.1 ; python_version >= "3.9" and python_version < "4.0" -packaging==24.1 ; python_version >= "3.9" and python_version < "4.0" -pathspec==0.12.1 ; python_version >= "3.9" and python_version < "4.0" -pbr==6.1.0 ; python_version >= "3.9" and python_version < "4.0" -pep8-naming==0.13.3 ; python_version >= "3.9" and python_version < "4.0" -platformdirs==4.3.6 ; python_version >= "3.9" and python_version < "4.0" -pluggy==1.5.0 ; python_version >= "3.9" and python_version < "4.0" -psutil==6.0.0 ; python_version >= "3.9" and python_version < "4.0" -pycodestyle==2.12.1 ; python_version >= "3.9" and python_version < "4.0" -pycparser==2.22 ; python_version >= "3.9" and python_version < "4.0" and platform_python_implementation != "PyPy" -pydantic-core==2.23.4 ; python_version >= "3.9" and python_version < "4.0" -pydantic==2.9.2 ; python_version >= "3.9" and python_version < "4.0" -pydocstyle==6.3.0 ; python_version >= "3.9" and python_version < "4.0" -pyflakes==3.2.0 ; python_version >= "3.9" and python_version < "4.0" -pygments==2.18.0 ; python_version >= "3.9" and python_version < "4.0" -python-slugify==8.0.4 ; python_version >= "3.9" and python_version < "4.0" -pyyaml==6.0.2 ; python_version >= "3.9" and python_version < "4.0" -requests-cache==1.2.1 ; python_version >= "3.9" and python_version < "4.0" -requests==2.32.3 ; python_version >= "3.9" and python_version < "4.0" -restructuredtext-lint==1.4.0 ; python_version >= "3.9" and python_version < "4.0" -rich==13.9.2 ; python_version >= "3.9" and python_version < "4.0" -ruamel-yaml-clib==0.2.8 ; platform_python_implementation == "CPython" and python_version < "3.13" and python_version >= "3.9" -ruamel-yaml==0.18.6 ; python_version >= "3.9" and python_version < "4.0" -safety-schemas==0.0.5 ; python_version >= "3.9" and python_version < "4.0" -safety==3.2.8 ; python_version >= "3.9" and python_version < "4.0" -setuptools==75.1.0 ; python_version >= "3.9" and python_version < "4.0" -shellingham==1.5.4 ; python_version >= "3.9" and python_version < "4.0" -six==1.16.0 ; python_version >= "3.9" and python_version < "4.0" -snowballstemmer==2.2.0 ; python_version >= "3.9" and python_version < "4.0" -sortedcontainers==2.4.0 ; python_version >= "3.9" and python_version < "4.0" -stevedore==5.3.0 ; python_version >= "3.9" and python_version < "4.0" -strenum==0.4.15 ; python_version >= "3.9" and python_version < "4.0" -text-unidecode==1.3 ; python_version >= "3.9" and python_version < "4.0" -toml==0.10.2 ; python_version >= "3.9" and python_version < "4.0" -tomli==2.0.2 ; python_version >= "3.9" and python_version < "3.11" -tomlkit==0.13.2 ; python_version >= "3.9" and python_version < "4.0" -typer==0.12.5 ; python_version >= "3.9" and python_version < "4.0" -typing-extensions==4.12.2 ; python_version >= "3.9" and python_version < "4.0" -url-normalize==1.4.3 ; python_version >= "3.9" and python_version < "4.0" -urllib3==2.2.3 ; python_version >= "3.9" and python_version < "4.0" -wemake-python-styleguide==0.19.2 ; python_version >= "3.9" and python_version < "4.0" -win32-setctime==1.1.0 ; python_version >= "3.9" and python_version < "4.0" and sys_platform == "win32" +annotated-types==0.7.0 ; python_version >= "3.10" and python_version < "4.0" +astor==0.8.1 ; python_version >= "3.10" and python_version < "4.0" +attrs==24.2.0 ; python_version >= "3.10" and python_version < "4.0" +authlib==1.3.2 ; python_version >= "3.10" and python_version < "4.0" +autorepr==0.3.0 ; python_version >= "3.10" and python_version < "4.0" +bandit==1.7.10 ; python_version >= "3.10" and python_version < "4.0" +black==24.10.0 ; python_version >= "3.10" and python_version < "4.0" +cattrs==24.1.2 ; python_version >= "3.10" and python_version < "4.0" +certifi==2024.8.30 ; python_version >= "3.10" and python_version < "4.0" +cffi==1.17.1 ; python_version >= "3.10" and python_version < "4.0" and platform_python_implementation != "PyPy" +charset-normalizer==3.4.0 ; python_version >= "3.10" and python_version < "4.0" +click==8.1.7 ; python_version >= "3.10" and python_version < "4.0" +colorama==0.4.6 ; python_version >= "3.10" and python_version < "4.0" and (platform_system == "Windows" or sys_platform == "win32") +configupdater==3.2 ; python_version >= "3.10" and python_version < "4.0" +cryptography==43.0.1 ; python_version >= "3.10" and python_version < "4.0" +darglint==1.8.1 ; python_version >= "3.10" and python_version < "4.0" +dictdiffer==0.9.0 ; python_version >= "3.10" and python_version < "4.0" +doc8==1.1.2 ; python_version >= "3.10" and python_version < "4.0" +docutils==0.21.2 ; python_version >= "3.10" and python_version < "4.0" +dparse==0.6.4b0 ; python_version >= "3.10" and python_version < "4.0" +dpath==2.2.0 ; python_version >= "3.10" and python_version < "4.0" +eradicate==2.3.0 ; python_version >= "3.10" and python_version < "4.0" +exceptiongroup==1.2.2 ; python_version >= "3.10" and python_version < "3.11" +filelock==3.12.4 ; python_version >= "3.10" and python_version < "4.0" +flake8-bandit==4.1.1 ; python_version >= "3.10" and python_version < "4.0" +flake8-broken-line==1.0.0 ; python_version >= "3.10" and python_version < "4.0" +flake8-bugbear==24.8.19 ; python_version >= "3.10" and python_version < "4.0" +flake8-commas==2.1.0 ; python_version >= "3.10" and python_version < "4.0" +flake8-comprehensions==3.15.0 ; python_version >= "3.10" and python_version < "4.0" +flake8-debugger==4.1.2 ; python_version >= "3.10" and python_version < "4.0" +flake8-docstrings==1.7.0 ; python_version >= "3.10" and python_version < "4.0" +flake8-eradicate==1.5.0 ; python_version >= "3.10" and python_version < "4.0" +flake8-isort==6.1.1 ; python_version >= "3.10" and python_version < "4.0" +flake8-quotes==3.4.0 ; python_version >= "3.10" and python_version < "4.0" +flake8-rst-docstrings==0.3.0 ; python_version >= "3.10" and python_version < "4.0" +flake8-string-format==0.3.0 ; python_version >= "3.10" and python_version < "4.0" +flake8==7.1.1 ; python_version >= "3.10" and python_version < "4.0" +flatten-dict==0.4.2 ; python_version >= "3.10" and python_version < "4.0" +furl==2.1.3 ; python_version >= "3.10" and python_version < "4.0" +gitignore-parser==0.1.11 ; python_version >= "3.10" and python_version < "4.0" +identify==2.6.1 ; python_version >= "3.10" and python_version < "4.0" +idna==3.10 ; python_version >= "3.10" and python_version < "4.0" +isort==5.13.2 ; python_version >= "3.10" and python_version < "4.0" +jinja2==3.1.4 ; python_version >= "3.10" and python_version < "4.0" +jmespath==1.0.1 ; python_version >= "3.10" and python_version < "4.0" +loguru==0.7.2 ; python_version >= "3.10" and python_version < "4.0" +markdown-it-py==3.0.0 ; python_version >= "3.10" and python_version < "4.0" +markupsafe==3.0.1 ; python_version >= "3.10" and python_version < "4.0" +marshmallow-polyfield==5.11 ; python_version >= "3.10" and python_version < "4.0" +marshmallow==3.22.0 ; python_version >= "3.10" and python_version < "4.0" +mccabe==0.7.0 ; python_version >= "3.10" and python_version < "4.0" +mdurl==0.1.2 ; python_version >= "3.10" and python_version < "4.0" +more-itertools==10.5.0 ; python_version >= "3.10" and python_version < "4.0" +mypy-extensions==1.0.0 ; python_version >= "3.10" and python_version < "4.0" +nitpick==0.35.0 ; python_version >= "3.10" and python_version < "4.0" +orderedmultidict==1.0.1 ; python_version >= "3.10" and python_version < "4.0" +packaging==24.1 ; python_version >= "3.10" and python_version < "4.0" +pathspec==0.12.1 ; python_version >= "3.10" and python_version < "4.0" +pbr==6.1.0 ; python_version >= "3.10" and python_version < "4.0" +pep8-naming==0.13.3 ; python_version >= "3.10" and python_version < "4.0" +platformdirs==4.3.6 ; python_version >= "3.10" and python_version < "4.0" +pluggy==1.5.0 ; python_version >= "3.10" and python_version < "4.0" +psutil==6.0.0 ; python_version >= "3.10" and python_version < "4.0" +pycodestyle==2.12.1 ; python_version >= "3.10" and python_version < "4.0" +pycparser==2.22 ; python_version >= "3.10" and python_version < "4.0" and platform_python_implementation != "PyPy" +pydantic-core==2.23.4 ; python_version >= "3.10" and python_version < "4.0" +pydantic==2.9.2 ; python_version >= "3.10" and python_version < "4.0" +pydocstyle==6.3.0 ; python_version >= "3.10" and python_version < "4.0" +pyflakes==3.2.0 ; python_version >= "3.10" and python_version < "4.0" +pygments==2.18.0 ; python_version >= "3.10" and python_version < "4.0" +python-slugify==8.0.4 ; python_version >= "3.10" and python_version < "4.0" +pyyaml==6.0.2 ; python_version >= "3.10" and python_version < "4.0" +requests-cache==1.2.1 ; python_version >= "3.10" and python_version < "4.0" +requests==2.32.3 ; python_version >= "3.10" and python_version < "4.0" +restructuredtext-lint==1.4.0 ; python_version >= "3.10" and python_version < "4.0" +rich==13.9.2 ; python_version >= "3.10" and python_version < "4.0" +ruamel-yaml-clib==0.2.8 ; platform_python_implementation == "CPython" and python_version < "3.13" and python_version >= "3.10" +ruamel-yaml==0.18.6 ; python_version >= "3.10" and python_version < "4.0" +safety-schemas==0.0.5 ; python_version >= "3.10" and python_version < "4.0" +safety==3.2.8 ; python_version >= "3.10" and python_version < "4.0" +setuptools==75.1.0 ; python_version >= "3.10" and python_version < "4.0" +shellingham==1.5.4 ; python_version >= "3.10" and python_version < "4.0" +six==1.16.0 ; python_version >= "3.10" and python_version < "4.0" +snowballstemmer==2.2.0 ; python_version >= "3.10" and python_version < "4.0" +sortedcontainers==2.4.0 ; python_version >= "3.10" and python_version < "4.0" +stevedore==5.3.0 ; python_version >= "3.10" and python_version < "4.0" +strenum==0.4.15 ; python_version >= "3.10" and python_version < "4.0" +text-unidecode==1.3 ; python_version >= "3.10" and python_version < "4.0" +toml==0.10.2 ; python_version >= "3.10" and python_version < "4.0" +tomli==2.0.2 ; python_version >= "3.10" and python_version < "3.11" +tomlkit==0.13.2 ; python_version >= "3.10" and python_version < "4.0" +typer==0.12.5 ; python_version >= "3.10" and python_version < "4.0" +typing-extensions==4.12.2 ; python_version >= "3.10" and python_version < "4.0" +url-normalize==1.4.3 ; python_version >= "3.10" and python_version < "4.0" +urllib3==2.2.3 ; python_version >= "3.10" and python_version < "4.0" +wemake-python-styleguide==0.19.2 ; python_version >= "3.10" and python_version < "4.0" +win32-setctime==1.1.0 ; python_version >= "3.10" and python_version < "4.0" and sys_platform == "win32" diff --git a/requirements-docs.txt b/requirements-docs.txt index 27a56ee41..634206507 100644 --- a/requirements-docs.txt +++ b/requirements-docs.txt @@ -1,31 +1,32 @@ -alabaster==0.7.16 ; python_version >= "3.9" and python_version < "4.0" -babel==2.16.0 ; python_version >= "3.9" and python_version < "4.0" -certifi==2024.8.30 ; python_version >= "3.9" and python_version < "4.0" -charset-normalizer==3.4.0 ; python_version >= "3.9" and python_version < "4.0" -colorama==0.4.6 ; python_version >= "3.9" and python_version < "4.0" and sys_platform == "win32" -commonmark==0.9.1 ; python_version >= "3.9" and python_version < "4.0" -docutils==0.20.1 ; python_version >= "3.9" and python_version < "4.0" -idna==3.10 ; python_version >= "3.9" and python_version < "4.0" -imagesize==1.4.1 ; python_version >= "3.9" and python_version < "4.0" -importlib-metadata==8.5.0 ; python_version >= "3.9" and python_version < "3.10" -jinja2==3.1.4 ; python_version >= "3.9" and python_version < "4.0" -m2r2 @ git+https://github.com/adrien-berchet/m2r2.git@d8e4f6e567dfe2452070c031a6e1d47046ac8ddf ; python_version >= "3.9" and python_version < "4.0" -markupsafe==3.0.1 ; python_version >= "3.9" and python_version < "4.0" -mistune==0.8.4 ; python_version >= "3.9" and python_version < "4.0" -packaging==24.1 ; python_version >= "3.9" and python_version < "4.0" -pygments==2.18.0 ; python_version >= "3.9" and python_version < "4.0" -recommonmark==0.7.1 ; python_version >= "3.9" and python_version < "4.0" -requests==2.32.3 ; python_version >= "3.9" and python_version < "4.0" -snowballstemmer==2.2.0 ; python_version >= "3.9" and python_version < "4.0" -sphinx-autodoc-typehints==2.3.0 ; python_version >= "3.9" and python_version < "4.0" -sphinx==7.4.7 ; python_version >= "3.9" and python_version < "4.0" -sphinxcontrib-applehelp==2.0.0 ; python_version >= "3.9" and python_version < "4.0" -sphinxcontrib-devhelp==2.0.0 ; python_version >= "3.9" and python_version < "4.0" -sphinxcontrib-htmlhelp==2.1.0 ; python_version >= "3.9" and python_version < "4.0" -sphinxcontrib-jsmath==1.0.1 ; python_version >= "3.9" and python_version < "4.0" -sphinxcontrib-qthelp==2.0.0 ; python_version >= "3.9" and python_version < "4.0" -sphinxcontrib-serializinghtml==2.0.0 ; python_version >= "3.9" and python_version < "4.0" -tomli==2.0.2 ; python_version >= "3.9" and python_version < "4.0" -typing-extensions==4.12.2 ; python_version >= "3.9" and python_version < "4.0" -urllib3==2.2.3 ; python_version >= "3.9" and python_version < "4.0" -zipp==3.20.2 ; python_version >= "3.9" and python_version < "3.10" +alabaster==0.7.16 ; python_version >= "3.10" and python_version < "4.0" +babel==2.16.0 ; python_version >= "3.10" and python_version < "4.0" +certifi==2024.8.30 ; python_version >= "3.10" and python_version < "4.0" +charset-normalizer==3.4.0 ; python_version >= "3.10" and python_version < "4.0" +colorama==0.4.6 ; python_version >= "3.10" and python_version < "4.0" and sys_platform == "win32" +commonmark==0.9.1 ; python_version >= "3.10" and python_version < "4.0" +docutils==0.21.2 ; python_version >= "3.10" and python_version < "4.0" +idna==3.10 ; python_version >= "3.10" and python_version < "4.0" +imagesize==1.4.1 ; python_version >= "3.10" and python_version < "4.0" +jinja2==3.1.4 ; python_version >= "3.10" and python_version < "4.0" +markdown-it-py==3.0.0 ; python_version >= "3.10" and python_version < "4.0" +markupsafe==3.0.1 ; python_version >= "3.10" and python_version < "4.0" +mdit-py-plugins==0.4.2 ; python_version >= "3.10" and python_version < "4.0" +mdurl==0.1.2 ; python_version >= "3.10" and python_version < "4.0" +myst-parser==4.0.0 ; python_version >= "3.10" and python_version < "4.0" +packaging==24.1 ; python_version >= "3.10" and python_version < "4.0" +pygments==2.18.0 ; python_version >= "3.10" and python_version < "4.0" +pyyaml==6.0.2 ; python_version >= "3.10" and python_version < "4.0" +recommonmark==0.7.1 ; python_version >= "3.10" and python_version < "4.0" +requests==2.32.3 ; python_version >= "3.10" and python_version < "4.0" +snowballstemmer==2.2.0 ; python_version >= "3.10" and python_version < "4.0" +sphinx-autodoc-typehints==2.3.0 ; python_version >= "3.10" and python_version < "4.0" +sphinx==7.4.7 ; python_version >= "3.10" and python_version < "4.0" +sphinxcontrib-applehelp==2.0.0 ; python_version >= "3.10" and python_version < "4.0" +sphinxcontrib-devhelp==2.0.0 ; python_version >= "3.10" and python_version < "4.0" +sphinxcontrib-htmlhelp==2.1.0 ; python_version >= "3.10" and python_version < "4.0" +sphinxcontrib-jsmath==1.0.1 ; python_version >= "3.10" and python_version < "4.0" +sphinxcontrib-qthelp==2.0.0 ; python_version >= "3.10" and python_version < "4.0" +sphinxcontrib-serializinghtml==2.0.0 ; python_version >= "3.10" and python_version < "4.0" +tomli==2.0.2 ; python_version >= "3.10" and python_version < "4.0" +typing-extensions==4.12.2 ; python_version >= "3.10" and python_version < "4.0" +urllib3==2.2.3 ; python_version >= "3.10" and python_version < "4.0" diff --git a/requirements.txt b/requirements.txt index 841ed2778..1ebb29a09 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,61 +1,59 @@ -aiolimiter==1.1.0 ; python_version >= "3.9" and python_version < "4.0" -anyio==4.6.1 ; python_version >= "3.9" and python_version < "4.0" -apscheduler==3.10.4 ; python_version >= "3.9" and python_version < "4.0" -bandcamp-downloader==0.0.16 ; python_version >= "3.9" and python_version < "4.0" -beautifulsoup4==4.13.0b2 ; python_version >= "3.9" and python_version < "4.0" -boltons==24.0.0 ; python_version >= "3.9" and python_version < "4.0" -brotli==1.1.0 ; python_version >= "3.9" and python_version < "4.0" and implementation_name == "cpython" -brotlicffi==1.1.0.0 ; python_version >= "3.9" and python_version < "4.0" and implementation_name != "cpython" -certifi==2024.8.30 ; python_version >= "3.9" and python_version < "4.0" -cffi==1.17.1 ; python_version >= "3.9" and python_version < "4.0" and implementation_name != "cpython" -charset-normalizer==3.4.0 ; python_version >= "3.9" and python_version < "4.0" -colorama==0.4.6 ; python_version >= "3.9" and python_version < "4.0" and platform_system == "Windows" -dacite==1.8.1 ; python_version >= "3.9" and python_version < "4.0" -demjson3==3.0.6 ; python_version >= "3.9" and python_version < "4.0" -docopt-ng==0.9.0 ; python_version >= "3.9" and python_version < "4.0" -exceptiongroup==1.2.2 ; python_version >= "3.9" and python_version < "3.11" -fake-useragent==1.5.1 ; python_version >= "3.9" and python_version < "4.0" -ffmpeg-python==0.2.0 ; python_version >= "3.9" and python_version < "4.0" -filelock==3.12.4 ; python_version >= "3.9" and python_version < "4.0" -future==1.0.0 ; python_version >= "3.9" and python_version < "4.0" -h11==0.14.0 ; python_version >= "3.9" and python_version < "4.0" -h2==4.1.0 ; python_version >= "3.9" and python_version < "4.0" -hpack==4.0.0 ; python_version >= "3.9" and python_version < "4.0" -httpcore==1.0.6 ; python_version >= "3.9" and python_version < "4.0" -httpx==0.27.2 ; python_version >= "3.9" and python_version < "4.0" -httpx[http2]==0.27.2 ; python_version >= "3.9" and python_version < "4.0" -hyperframe==6.0.1 ; python_version >= "3.9" and python_version < "4.0" -idna==3.10 ; python_version >= "3.9" and python_version < "4.0" -importlib-resources==6.4.5 ; python_version >= "3.9" and python_version < "3.10" -mutagen==1.47.0 ; python_version >= "3.9" and python_version < "4.0" -pathvalidate==3.2.1 ; python_version >= "3.9" and python_version < "4.0" -pebble==5.0.7 ; python_version >= "3.9" and python_version < "4.0" -plumbum==1.9.0 ; python_version >= "3.9" and python_version < "4.0" -prometheus-client==0.21.0 ; python_version >= "3.9" and python_version < "4.0" -pycparser==2.22 ; python_version >= "3.9" and python_version < "4.0" and implementation_name != "cpython" -pycryptodomex==3.21.0 ; python_version >= "3.9" and python_version < "4.0" -pysocks==1.7.1 ; python_version >= "3.9" and python_version < "4.0" -python-dateutil==2.9.0.post0 ; python_version >= "3.9" and python_version < "4.0" -python-telegram-bot[http2,job-queue,rate-limiter,webhooks]==21.6 ; python_version >= "3.9" and python_version < "4.0" -pytz==2024.2 ; python_version >= "3.9" and python_version < "4.0" -pywin32==308 ; platform_system == "Windows" and platform_python_implementation != "PyPy" and python_version >= "3.9" and python_version < "4.0" -requests==2.32.3 ; python_version >= "3.9" and python_version < "4.0" -requests[socks]==2.32.3 ; python_version >= "3.9" and python_version < "4.0" -scdl @ git+https://github.com/scdl-org/scdl.git@9732b538db8ca5062df818eb3a17bed382b07941 ; python_version >= "3.9" and python_version < "4.0" -sdnotify==0.3.2 ; python_version >= "3.9" and python_version < "4.0" -six==1.16.0 ; python_version >= "3.9" and python_version < "4.0" -sniffio==1.3.1 ; python_version >= "3.9" and python_version < "4.0" -soundcloud-v2==1.6.0 ; python_version >= "3.9" and python_version < "4.0" -soupsieve==2.6 ; python_version >= "3.9" and python_version < "4.0" -termcolor==2.5.0 ; python_version >= "3.9" and python_version < "4.0" -tornado==6.4.1 ; python_version >= "3.9" and python_version < "4.0" -tqdm==4.66.5 ; python_version >= "3.9" and python_version < "4.0" -typing-extensions==4.12.2 ; python_version >= "3.9" and python_version < "4.0" -tzdata==2024.2 ; python_version >= "3.9" and python_version < "4.0" and platform_system == "Windows" -tzlocal==5.2 ; python_version >= "3.9" and python_version < "4.0" -unicode-slugify==0.1.5 ; python_version >= "3.9" and python_version < "4.0" -unidecode==1.3.8 ; python_version >= "3.9" and python_version < "4.0" -urllib3==2.2.3 ; python_version >= "3.9" and python_version < "4.0" -websockets==13.1 ; python_version >= "3.9" and python_version < "4.0" -yt-dlp @ git+https://github.com/yt-dlp/yt-dlp.git@cba7868502f04175fecf9ab3e363296aee7ebec2 ; python_version >= "3.9" and python_version < "4.0" -zipp==3.20.2 ; python_version >= "3.9" and python_version < "3.10" +aiolimiter==1.1.0 ; python_version >= "3.10" and python_version < "4.0" +anyio==4.6.1 ; python_version >= "3.10" and python_version < "4.0" +apscheduler==3.10.4 ; python_version >= "3.10" and python_version < "4.0" +bandcamp-downloader==0.0.16 ; python_version >= "3.10" and python_version < "4.0" +beautifulsoup4==4.13.0b2 ; python_version >= "3.10" and python_version < "4.0" +boltons==24.0.0 ; python_version >= "3.10" and python_version < "4.0" +brotli==1.1.0 ; python_version >= "3.10" and python_version < "4.0" and implementation_name == "cpython" +brotlicffi==1.1.0.0 ; python_version >= "3.10" and python_version < "4.0" and implementation_name != "cpython" +certifi==2024.8.30 ; python_version >= "3.10" and python_version < "4.0" +cffi==1.17.1 ; python_version >= "3.10" and python_version < "4.0" and implementation_name != "cpython" +charset-normalizer==3.4.0 ; python_version >= "3.10" and python_version < "4.0" +colorama==0.4.6 ; python_version >= "3.10" and python_version < "4.0" and platform_system == "Windows" +dacite==1.8.1 ; python_version >= "3.10" and python_version < "4.0" +demjson3==3.0.6 ; python_version >= "3.10" and python_version < "4.0" +docopt-ng==0.9.0 ; python_version >= "3.10" and python_version < "4.0" +exceptiongroup==1.2.2 ; python_version >= "3.10" and python_version < "3.11" +fake-useragent==1.5.1 ; python_version >= "3.10" and python_version < "4.0" +ffmpeg-python==0.2.0 ; python_version >= "3.10" and python_version < "4.0" +filelock==3.12.4 ; python_version >= "3.10" and python_version < "4.0" +future==1.0.0 ; python_version >= "3.10" and python_version < "4.0" +h11==0.14.0 ; python_version >= "3.10" and python_version < "4.0" +h2==4.1.0 ; python_version >= "3.10" and python_version < "4.0" +hpack==4.0.0 ; python_version >= "3.10" and python_version < "4.0" +httpcore==1.0.6 ; python_version >= "3.10" and python_version < "4.0" +httpx==0.27.2 ; python_version >= "3.10" and python_version < "4.0" +httpx[http2]==0.27.2 ; python_version >= "3.10" and python_version < "4.0" +hyperframe==6.0.1 ; python_version >= "3.10" and python_version < "4.0" +idna==3.10 ; python_version >= "3.10" and python_version < "4.0" +mutagen==1.47.0 ; python_version >= "3.10" and python_version < "4.0" +pathvalidate==3.2.1 ; python_version >= "3.10" and python_version < "4.0" +pebble==5.0.7 ; python_version >= "3.10" and python_version < "4.0" +plumbum==1.9.0 ; python_version >= "3.10" and python_version < "4.0" +prometheus-client==0.21.0 ; python_version >= "3.10" and python_version < "4.0" +pycparser==2.22 ; python_version >= "3.10" and python_version < "4.0" and implementation_name != "cpython" +pycryptodomex==3.21.0 ; python_version >= "3.10" and python_version < "4.0" +pysocks==1.7.1 ; python_version >= "3.10" and python_version < "4.0" +python-dateutil==2.9.0.post0 ; python_version >= "3.10" and python_version < "4.0" +python-telegram-bot[http2,job-queue,rate-limiter,webhooks]==21.6 ; python_version >= "3.10" and python_version < "4.0" +pytz==2024.2 ; python_version >= "3.10" and python_version < "4.0" +pywin32==308 ; platform_system == "Windows" and platform_python_implementation != "PyPy" and python_version >= "3.10" and python_version < "4.0" +requests==2.32.3 ; python_version >= "3.10" and python_version < "4.0" +requests[socks]==2.32.3 ; python_version >= "3.10" and python_version < "4.0" +scdl @ git+https://github.com/scdl-org/scdl.git@9732b538db8ca5062df818eb3a17bed382b07941 ; python_version >= "3.10" and python_version < "4.0" +sdnotify==0.3.2 ; python_version >= "3.10" and python_version < "4.0" +six==1.16.0 ; python_version >= "3.10" and python_version < "4.0" +sniffio==1.3.1 ; python_version >= "3.10" and python_version < "4.0" +soundcloud-v2==1.6.0 ; python_version >= "3.10" and python_version < "4.0" +soupsieve==2.6 ; python_version >= "3.10" and python_version < "4.0" +termcolor==2.5.0 ; python_version >= "3.10" and python_version < "4.0" +tornado==6.4.1 ; python_version >= "3.10" and python_version < "4.0" +tqdm==4.66.5 ; python_version >= "3.10" and python_version < "4.0" +typing-extensions==4.12.2 ; python_version >= "3.10" and python_version < "4.0" +tzdata==2024.2 ; python_version >= "3.10" and python_version < "4.0" and platform_system == "Windows" +tzlocal==5.2 ; python_version >= "3.10" and python_version < "4.0" +unicode-slugify==0.1.5 ; python_version >= "3.10" and python_version < "4.0" +unidecode==1.3.8 ; python_version >= "3.10" and python_version < "4.0" +urllib3==2.2.3 ; python_version >= "3.10" and python_version < "4.0" +websockets==13.1 ; python_version >= "3.10" and python_version < "4.0" +yt-dlp @ git+https://github.com/yt-dlp/yt-dlp.git@cba7868502f04175fecf9ab3e363296aee7ebec2 ; python_version >= "3.10" and python_version < "4.0"