aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpukkandan <pukkandan.ytdlp@gmail.com>2021-05-03 15:11:59 +0530
committerpukkandan <pukkandan.ytdlp@gmail.com>2021-05-03 22:49:04 +0530
commit0d1bb027aab2aa96be12caac8ed9bcd5e0d3a2f5 (patch)
treeb1437b98e35a58e02296c5842614a05739c46343
parent4cd0a709aa4cd388cae0795070bfdf26e97ec18c (diff)
downloadhypervideo-pre-0d1bb027aab2aa96be12caac8ed9bcd5e0d3a2f5.tar.lz
hypervideo-pre-0d1bb027aab2aa96be12caac8ed9bcd5e0d3a2f5.tar.xz
hypervideo-pre-0d1bb027aab2aa96be12caac8ed9bcd5e0d3a2f5.zip
Move option warnings to `YoutubeDL`
Previously, these warnings did not obey `--no-warnings` and did not output colors
-rw-r--r--yt_dlp/YoutubeDL.py11
-rw-r--r--yt_dlp/__init__.py15
2 files changed, 15 insertions, 11 deletions
diff --git a/yt_dlp/YoutubeDL.py b/yt_dlp/YoutubeDL.py
index 56ebc5067..98f320b2e 100644
--- a/yt_dlp/YoutubeDL.py
+++ b/yt_dlp/YoutubeDL.py
@@ -474,6 +474,13 @@ class YoutubeDL(object):
if self.params.get('geo_verification_proxy') is None:
self.params['geo_verification_proxy'] = self.params['cn_verification_proxy']
+ check_deprecated('autonumber_size', '--autonumber-size', 'output template with %(autonumber)0Nd, where N in the number of digits')
+ check_deprecated('autonumber', '--auto-number', '-o "%(autonumber)s-%(title)s.%(ext)s"')
+ check_deprecated('usetitle', '--title', '-o "%(title)s-%(id)s.%(ext)s"')
+
+ for msg in self.params.get('warnings', []):
+ self.report_warning(msg)
+
if self.params.get('final_ext'):
if self.params.get('merge_output_format'):
self.report_warning('--merge-output-format will be ignored since --remux-video or --recode-video is given')
@@ -482,10 +489,6 @@ class YoutubeDL(object):
if 'overwrites' in self.params and self.params['overwrites'] is None:
del self.params['overwrites']
- check_deprecated('autonumber_size', '--autonumber-size', 'output template with %(autonumber)0Nd, where N in the number of digits')
- check_deprecated('autonumber', '--auto-number', '-o "%(autonumber)s-%(title)s.%(ext)s"')
- check_deprecated('usetitle', '--title', '-o "%(title)s-%(id)s.%(ext)s"')
-
if params.get('bidi_workaround', False):
try:
import pty
diff --git a/yt_dlp/__init__.py b/yt_dlp/__init__.py
index bf5896f0c..e6e568780 100644
--- a/yt_dlp/__init__.py
+++ b/yt_dlp/__init__.py
@@ -60,6 +60,7 @@ def _real_main(argv=None):
setproctitle('yt-dlp')
parser, opts, args = parseOpts(argv)
+ warnings = []
# Set user agent
if opts.user_agent is not None:
@@ -281,7 +282,7 @@ def _real_main(argv=None):
opts.writeinfojson = True
def report_conflict(arg1, arg2):
- write_string('WARNING: %s is ignored since %s was given\n' % (arg2, arg1), out=sys.stderr)
+ warnings.append('%s is ignored since %s was given' % (arg2, arg1))
if opts.remuxvideo and opts.recodevideo:
report_conflict('--recode-video', '--remux-video')
@@ -419,11 +420,10 @@ def _real_main(argv=None):
})
def report_args_compat(arg, name):
- write_string(
- 'WARNING: %s given without specifying name. The arguments will be given to all %s\n' % (arg, name),
- out=sys.stderr)
+ warnings.append('%s given without specifying name. The arguments will be given to all %s' % (arg, name))
+
if 'default' in opts.external_downloader_args:
- report_args_compat('--external-downloader-args', 'external downloaders')
+ report_args_compat('--downloader-args', 'external downloaders')
if 'default-compat' in opts.postprocessor_args and 'default' not in opts.postprocessor_args:
report_args_compat('--post-processor-args', 'post-processors')
@@ -589,8 +589,9 @@ def _real_main(argv=None):
'geo_bypass_country': opts.geo_bypass_country,
'geo_bypass_ip_block': opts.geo_bypass_ip_block,
# just for deprecation check
- 'autonumber': opts.autonumber if opts.autonumber is True else None,
- 'usetitle': opts.usetitle if opts.usetitle is True else None,
+ 'warnings': warnings,
+ 'autonumber': opts.autonumber or None,
+ 'usetitle': opts.usetitle or None,
}
with YoutubeDL(ydl_opts) as ydl: