From 40756aac99d21293acbf34f5554f2acabe61c0c7 Mon Sep 17 00:00:00 2001 From: VineFeeder Date: Mon, 6 Jul 2026 13:05:39 +0100 Subject: [PATCH] corrections and updates --- README.md | 3 +- packages/envied/pyproject.toml | 6 +++- uv.lock | 52 ++++++++++++++++++++++++++++++++-- 3 files changed, 56 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 5346e34..da1cbff 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ TwinVine combines two Python packages: TwinVine helps you find, select, and download media. Use the graphical front end when you want search and selection assistance, and use the command-line downloader for exact URLs. -Envied is forked from unshackle github.com/unshackle-dl/unshackle and I thank the developers for thier effort. +Envied is forked from unshackle github.com/unshackle-dl/unshackle and I thank the developers for their effort. ## Key workflows @@ -57,6 +57,7 @@ uv lock uv sync uv run vinefeeder --help uv run envied --help +uv run envied dl -? ``` ## Windows installation diff --git a/packages/envied/pyproject.toml b/packages/envied/pyproject.toml index 8a4f384..67eb40e 100644 --- a/packages/envied/pyproject.toml +++ b/packages/envied/pyproject.toml @@ -67,6 +67,9 @@ dependencies = [ "animeapi-py>=0.6.0", "rnet>=2.4.2", "bandit>=1.9.4", + "defusedxml>=0.7.1", + "jsonpath-ng>=1.8.0", + "mutagen>=1.47.0", # envied specific dependencies "webvtt-py>=0.5.1,<0.6", "isodate>=0.7.2,<0.8", @@ -126,4 +129,5 @@ no_implicit_optional = true [tool.uv.sources] #subby = { git = "https://github.com/vevv/subby.git" } -subby = { git = "https://github.com/vevv/subby.git", rev = "5a925c367ffb3f5e53fd114ae222d3be1fdff35d" } +subby = { git = "https://github.com/vevv/subby.git", rev = "a057280f31acd3a0ba5c6dc69eaefbb88aea974e" } + diff --git a/uv.lock b/uv.lock index 19c18f9..7a169de 100644 --- a/uv.lock +++ b/uv.lock @@ -704,14 +704,17 @@ dependencies = [ { name = "construct" }, { name = "crccheck" }, { name = "cryptography" }, + { name = "defusedxml" }, { name = "filelock" }, { name = "fonttools" }, { name = "httpx" }, { name = "isodate" }, + { name = "jsonpath-ng" }, { name = "jsonpickle" }, { name = "langcodes" }, { name = "language-data" }, { name = "lxml" }, + { name = "mutagen" }, { name = "mypy" }, { name = "protobuf" }, { name = "pycaption" }, @@ -766,14 +769,17 @@ requires-dist = [ { name = "construct", specifier = ">=2.8.8,<3" }, { name = "crccheck", specifier = ">=1.3.0,<2" }, { name = "cryptography", specifier = ">=45.0.0,<47" }, + { name = "defusedxml", specifier = ">=0.7.1" }, { name = "filelock", specifier = ">=3.20.3,<4" }, { name = "fonttools", specifier = ">=4.60.2,<5" }, { name = "httpx", specifier = ">=0.28.0,<0.35" }, { name = "isodate", specifier = ">=0.7.2,<0.8" }, + { name = "jsonpath-ng", specifier = ">=1.8.0" }, { name = "jsonpickle", specifier = ">=3.0.4,<5" }, { name = "langcodes", specifier = ">=3.4.0,<4" }, { name = "language-data", specifier = ">=1.4.0" }, { name = "lxml", specifier = ">=5.2.1,<7" }, + { name = "mutagen", specifier = ">=1.47.0" }, { name = "mypy", specifier = ">=1.19.1,<=2.1.0" }, { name = "protobuf", specifier = ">=4.25.3,<7" }, { name = "pycaption", specifier = ">=2.2.6,<3" }, @@ -795,7 +801,7 @@ requires-dist = [ { name = "ruamel-yaml", specifier = ">=0.18.6,<0.19" }, { name = "scrapy", specifier = ">=2.14.0,<3" }, { name = "sortedcontainers", specifier = ">=2.4.0,<3" }, - { name = "subby", git = "https://github.com/vevv/subby.git?rev=5a925c367ffb3f5e53fd114ae222d3be1fdff35d" }, + { name = "subby", git = "https://github.com/vevv/subby.git?rev=a057280f31acd3a0ba5c6dc69eaefbb88aea974e" }, { name = "subtitle-filter", specifier = ">=1.4.9,<2" }, { name = "unidecode", specifier = ">=1.3.8,<2" }, { name = "urllib3", specifier = ">=2.6.3,<3" }, @@ -996,6 +1002,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/ee/45/b82e3c16be2182bff01179db177fe144d58b5dc787a7d4492c6ed8b9317f/frozenlist-1.7.0-py3-none-any.whl", hash = "sha256:9a5af342e34f7e97caf8c995864c7a396418ae2859cc6fdf1b1073020d516a7e", size = 13106, upload-time = "2025-06-09T23:02:34.204Z" }, ] +[[package]] +name = "ftfy" +version = "6.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "wcwidth" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a5/d3/8650919bc3c7c6e90ee3fa7fd618bf373cbbe55dff043bd67353dbb20cd8/ftfy-6.3.1.tar.gz", hash = "sha256:9b3c3d90f84fb267fe64d375a07b7f8912d817cf86009ae134aa03e1819506ec", size = 308927, upload-time = "2024-10-26T00:50:35.149Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ab/6e/81d47999aebc1b155f81eca4477a616a70f238a2549848c38983f3c22a82/ftfy-6.3.1-py3-none-any.whl", hash = "sha256:7c70eb532015cd2f9adb53f101fb6c7945988d023a085d127d1573dc49dd0083", size = 44821, upload-time = "2024-10-26T00:50:33.425Z" }, +] + [[package]] name = "h11" version = "0.16.0" @@ -1144,6 +1162,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/31/b4/b9b800c45527aadd64d5b442f9b932b00648617eb5d63d2c7a6587b7cafc/jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980", size = 20256, upload-time = "2022-06-17T18:00:10.251Z" }, ] +[[package]] +name = "jsonpath-ng" +version = "1.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/32/58/250751940d75c8019659e15482d548a4aa3b6ce122c515102a4bfdac50e3/jsonpath_ng-1.8.0.tar.gz", hash = "sha256:54252968134b5e549ea5b872f1df1168bd7defe1a52fed5a358c194e1943ddc3", size = 74513, upload-time = "2026-02-24T14:42:06.182Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/03/99/33c7d78a3fb70d545fd5411ac67a651c81602cc09c9cf0df383733f068c5/jsonpath_ng-1.8.0-py3-none-any.whl", hash = "sha256:b8dde192f8af58d646fc031fac9c99fe4d00326afc4148f1f043c601a8cfe138", size = 67844, upload-time = "2026-02-28T00:53:19.637Z" }, +] + [[package]] name = "jsonpickle" version = "4.1.1" @@ -1564,6 +1591,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/fd/69/b547032297c7e63ba2af494edba695d781af8a0c6e89e4d06cf848b21d80/multidict-6.6.4-py3-none-any.whl", hash = "sha256:27d8f8e125c07cb954e54d75d04905a9bba8a439c1d84aca94949d4d03d8601c", size = 12313, upload-time = "2025-08-11T12:08:46.891Z" }, ] +[[package]] +name = "mutagen" +version = "1.48.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/df/70/1675da133ea92227da41bf5b24e1c66be597ff736a1533ade41da986852f/mutagen-1.48.1.tar.gz", hash = "sha256:8f95637ab9f6f305cec6bd1294e197debe207998e3e068596563c74f86b0a173", size = 1276978, upload-time = "2026-06-25T09:47:32.443Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/47/d8/a29e4e3991765e7ce4ed1f7e4074fe1ba9da03e0048639734de60f9cadb9/mutagen-1.48.1-py3-none-any.whl", hash = "sha256:4f077fe87d3fc7fba259aa63d8c026b18382ca6a42ef37c61e16f1b1b5b82fe7", size = 195706, upload-time = "2026-06-25T09:47:30.296Z" }, +] + [[package]] name = "mypy" version = "1.19.1" @@ -2617,11 +2653,12 @@ wheels = [ [[package]] name = "subby" -version = "0.3.23" -source = { git = "https://github.com/vevv/subby.git?rev=5a925c367ffb3f5e53fd114ae222d3be1fdff35d#5a925c367ffb3f5e53fd114ae222d3be1fdff35d" } +version = "0.3.30" +source = { git = "https://github.com/vevv/subby.git?rev=a057280f31acd3a0ba5c6dc69eaefbb88aea974e#a057280f31acd3a0ba5c6dc69eaefbb88aea974e" } dependencies = [ { name = "beautifulsoup4" }, { name = "click" }, + { name = "ftfy" }, { name = "langcodes" }, { name = "lxml" }, { name = "pymp4" }, @@ -2847,6 +2884,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/4a/4a/bba9c0368c377250ab24fd005a7a1e9076121778c1e83b1bcc092ab84f86/wasmtime-41.0.0-py3-none-win_arm64.whl", hash = "sha256:0c4bcaba055e78fc161f497b85f39f1d35d475f0341b1e0259fa0a4b49e223e8", size = 5392238, upload-time = "2026-01-20T18:17:59.052Z" }, ] +[[package]] +name = "wcwidth" +version = "0.8.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/34/74/c6428f875774288bec1396f5bfcbc2d925700a4dad61727fd5f2b12f249d/wcwidth-0.8.2.tar.gz", hash = "sha256:91fbef97204b96a3d4d421609b80340b760cf33e26da123ff243d76b1fda8dda", size = 1466253, upload-time = "2026-06-29T18:11:11.601Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/96/42/3e5985a0a7e57de470b320c6d6a1a67c844f6737a587f3d44dd13d1819e7/wcwidth-0.8.2-py3-none-any.whl", hash = "sha256:d63947694a0539a1d51e01eda7caf800c291020e6cdd7e28ad7b14dd33ad4f85", size = 323166, upload-time = "2026-06-29T18:11:09.888Z" }, +] + [[package]] name = "webvtt-py" version = "0.5.1"