]>
Commit | Line | Data |
---|---|---|
e9df3d42 | 1 | [build-system] |
775cde82 | 2 | requires = ["hatchling"] |
3 | build-backend = "hatchling.build" | |
4 | ||
5 | [project] | |
6 | name = "yt-dlp" | |
7 | maintainers = [ | |
8 | {name = "pukkandan", email = "pukkandan.ytdlp@gmail.com"}, | |
9 | {name = "Grub4K", email = "contact@grub4k.xyz"}, | |
10 | {name = "bashonly", email = "bashonly@protonmail.com"}, | |
47ab66db | 11 | {name = "coletdjnz", email = "coletdjnz@protonmail.com"}, |
775cde82 | 12 | ] |
388c979a | 13 | description = "A feature-rich command-line audio/video downloader" |
775cde82 | 14 | readme = "README.md" |
15 | requires-python = ">=3.8" | |
16 | keywords = [ | |
17 | "youtube-dl", | |
18 | "video-downloader", | |
19 | "youtube-downloader", | |
20 | "sponsorblock", | |
21 | "youtube-dlc", | |
22 | "yt-dlp", | |
23 | ] | |
24 | license = {file = "LICENSE"} | |
25 | classifiers = [ | |
26 | "Topic :: Multimedia :: Video", | |
27 | "Development Status :: 5 - Production/Stable", | |
28 | "Environment :: Console", | |
29 | "Programming Language :: Python", | |
30 | "Programming Language :: Python :: 3 :: Only", | |
31 | "Programming Language :: Python :: 3.8", | |
32 | "Programming Language :: Python :: 3.9", | |
33 | "Programming Language :: Python :: 3.10", | |
34 | "Programming Language :: Python :: 3.11", | |
35 | "Programming Language :: Python :: 3.12", | |
36 | "Programming Language :: Python :: Implementation", | |
37 | "Programming Language :: Python :: Implementation :: CPython", | |
38 | "Programming Language :: Python :: Implementation :: PyPy", | |
39 | "License :: OSI Approved :: The Unlicense (Unlicense)", | |
40 | "Operating System :: OS Independent", | |
41 | ] | |
42 | dynamic = ["version"] | |
43 | dependencies = [ | |
44 | "brotli; implementation_name=='cpython'", | |
45 | "brotlicffi; implementation_name!='cpython'", | |
46 | "certifi", | |
47 | "mutagen", | |
48 | "pycryptodomex", | |
49 | "requests>=2.31.0,<3", | |
50 | "urllib3>=1.26.17,<3", | |
51 | "websockets>=12.0", | |
52 | ] | |
53 | ||
54 | [project.optional-dependencies] | |
cf91400a | 55 | default = [] |
02483bea | 56 | curl-cffi = ["curl-cffi==0.5.10; implementation_name=='cpython'"] |
775cde82 | 57 | secretstorage = [ |
58 | "cffi", | |
59 | "secretstorage", | |
60 | ] | |
61 | build = [ | |
62 | "build", | |
63 | "hatchling", | |
64 | "pip", | |
65 | "wheel", | |
66 | ] | |
67 | dev = [ | |
68 | "flake8", | |
69 | "isort", | |
70 | "pytest", | |
71 | ] | |
58dd0f8d | 72 | pyinstaller = [ |
73 | "pyinstaller>=6.3; sys_platform!='darwin'", | |
74 | "pyinstaller==5.13.2; sys_platform=='darwin'", # needed for curl_cffi | |
75 | ] | |
775cde82 | 76 | py2exe = ["py2exe>=0.12"] |
77 | ||
78 | [project.urls] | |
79 | Documentation = "https://github.com/yt-dlp/yt-dlp#readme" | |
80 | Repository = "https://github.com/yt-dlp/yt-dlp" | |
81 | Tracker = "https://github.com/yt-dlp/yt-dlp/issues" | |
82 | Funding = "https://github.com/yt-dlp/yt-dlp/blob/master/Collaborators.md#collaborators" | |
83 | ||
84 | [project.scripts] | |
85 | yt-dlp = "yt_dlp:main" | |
a1b77842 | 86 | |
87 | [project.entry-points.pyinstaller40] | |
88 | hook-dirs = "yt_dlp.__pyinstaller:get_hook_dirs" | |
775cde82 | 89 | |
90 | [tool.hatch.build.targets.sdist] | |
91 | include = [ | |
92 | "/yt_dlp", | |
93 | "/devscripts", | |
94 | "/test", | |
95 | "/.gitignore", # included by default, needed for auto-excludes | |
96 | "/Changelog.md", | |
97 | "/LICENSE", # included as license | |
98 | "/pyproject.toml", # included by default | |
99 | "/README.md", # included as readme | |
100 | "/setup.cfg", | |
101 | "/supportedsites.md", | |
102 | ] | |
775cde82 | 103 | artifacts = [ |
104 | "/yt_dlp/extractor/lazy_extractors.py", | |
105 | "/completions", | |
106 | "/AUTHORS", # included by default | |
107 | "/README.txt", | |
108 | "/yt-dlp.1", | |
109 | ] | |
110 | ||
111 | [tool.hatch.build.targets.wheel] | |
112 | packages = ["yt_dlp"] | |
775cde82 | 113 | artifacts = ["/yt_dlp/extractor/lazy_extractors.py"] |
114 | ||
115 | [tool.hatch.build.targets.wheel.shared-data] | |
116 | "completions/bash/yt-dlp" = "share/bash-completion/completions/yt-dlp" | |
117 | "completions/zsh/_yt-dlp" = "share/zsh/site-functions/_yt-dlp" | |
118 | "completions/fish/yt-dlp.fish" = "share/fish/vendor_completions.d/yt-dlp.fish" | |
119 | "README.txt" = "share/doc/yt_dlp/README.txt" | |
120 | "yt-dlp.1" = "share/man/man1/yt-dlp.1" | |
121 | ||
122 | [tool.hatch.version] | |
123 | path = "yt_dlp/version.py" | |
124 | pattern = "_pkg_version = '(?P<version>[^']+)'" |