Merge pull request #4 from Programvareverkstedet/dependabot/pip/yt-dlp-2023.9.24

Bump yt-dlp from 2023.7.6 to 2023.9.24
This commit is contained in:
Peder Bergebakken Sundt 2023-10-03 17:23:32 +02:00 committed by GitHub
commit 5d7e23c968
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 55 deletions

62
poetry.lock generated
View File

@ -1,10 +1,9 @@
# This file is automatically @generated by Poetry and should not be changed by hand. # This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand.
[[package]] [[package]]
name = "aiofiles" name = "aiofiles"
version = "0.8.0" version = "0.8.0"
description = "File support for asyncio." description = "File support for asyncio."
category = "main"
optional = false optional = false
python-versions = ">=3.6,<4.0" python-versions = ">=3.6,<4.0"
files = [ files = [
@ -16,7 +15,6 @@ files = [
name = "astroid" name = "astroid"
version = "2.9.3" version = "2.9.3"
description = "An abstract syntax tree for Python with inference support." description = "An abstract syntax tree for Python with inference support."
category = "dev"
optional = false optional = false
python-versions = ">=3.6.2" python-versions = ">=3.6.2"
files = [ files = [
@ -35,7 +33,6 @@ wrapt = ">=1.11,<1.14"
name = "autopep8" name = "autopep8"
version = "1.6.0" version = "1.6.0"
description = "A tool that automatically formats Python code to conform to the PEP 8 style guide" description = "A tool that automatically formats Python code to conform to the PEP 8 style guide"
category = "dev"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -51,7 +48,6 @@ toml = "*"
name = "brotli" name = "brotli"
version = "1.0.9" version = "1.0.9"
description = "Python bindings for the Brotli compression library" description = "Python bindings for the Brotli compression library"
category = "main"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -143,7 +139,6 @@ files = [
name = "brotlicffi" name = "brotlicffi"
version = "1.0.9.2" version = "1.0.9.2"
description = "Python CFFI bindings to the Brotli library" description = "Python CFFI bindings to the Brotli library"
category = "main"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -186,7 +181,6 @@ cffi = ">=1.0.0"
name = "certifi" name = "certifi"
version = "2023.7.22" version = "2023.7.22"
description = "Python package for providing Mozilla's CA Bundle." description = "Python package for providing Mozilla's CA Bundle."
category = "main"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -198,7 +192,6 @@ files = [
name = "cffi" name = "cffi"
version = "1.15.1" version = "1.15.1"
description = "Foreign Function Interface for Python calling C code." description = "Foreign Function Interface for Python calling C code."
category = "main"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -275,7 +268,6 @@ pycparser = "*"
name = "colorama" name = "colorama"
version = "0.4.4" version = "0.4.4"
description = "Cross-platform colored terminal text." description = "Cross-platform colored terminal text."
category = "dev"
optional = false optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
files = [ files = [
@ -287,7 +279,6 @@ files = [
name = "flake8" name = "flake8"
version = "4.0.1" version = "4.0.1"
description = "the modular source code checker: pep8 pyflakes and co" description = "the modular source code checker: pep8 pyflakes and co"
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -305,7 +296,6 @@ pyflakes = ">=2.4.0,<2.5.0"
name = "httptools" name = "httptools"
version = "0.3.0" version = "0.3.0"
description = "A collection of framework independent HTTP protocol utils." description = "A collection of framework independent HTTP protocol utils."
category = "main"
optional = false optional = false
python-versions = ">=3.5.0" python-versions = ">=3.5.0"
files = [ files = [
@ -342,7 +332,6 @@ test = ["Cython (>=0.29.24,<0.30.0)"]
name = "importlib-metadata" name = "importlib-metadata"
version = "4.2.0" version = "4.2.0"
description = "Read metadata from Python packages" description = "Read metadata from Python packages"
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -362,7 +351,6 @@ testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pep517",
name = "isort" name = "isort"
version = "5.10.1" version = "5.10.1"
description = "A Python utility / library to sort Python imports." description = "A Python utility / library to sort Python imports."
category = "dev"
optional = false optional = false
python-versions = ">=3.6.1,<4.0" python-versions = ">=3.6.1,<4.0"
files = [ files = [
@ -380,7 +368,6 @@ requirements-deprecated-finder = ["pip-api", "pipreqs"]
name = "jedi" name = "jedi"
version = "0.18.1" version = "0.18.1"
description = "An autocompletion tool for Python that can be used for text editors." description = "An autocompletion tool for Python that can be used for text editors."
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -399,7 +386,6 @@ testing = ["Django (<3.1)", "colorama", "docopt", "pytest (<7.0.0)"]
name = "lazy-object-proxy" name = "lazy-object-proxy"
version = "1.7.1" version = "1.7.1"
description = "A fast and thorough lazy object proxy." description = "A fast and thorough lazy object proxy."
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -446,7 +432,6 @@ files = [
name = "mccabe" name = "mccabe"
version = "0.6.1" version = "0.6.1"
description = "McCabe checker, plugin for flake8" description = "McCabe checker, plugin for flake8"
category = "dev"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -458,7 +443,6 @@ files = [
name = "mpv" name = "mpv"
version = "0.1" version = "0.1"
description = "A python interface to the mpv media player" description = "A python interface to the mpv media player"
category = "main"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -469,7 +453,6 @@ files = [
name = "multidict" name = "multidict"
version = "5.2.0" version = "5.2.0"
description = "multidict implementation" description = "multidict implementation"
category = "main"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -551,7 +534,6 @@ files = [
name = "mutagen" name = "mutagen"
version = "1.47.0" version = "1.47.0"
description = "read and write audio tags for many formats" description = "read and write audio tags for many formats"
category = "main"
optional = false optional = false
python-versions = ">=3.7" python-versions = ">=3.7"
files = [ files = [
@ -563,7 +545,6 @@ files = [
name = "parso" name = "parso"
version = "0.8.3" version = "0.8.3"
description = "A Python Parser" description = "A Python Parser"
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -579,7 +560,6 @@ testing = ["docopt", "pytest (<6.0.0)"]
name = "platformdirs" name = "platformdirs"
version = "2.5.1" version = "2.5.1"
description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
category = "dev"
optional = false optional = false
python-versions = ">=3.7" python-versions = ">=3.7"
files = [ files = [
@ -595,7 +575,6 @@ test = ["appdirs (==1.4.4)", "pytest (>=6)", "pytest-cov (>=2.7)", "pytest-mock
name = "pluggy" name = "pluggy"
version = "1.0.0" version = "1.0.0"
description = "plugin and hook calling mechanisms for python" description = "plugin and hook calling mechanisms for python"
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -614,7 +593,6 @@ testing = ["pytest", "pytest-benchmark"]
name = "pycodestyle" name = "pycodestyle"
version = "2.8.0" version = "2.8.0"
description = "Python style guide checker" description = "Python style guide checker"
category = "dev"
optional = false optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
files = [ files = [
@ -626,7 +604,6 @@ files = [
name = "pycparser" name = "pycparser"
version = "2.21" version = "2.21"
description = "C parser in Python" description = "C parser in Python"
category = "main"
optional = false optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
files = [ files = [
@ -638,7 +615,6 @@ files = [
name = "pycryptodomex" name = "pycryptodomex"
version = "3.18.0" version = "3.18.0"
description = "Cryptographic library for Python" description = "Cryptographic library for Python"
category = "main"
optional = false optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
files = [ files = [
@ -680,7 +656,6 @@ files = [
name = "pydocstyle" name = "pydocstyle"
version = "6.1.1" version = "6.1.1"
description = "Python docstring style checker" description = "Python docstring style checker"
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -698,7 +673,6 @@ toml = ["toml"]
name = "pyflakes" name = "pyflakes"
version = "2.4.0" version = "2.4.0"
description = "passive checker of Python programs" description = "passive checker of Python programs"
category = "dev"
optional = false optional = false
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
files = [ files = [
@ -710,7 +684,6 @@ files = [
name = "pylint" name = "pylint"
version = "2.12.2" version = "2.12.2"
description = "python code static checker" description = "python code static checker"
category = "dev"
optional = false optional = false
python-versions = ">=3.6.2" python-versions = ">=3.6.2"
files = [ files = [
@ -731,7 +704,6 @@ typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""
name = "python-lsp-jsonrpc" name = "python-lsp-jsonrpc"
version = "1.0.0" version = "1.0.0"
description = "JSON RPC 2.0 server library" description = "JSON RPC 2.0 server library"
category = "dev"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -749,7 +721,6 @@ test = ["coverage", "pycodestyle", "pyflakes", "pylint", "pytest", "pytest-cov"]
name = "python-lsp-server" name = "python-lsp-server"
version = "1.3.3" version = "1.3.3"
description = "Python Language Server for the Language Server Protocol" description = "Python Language Server for the Language Server Protocol"
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -790,7 +761,6 @@ yapf = ["yapf"]
name = "pyyaml" name = "pyyaml"
version = "6.0" version = "6.0"
description = "YAML parser and emitter for Python" description = "YAML parser and emitter for Python"
category = "main"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -840,7 +810,6 @@ files = [
name = "rope" name = "rope"
version = "0.22.0" version = "0.22.0"
description = "a python refactoring library..." description = "a python refactoring library..."
category = "dev"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -855,7 +824,6 @@ dev = ["build", "pytest", "pytest-timeout"]
name = "sanic" name = "sanic"
version = "21.12.2" version = "21.12.2"
description = "A web server and web framework that's written to go fast. Build fast. Run fast." description = "A web server and web framework that's written to go fast. Build fast. Run fast."
category = "main"
optional = false optional = false
python-versions = ">=3.7" python-versions = ">=3.7"
files = [ files = [
@ -873,17 +841,16 @@ uvloop = {version = ">=0.5.3", markers = "sys_platform != \"win32\" and implemen
websockets = ">=10.0" websockets = ">=10.0"
[package.extras] [package.extras]
all = ["bandit", "beautifulsoup4", "black", "chardet (>=3.0.0,<4.0.0)", "coverage (==5.3)", "cryptography", "docutils", "flake8", "gunicorn (==20.0.4)", "isort (>=5.0.0)", "m2r2", "mistune (<2.0.0)", "mypy (>=0.901,<0.910)", "pygments", "pytest (==6.2.5)", "pytest-benchmark", "pytest-cov", "pytest-sanic", "pytest-sugar", "sanic-testing (>=0.7.0)", "sphinx (>=2.1.2)", "sphinx-rtd-theme (>=0.4.3)", "towncrier", "tox", "types-ujson", "uvicorn (<0.15.0)"] all = ["bandit", "beautifulsoup4", "black", "chardet (==3.*)", "coverage (==5.3)", "cryptography", "docutils", "flake8", "gunicorn (==20.0.4)", "isort (>=5.0.0)", "m2r2", "mistune (<2.0.0)", "mypy (>=0.901,<0.910)", "pygments", "pytest (==6.2.5)", "pytest-benchmark", "pytest-cov", "pytest-sanic", "pytest-sugar", "sanic-testing (>=0.7.0)", "sphinx (>=2.1.2)", "sphinx-rtd-theme (>=0.4.3)", "towncrier", "tox", "types-ujson", "uvicorn (<0.15.0)"]
dev = ["bandit", "beautifulsoup4", "black", "chardet (>=3.0.0,<4.0.0)", "coverage (==5.3)", "cryptography", "docutils", "flake8", "gunicorn (==20.0.4)", "isort (>=5.0.0)", "mypy (>=0.901,<0.910)", "pygments", "pytest (==6.2.5)", "pytest-benchmark", "pytest-cov", "pytest-sanic", "pytest-sugar", "sanic-testing (>=0.7.0)", "towncrier", "tox", "types-ujson", "uvicorn (<0.15.0)"] dev = ["bandit", "beautifulsoup4", "black", "chardet (==3.*)", "coverage (==5.3)", "cryptography", "docutils", "flake8", "gunicorn (==20.0.4)", "isort (>=5.0.0)", "mypy (>=0.901,<0.910)", "pygments", "pytest (==6.2.5)", "pytest-benchmark", "pytest-cov", "pytest-sanic", "pytest-sugar", "sanic-testing (>=0.7.0)", "towncrier", "tox", "types-ujson", "uvicorn (<0.15.0)"]
docs = ["docutils", "m2r2", "mistune (<2.0.0)", "pygments", "sphinx (>=2.1.2)", "sphinx-rtd-theme (>=0.4.3)"] docs = ["docutils", "m2r2", "mistune (<2.0.0)", "pygments", "sphinx (>=2.1.2)", "sphinx-rtd-theme (>=0.4.3)"]
ext = ["sanic-ext"] ext = ["sanic-ext"]
test = ["bandit", "beautifulsoup4", "black", "chardet (>=3.0.0,<4.0.0)", "coverage (==5.3)", "docutils", "flake8", "gunicorn (==20.0.4)", "isort (>=5.0.0)", "mypy (>=0.901,<0.910)", "pygments", "pytest (==6.2.5)", "pytest-benchmark", "pytest-cov", "pytest-sanic", "pytest-sugar", "sanic-testing (>=0.7.0)", "types-ujson", "uvicorn (<0.15.0)"] test = ["bandit", "beautifulsoup4", "black", "chardet (==3.*)", "coverage (==5.3)", "docutils", "flake8", "gunicorn (==20.0.4)", "isort (>=5.0.0)", "mypy (>=0.901,<0.910)", "pygments", "pytest (==6.2.5)", "pytest-benchmark", "pytest-cov", "pytest-sanic", "pytest-sugar", "sanic-testing (>=0.7.0)", "types-ujson", "uvicorn (<0.15.0)"]
[[package]] [[package]]
name = "sanic-ext" name = "sanic-ext"
version = "23.6.0" version = "23.6.0"
description = "Extend your Sanic installation with some core functionality." description = "Extend your Sanic installation with some core functionality."
category = "main"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -902,7 +869,6 @@ test = ["Jinja2", "coverage", "pytest", "pytest-asyncio", "pytest-cov", "sanic-t
name = "sanic-routing" name = "sanic-routing"
version = "0.7.2" version = "0.7.2"
description = "Core routing component for Sanic" description = "Core routing component for Sanic"
category = "main"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -914,7 +880,6 @@ files = [
name = "setuptools" name = "setuptools"
version = "68.0.0" version = "68.0.0"
description = "Easily download, build, install, upgrade, and uninstall Python packages" description = "Easily download, build, install, upgrade, and uninstall Python packages"
category = "dev"
optional = false optional = false
python-versions = ">=3.7" python-versions = ">=3.7"
files = [ files = [
@ -931,7 +896,6 @@ testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (
name = "snowballstemmer" name = "snowballstemmer"
version = "2.2.0" version = "2.2.0"
description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms."
category = "dev"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -943,7 +907,6 @@ files = [
name = "toml" name = "toml"
version = "0.10.2" version = "0.10.2"
description = "Python Library for Tom's Obvious, Minimal Language" description = "Python Library for Tom's Obvious, Minimal Language"
category = "dev"
optional = false optional = false
python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
files = [ files = [
@ -955,7 +918,6 @@ files = [
name = "typed-ast" name = "typed-ast"
version = "1.5.2" version = "1.5.2"
description = "a fork of Python 2 and 3 ast modules with type comment support" description = "a fork of Python 2 and 3 ast modules with type comment support"
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -989,7 +951,6 @@ files = [
name = "typing-extensions" name = "typing-extensions"
version = "4.1.1" version = "4.1.1"
description = "Backported and Experimental Type Hints for Python 3.6+" description = "Backported and Experimental Type Hints for Python 3.6+"
category = "dev"
optional = false optional = false
python-versions = ">=3.6" python-versions = ">=3.6"
files = [ files = [
@ -1001,7 +962,6 @@ files = [
name = "ujson" name = "ujson"
version = "5.4.0" version = "5.4.0"
description = "Ultra fast JSON encoder and decoder for Python" description = "Ultra fast JSON encoder and decoder for Python"
category = "main"
optional = false optional = false
python-versions = ">=3.7" python-versions = ">=3.7"
files = [ files = [
@ -1061,7 +1021,6 @@ files = [
name = "uvloop" name = "uvloop"
version = "0.16.0" version = "0.16.0"
description = "Fast implementation of asyncio event loop on top of libuv" description = "Fast implementation of asyncio event loop on top of libuv"
category = "main"
optional = false optional = false
python-versions = ">=3.7" python-versions = ">=3.7"
files = [ files = [
@ -1092,7 +1051,6 @@ test = ["aiohttp", "flake8 (>=3.9.2,<3.10.0)", "mypy (>=0.800)", "psutil", "pyOp
name = "websockets" name = "websockets"
version = "10.1" version = "10.1"
description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)"
category = "main"
optional = false optional = false
python-versions = ">=3.7" python-versions = ">=3.7"
files = [ files = [
@ -1150,7 +1108,6 @@ files = [
name = "wrapt" name = "wrapt"
version = "1.13.3" version = "1.13.3"
description = "Module for decorators, wrappers and monkey patching." description = "Module for decorators, wrappers and monkey patching."
category = "dev"
optional = false optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
files = [ files = [
@ -1211,7 +1168,6 @@ files = [
name = "yapf" name = "yapf"
version = "0.32.0" version = "0.32.0"
description = "A formatter for Python code." description = "A formatter for Python code."
category = "dev"
optional = false optional = false
python-versions = "*" python-versions = "*"
files = [ files = [
@ -1221,14 +1177,13 @@ files = [
[[package]] [[package]]
name = "yt-dlp" name = "yt-dlp"
version = "2023.7.6" version = "2023.9.24"
description = "A youtube-dl fork with additional features and patches" description = "A youtube-dl fork with additional features and patches"
category = "main"
optional = false optional = false
python-versions = ">=3.7" python-versions = ">=3.7"
files = [ files = [
{file = "yt-dlp-2023.7.6.tar.gz", hash = "sha256:cb58373869c8ccb5034746f91cfccd6d25ea697090dfd6f93e9034d51eb4aed2"}, {file = "yt-dlp-2023.9.24.tar.gz", hash = "sha256:cfcfb5ffc12013b6ae4b8c7a283a7e462988f1b49283de291de8bfbe053b8073"},
{file = "yt_dlp-2023.7.6-py2.py3-none-any.whl", hash = "sha256:b33b3f68751f33dd8290f1f61f7a011679b3b512aa223df3bff496688bc0bd19"}, {file = "yt_dlp-2023.9.24-py2.py3-none-any.whl", hash = "sha256:61792482647faac6207b1795b52d73714803414d8c090cd9721dfe8b16b12605"},
] ]
[package.dependencies] [package.dependencies]
@ -1243,7 +1198,6 @@ websockets = "*"
name = "zipp" name = "zipp"
version = "3.7.0" version = "3.7.0"
description = "Backport of pathlib-compatible object wrapper for zip files" description = "Backport of pathlib-compatible object wrapper for zip files"
category = "dev"
optional = false optional = false
python-versions = ">=3.7" python-versions = ">=3.7"
files = [ files = [
@ -1258,4 +1212,4 @@ testing = ["func-timeout", "jaraco.itertools", "pytest (>=6)", "pytest-black (>=
[metadata] [metadata]
lock-version = "2.0" lock-version = "2.0"
python-versions = ">=3.7,<4.0" python-versions = ">=3.7,<4.0"
content-hash = "84a342f2df6a72f83d0d584feee51c8d0ed84ac52651798a3051dfb241755d26" content-hash = "e73864926ef77e9466e6bca4c33f562ebaf36eaf4b3a03aa4987995a141df7b4"

View File

@ -8,7 +8,7 @@ license = "MIT"
[tool.poetry.dependencies] [tool.poetry.dependencies]
python = ">=3.7,<4.0" python = ">=3.7,<4.0"
mpv = ">=0.1" # TODO: do we use this? mpv = ">=0.1" # TODO: do we use this?
yt-dlp = "^2023.7.6" yt-dlp = "^2023.9.24"
sanic = ">=21.12.2" sanic = ">=21.12.2"
sanic-ext = ">=23.6.0" sanic-ext = ">=23.6.0"
#sanic-openapi = ">=21.6.1" #sanic-openapi = ">=21.6.1"