Skip to content
Snippets Groups Projects

Use wrapper to ensure safe close

Merged Theodore Chang requested to merge hdf5-dataset-wrapper into develop
3 unresolved threads

Merge request reports

Merge request pipeline #223502 passed

Merge request pipeline passed for 38b81d66

Test coverage 71.09% (0.00%) from 2 jobs
Approved by
Code Quality is loading

Merged by Theodore ChangTheodore Chang 4 months ago (Oct 15, 2024 7:10pm UTC)

Merge details

  • Changes merged into develop with 5b39adbd (commits were squashed).
  • Deleted the source branch.

Pipeline #223509 passed

Pipeline passed for 5b39adbd on develop

Test coverage 71.09% (0.00%) from 2 jobs

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
127 129 serialized['data']['value']
128 130 # '/uploads/test_upload/archive/test_entry#/data/value'
129 131 deserialized = archive.m_from_dict(serialized, m_context=archive.m_context)
130 deserialized.data.value
132 with deserialized.data.value as dataset:
  • Author Developer

    Reading requires a context manager. Now the file is ensured to be closed. Only opened for reading when needed. This also means the data is not expected to escape the with block.

  • Please register or sign in to reply
  • Theodore Chang requested review from @ladinesa

    requested review from @ladinesa

  • added 1 commit

    Compare with previous version

  • 50 def __init__(self, file: str, path: str):
    51 self.file: str = file
    52 self.path: str = path
    53 self.handler: h5py.File | None = None
    54
    55 def __enter__(self):
    56 self._close()
    57 self.handler = h5py.File(self.file, 'a')
    58 return self.handler[self.path]
    59
    60 def __exit__(self, exc_type, exc_value, traceback):
    61 self._close()
    62
    63 def _close(self):
    64 if self.handler:
    65 self.handler.close()
  • 44 46 return match.groupdict()
    45 47
    46 48
    49 class HDF5Wrapper:
  • Alvin Noe Ladines approved this merge request

    approved this merge request

  • added 1 commit

    Compare with previous version

  • Theodore Chang mentioned in commit 5b39adbd

    mentioned in commit 5b39adbd

  • mentioned in issue #2174 (closed)

  • Please register or sign in to reply
    Loading