|
|
|
@ -49,15 +49,34 @@ def cli_to_api(*opts): |
|
|
|
|
|
|
|
|
|
# from https://github.com/yt-dlp/yt-dlp/issues/5859#issuecomment-1363938900 |
|
|
|
|
default = parsed_options([]) |
|
|
|
|
diff = dict((k, v) for k, v in parsed_options(opts).items() if default[k] != v) |
|
|
|
|
|
|
|
|
|
def neq_opt(a, b): |
|
|
|
|
if a == b: |
|
|
|
|
return False |
|
|
|
|
if a is None and repr(type(object)).endswith(".utils.DateRange'>"): |
|
|
|
|
return '0001-01-01 - 9999-12-31' != '{0}'.format(b) |
|
|
|
|
return a != b |
|
|
|
|
|
|
|
|
|
diff = dict((k, v) for k, v in parsed_options(opts).items() if neq_opt(default[k], v)) |
|
|
|
|
if 'postprocessors' in diff: |
|
|
|
|
diff['postprocessors'] = [pp for pp in diff['postprocessors'] if pp not in default['postprocessors']] |
|
|
|
|
return diff |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def main(): |
|
|
|
|
from pprint import pprint |
|
|
|
|
pprint(cli_to_api(*sys.argv)) |
|
|
|
|
from pprint import PrettyPrinter |
|
|
|
|
|
|
|
|
|
pprint = PrettyPrinter() |
|
|
|
|
super_format = pprint.format |
|
|
|
|
|
|
|
|
|
def format(object, context, maxlevels, level): |
|
|
|
|
if repr(type(object)).endswith(".utils.DateRange'>"): |
|
|
|
|
return '{0}: {1}>'.format(repr(object)[:-2], object), True, False |
|
|
|
|
return super_format(object, context, maxlevels, level) |
|
|
|
|
|
|
|
|
|
pprint.format = format |
|
|
|
|
|
|
|
|
|
pprint.pprint(cli_to_api(*sys.argv)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__': |
|
|
|
|