|
@ -11,6 +11,7 @@ from ..compat import ( |
|
|
from ..utils import ( |
|
|
from ..utils import ( |
|
|
check_executable, |
|
|
check_executable, |
|
|
hyphenate_date, |
|
|
hyphenate_date, |
|
|
|
|
|
version_tuple, |
|
|
) |
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -36,6 +37,19 @@ class XAttrMetadataPP(PostProcessor): |
|
|
# try the pyxattr module... |
|
|
# try the pyxattr module... |
|
|
import xattr |
|
|
import xattr |
|
|
|
|
|
|
|
|
|
|
|
# Unicode arguments are not supported in python-pyxattr until |
|
|
|
|
|
# version 0.5.0 |
|
|
|
|
|
# See https://github.com/rg3/youtube-dl/issues/5498 |
|
|
|
|
|
pyxattr_required_version = '0.5.0' |
|
|
|
|
|
if version_tuple(xattr.__version__) < version_tuple(pyxattr_required_version): |
|
|
|
|
|
self._downloader.report_warning( |
|
|
|
|
|
'python-pyxattr is detected but is too old. ' |
|
|
|
|
|
'yourube-dl requires %s or above while your version is %s. ' |
|
|
|
|
|
'Falling back to other xattr implementations' % ( |
|
|
|
|
|
pyxattr_required_version, xattr.__version__)) |
|
|
|
|
|
|
|
|
|
|
|
raise ImportError |
|
|
|
|
|
|
|
|
def write_xattr(path, key, value): |
|
|
def write_xattr(path, key, value): |
|
|
return xattr.setxattr(path, key, value) |
|
|
return xattr.setxattr(path, key, value) |
|
|
|
|
|
|
|
|