Skip to content

Commit

Permalink
Revert PR silx-kit#3939
Browse files Browse the repository at this point in the history
  • Loading branch information
t20100 committed Mar 6, 2024
1 parent 0abd43e commit e48cedd
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 11 deletions.
19 changes: 9 additions & 10 deletions src/silx/gui/hdf5/test/test_hdf5.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@
from silx.gui import hdf5
from silx.gui.utils.testutils import SignalListener
from silx.io import commonh5
from silx.io import h5py_utils
from silx.io.url import DataUrl
import weakref

Expand All @@ -55,7 +54,7 @@ def useH5File(request, tmpdir_factory):
tmp = tmpdir_factory.mktemp("test_hdf5")
request.cls.filename = os.path.join(tmp, "data.h5")
# create h5 data
with h5py_utils.File(request.cls.filename, "w") as f:
with h5py.File(request.cls.filename, "w") as f:
g = f.create_group("arrays")
g.create_dataset("scalar", data=10)
yield
Expand Down Expand Up @@ -87,7 +86,7 @@ def h5TempFile(self):
fd, tmp_name = tempfile.mkstemp(suffix=".h5")
os.close(fd)
# create h5 data
h5file = h5py_utils.File(tmp_name, "w")
h5file = h5py.File(tmp_name, "w")
g = h5file.create_group("arrays")
g.create_dataset("scalar", data=10)
h5file.close()
Expand Down Expand Up @@ -162,7 +161,7 @@ def testRemoveObject(self):
self.assertEqual(model.rowCount(qt.QModelIndex()), 0)

def testSynchronizeObject(self):
h5 = h5py_utils.File(self.filename, mode="r")
h5 = h5py.File(self.filename, mode="r")
model = hdf5.Hdf5TreeModel()
model.insertH5pyObject(h5)
self.assertEqual(model.rowCount(qt.QModelIndex()), 1)
Expand Down Expand Up @@ -237,7 +236,7 @@ def testNotCloseFile(self):
"""A file inserted as an h5py object is not open (then not closed)
internally."""
try:
h5File = h5py_utils.File(self.filename, mode="r")
h5File = h5py.File(self.filename, mode="r")
model = hdf5.Hdf5TreeModel()
self.assertEqual(model.rowCount(qt.QModelIndex()), 0)
model.insertH5pyObject(h5File)
Expand Down Expand Up @@ -421,7 +420,7 @@ class TestHdf5TreeModelSignals(TestCaseQt):
def setUp(self):
TestCaseQt.setUp(self)
self.model = hdf5.Hdf5TreeModel()
self.h5 = h5py_utils.File(self.filename, mode="r")
self.h5 = h5py.File(self.filename, mode="r")
self.model.insertH5pyObject(self.h5)

self.listener = SignalListener()
Expand Down Expand Up @@ -449,7 +448,7 @@ def waitForPendingOperations(self, model):
raise RuntimeError("Still waiting for a pending operation")

def testInsert(self):
h5 = h5py_utils.File(self.filename, mode="r")
h5 = h5py.File(self.filename, mode="r")
self.model.insertH5pyObject(h5)
self.assertEqual(self.listener.callCount(), 0)

Expand Down Expand Up @@ -652,7 +651,7 @@ def useH5Model(request, tmpdir_factory):
extH5FileName = os.path.join(tmp, "base__external.h5")
extDatFileName = os.path.join(tmp, "base__external.dat")

externalh5 = h5py_utils.File(extH5FileName, mode="w")
externalh5 = h5py.File(extH5FileName, mode="w")
externalh5["target/dataset"] = 50
externalh5["target/link"] = h5py.SoftLink("/target/dataset")
externalh5["/ext/vds0"] = [0, 1]
Expand All @@ -661,7 +660,7 @@ def useH5Model(request, tmpdir_factory):

numpy.array([0, 1, 10, 10, 2, 3]).tofile(extDatFileName)

h5 = h5py_utils.File(filename, mode="w")
h5 = h5py.File(filename, mode="w")
h5["group/dataset"] = 50
h5["link/soft_link"] = h5py.SoftLink("/group/dataset")
h5["link/soft_link_to_group"] = h5py.SoftLink("/group")
Expand Down Expand Up @@ -698,7 +697,7 @@ def useH5Model(request, tmpdir_factory):
h5["/ext"].create_dataset("raw", shape=(2, 2), dtype=int, external=external)
h5.close()

with h5py_utils.File(filename, mode="r") as h5File:
with h5py.File(filename, mode="r") as h5File:
# Create model
request.cls.model = hdf5.Hdf5TreeModel()
request.cls.model.insertH5pyObject(h5File)
Expand Down
5 changes: 4 additions & 1 deletion src/silx/io/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -555,7 +555,10 @@ def _open_local_file(filename):
)

if h5py.is_hdf5(filename):
return h5py_utils.File(filename, "r")
try:
return h5py.File(filename, "r")
except OSError:
return h5py.File(filename, "r", libver='latest', swmr=True)

try:
from . import fabioh5
Expand Down

0 comments on commit e48cedd

Please sign in to comment.