PyTables: tables.tests.test_basics.UnicodeFilename failures on Windows.
On the current ‘develop’ branch (commit bae4975a725fcb17dc7b6ced633962bbf48fd7da), we’re seeing the test failures below on Windows 7 (64-bit), Python 2.7.3, HDF5 1.8.11.
Additional notes from a colleague here (@itziakos):
update: the error takes place in the setUp method and the Error message is (u"Unable to open/create file ‘c:\users\itziakos\appdata\local\temp\para\u0140lelvbkwg0.h5’",)
more investigation shows that the original filename is correct but gets mangled as soon as it passes through https://github.com/PyTables/PyTables/blob/develop/tables/utilsextension.pyx#L599
Please note that on my machine the file system encoding arrives as the default for windows mbcs.
Failures and full version information below:
======================================================================
ERROR: test01 (tables.tests.test_basics.UnicodeFilename)
Checking creating a filename with Unicode chars.
----------------------------------------------------------------------
Traceback (most recent call last):
File "tables\tests\test_basics.py", line 2341, in setUp
self.h5file = tables.open_file(self.h5fname, "w")
File "tables\file.py", line 318, in open_file
return File(filename, mode, title, root_uep, filters, **kwargs)
File "tables\file.py", line 784, in __init__
self._g_new(filename, mode, **params)
File "hdf5extension.pyx", line 488, in tables.hdf5extension.File._g_new (tables\hdf5extension.c:4926)
HDF5ExtError: <unprintable HDF5ExtError object>
======================================================================
ERROR: test02 (tables.tests.test_basics.UnicodeFilename)
Checking tables.is_hdf5_file with a Unicode filename.
----------------------------------------------------------------------
Traceback (most recent call last):
File "tables\tests\test_basics.py", line 2341, in setUp
self.h5file = tables.open_file(self.h5fname, "w")
File "tables\file.py", line 318, in open_file
return File(filename, mode, title, root_uep, filters, **kwargs)
File "tables\file.py", line 784, in __init__
self._g_new(filename, mode, **params)
File "hdf5extension.pyx", line 488, in tables.hdf5extension.File._g_new (tables\hdf5extension.c:4926)
HDF5ExtError: <unprintable HDF5ExtError object>
======================================================================
ERROR: test03 (tables.tests.test_basics.UnicodeFilename)
Checking is_pytables_file with a Unicode filename.
----------------------------------------------------------------------
Traceback (most recent call last):
File "tables\tests\test_basics.py", line 2341, in setUp
self.h5file = tables.open_file(self.h5fname, "w")
File "tables\file.py", line 318, in open_file
return File(filename, mode, title, root_uep, filters, **kwargs)
File "tables\file.py", line 784, in __init__
self._g_new(filename, mode, **params)
File "hdf5extension.pyx", line 488, in tables.hdf5extension.File._g_new (tables\hdf5extension.c:4926)
HDF5ExtError: <unprintable HDF5ExtError object>
======================================================================
ERROR: test_store_and_load_with_non_ascii_attributes (tables.tests.test_basics.UnicodeFilename)
----------------------------------------------------------------------
Traceback (most recent call last):
File "tables\tests\test_basics.py", line 2341, in setUp
self.h5file = tables.open_file(self.h5fname, "w")
File "tables\file.py", line 318, in open_file
return File(filename, mode, title, root_uep, filters, **kwargs)
File "tables\file.py", line 784, in __init__
self._g_new(filename, mode, **params)
File "hdf5extension.pyx", line 488, in tables.hdf5extension.File._g_new (tables\hdf5extension.c:4926)
HDF5ExtError: <unprintable HDF5ExtError object>
----------------------------------------------------------------------
Ran 5724 tests in 370.993s
Version information:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
PyTables version: 3.1.2dev
HDF5 version: 1.8.11
NumPy version: 1.8.1
Numexpr version: 2.4 (using VML/MKL 10.3.1)
Zlib version: 1.2.3 (in Python interpreter)
Blosc version: 1.4.0 (2014-07-04)
Blosc compressors: blosclz (1.0.2), lz4 (1.2.0), lz4hc (1.2.0), snappy (1.1.1), zlib (1.2.8)
Cython version: 0.20.2
Python version: 2.7.3 |EPD 7.3-1 (64-bit)| (default, Apr 12 2012, 15:20:16) [MSC v.1500 64 bit (AMD64)]
Platform: Windows-7-6.1.7601-SP1
Byte-ordering: little
Detected cores: 8
Default encoding: ascii
Default locale: (el_GR, cp1253)
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
About this issue
- Original URL
- State: closed
- Created 10 years ago
- Comments: 16 (10 by maintainers)
Commits related to this issue
- Disable test on unicode filenames on windows (see gh-389). Unable to fix issue gh-389 due to lack of access to a build environment on windows. Anyway no user reported the problem until a specific tes... — committed to avalentino/PyTables by avalentino 10 years ago
- Fix unicode filename handling on windows (hopefully closes gh-389) — committed to alimuldal/PyTables by avalentino 10 years ago
- Disable test on unicode filenames on windows (see gh-389). Unable to fix issue gh-389 due to lack of access to a build environment on windows. Anyway no user reported the problem until a specific tes... — committed to alimuldal/PyTables by avalentino 10 years ago
All tests seem to pass in CI, closing.