[issue14082] shutil doesn't copy extended attributes

Hynek Schlawack report at bugs.python.org
Sat May 5 20:54:12 CEST 2012


Hynek Schlawack <hs at ox.cx> added the comment:

> The copyxattr() function should be private (_copyxattr()).

Ok. I presumed that not adding it to __all__ is "private enough".

> For some reason the tests are failing here:
> 
> ======================================================================
> ERROR: test_copy2_xattr (test.test_shutil.TestShutil)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/home/antoine/cpython/default/Lib/test/test_shutil.py", line 410, in test_copy2_xattr
>     os.setxattr(src, 'user.foo', b'42')
> OSError: [Errno 95] Operation not supported
> 
> ======================================================================
> ERROR: test_copyxattr (test.test_shutil.TestShutil)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/home/antoine/cpython/default/Lib/test/test_shutil.py", line 296, in test_copyxattr
>     os.setxattr(src, 'user.foo', b'42')
> OSError: [Errno 95] Operation not supported

Looks like your file system Python uses for tmp files doesn't support
xattr. That's bad because you can't verify. How should I cope with that?
try/catch on the first setxattr() and skip the test if it fails? Is the
an official way to do that?

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue14082>
_______________________________________


More information about the Python-bugs-list mailing list