pycbc icon indicating copy to clipboard operation
pycbc copied to clipboard

Hfile pycbc version information check

Open GarethCabournDavies opened this issue 1 month ago • 4 comments

Add a pycbc_version attribute when opening a HFile to write, and check that it exists/matches when opening for reading.

Standard information about the request

This is a new feature This change (can) affect all codes which use h5py input/output, if wanted This changes warnings seen when running the code, no scientific content or results plotting will be affected

This change follows style guidelines (See e.g. PEP8), has been proposed using the contribution guidelines

I can add unit tests if desired

This change will warn when different versions of PyCBC are being used

Motivation

When the code changes, there are (sometimes unwitting) differences in how the files from the code are output/input. This just adds a warning to the user to be wary of that.

Contents

When a HFile object is opened, the file read/write permission will be used to determine whether or not to check / update the pycbc_version attribute.

  • If this version does not match the one being used, a warning is shown.
  • If using append permission, the version is changed, and a warning is shown

Testing performed

Tested each case (same / different versions, and unversioned files), and the correct warnings are given each time. Tested that the permissions are carried through to the underlying h5py.File, and appropriate errors are raised.

  • [x] The author of this pull request confirms they will adhere to the code of conduct

GarethCabournDavies avatar May 31 '24 13:05 GarethCabournDavies