Message224837
Okay, here is the problem. In Windows, you get DeprecationWarning if you pass bytes object to method such as os.lstat.
foo.py
======
import os
os.lstat(b"C:\\Users\\vajrasky\\Code\\cpython\\python.bat")
C:\Users\vajrasky\Code\cpython>python.bat -Wdefault foo.py
foo.py:2: DeprecationWarning: The Windows bytes API has been deprecated, use Unicode filenames instead
os.lstat(b"C:\\Users\\vajrasky\\Code\\cpython\\python.bat")
The test that throws this error is this one:
def test_rmtree_works_on_bytes(self):
tmp = self.mkdtemp()
victim = os.path.join(tmp, 'killme')
os.mkdir(victim)
write_file(os.path.join(victim, 'somefile'), 'foo')
victim = os.fsencode(victim)
self.assertIsInstance(victim, bytes)
shutil.rmtree(victim) => This one calls os.lstat
So I am not sure how to fix this problem. Disable the test for Windows? If we convert the path to Unicode then the test losses the meaning. |
|
Date |
User |
Action |
Args |
2014-08-05 14:46:48 | vajrasky | set | recipients:
+ vajrasky, ezio.melotti, BreamoreBoy, zach.ware |
2014-08-05 14:46:47 | vajrasky | set | messageid: <1407250007.99.0.0414856205967.issue20056@psf.upfronthosting.co.za> |
2014-08-05 14:46:47 | vajrasky | link | issue20056 messages |
2014-08-05 14:46:47 | vajrasky | create | |
|