Added notes about:
- bugzilla 1068: revising class hierarchy to move Attribute out.
- replacing IdComponent::dereference with new H5Object member functions
and constructors in various other classes.
Description:
Moved mount table from top file structure to shared file structure. Moved
parent out of mount table and back into top file structure. Mounted files can
now be accessed from any handle of the parent file. Changes to how files are
closed. Stricter cycle checking on mounted files. Removed unused function
H5F_has_mount().
Tested:
committest in 1.8 branch. Committing now due to the urgency of the fix. No
changes here are specific to the trunk, but I will keep an eye on the daily
tests.
Description:
-- Remove a couple lines of debugging output
-- Make sure H5_PACKAGE_NAME outputs 'HDF5' rather than 'hdf5'
-- Take into account version strings with a postfix. This isn't currently used in HDF5 1.9 branch, but is in HDF5 1.8.
Tested:
kagiso
===
The following patch to h5copy.c on or near line 173 makes the
tool substantially more useful...
*flag = (*flag) | fla;
Because the command-line option parsing permits multiple '-f' arguments,
this will have the effect of or'ing the flags together so one can do
someting like....
~/tmp/hdf5-1.8.1/tools/h5copy/h5copy -i multi_ucd3d.h5 -s block5 -o gorfo -d foo -f shallow -f soft
Mark C. Miller, Lawrence Livermore National Laboratory
email: mailto:miller86@llnl.gov
===
Description:
This commit is a major update to the Windows-maintained H5pubconf.h file. This file is statically-distributed because Windows cannot generate it dynamically as other platforms do. Previously, our Windows version contained a minimal subset of the macro definitions required. To update, I've gone through each macro (based on kagiso's output), and tested for the correct value on Windows. This allows us to better target code based on feature flags. It should also be easier to update in the future as changes are made to the configure script.
This commit also contains one small bug fix in h5ls.c. Some Windows-specific code was missing a local variable definition. The bug went unnoticed because Windows didn't define the feature flag correctly.
I've also made changes to the h5vers script. Whenever the version string is incremented (automatically by h5test after a snapshot), the strings in H5pubconf.h will also be updated.
Tested:
VS2005 on WinXP (32- and 64-bit)
VS.NET on WinXP 32-bit
h5vers tested under Cygwin
Description:
A new parameter was added to h5diff recently. We add a new test to the h5diff script, and change the syntax in which h5diff is called from the h5repack test script
Tested:
VS2005 on WinXP
Summary: when using h5diff to compare the results of h5repack (or other tools that copy one HDF5 file to another), a new option is needed to allow h5diff to make an "absolute" comparison of the 2 files. This is the "contents" mode explained in the usage below.
If this mode is present, objects in both files must match (must be exactly the same). If this does not happen, the tool returns an error code of 1 (instead of the success code of 0)
Changes to the h5repack test script: the call to h5diff was changed to include -c (maintaining the previous -q).
tested: windows, linux, solaris
the parsing of the command line strings for the shared object header message type was not being done correctly (strcmp)
fix: substituted by strncmp
tested: windows, linux
Added missing comma, i.e.
WRITE(*, "("" subroutine i"" i2.2,""()"")") j
should be
WRITE(*, "("" subroutine i"", i2.2,""()"")") j
etc...
as noted in bug 1251 and NAG compiler.
Checked the write fix using Sun f95, g95, pgf90, gfortran, ifort, absoft and all gave the correct write output.
Description:
The daily test failure caused by the C++ API was fixed, so put
the packet table test back.
Platforms tested:
SunOS 5.10 (linew)
Linux 2.6 (kagiso)
FreeBSD (duty)
Description:
Changed all subclasses' setId to protected p_setId and put back setId
in IdComponent. p_setId is used in the library where the id provided
by a C API passed on to user's application in the form of a C++ API
object, which will be destroyed properly, and so p_setId does not
call incRefCount. On the other hand, the public version setId is
used by other applications, in which the id passed to setId needs
to be closed properly by the application, so setId must call incRefCount
for the new object to prevent prematurely closing of the id.
Platforms tested:
Linux 2.6 (kagiso)
SunOS 5.10 (linew)
FreeBSD (duty)
the file didn't have the data. It happened because each handle had its own
object structure, and the empty one overwrote the data with fill value. This is
fixed by making some attribute information like the data be shared in the
attribute structure.
Tested on smirom, kagiso, and linew.
Add check to avoid mounting the a file on a group twice, then the mounts
are done on the same HDF5 file, but opened with separate H5Fopen calls.
Also add new 'mounted' flag to the H5G_info_t struct, queried with the
H5Gget_info() API call, to allow applications to detect and avoid this
situation.
This probably fixes Bz#1070 also, I'll check with Dan Anov (who reported
a different sort of behavior, but seems to have the same underlying problem).
Tested on:
Mac OS X/32 10.5.4 (amazon)
Linux/64 2.6 (chicago)
Description:
The testfiles directory moved, so we need to update test script on Windows. This should fix the Windows daily-test errors from the weekend.
Tested:
VS2005 on WinXP
Description:
Write documentation for building HDF5 with the latest version of Visual Studio, 2008. The process is very similar to building with Visual Studio 2005, but with an automatic project-file conversion beforehand.
Also adapt commandline build scripts for Visual Studio 2008 as well.
Tested:
VS2008 on WinXP
Description:
The class hierarchy was revised to address the problem reported in
bugzilla #1068. Classes AbstractDS and Attribute are moved out of
H5Object. Class Attribute now multiply inherits from IdComponent and
AbstractDs and class DataSet from H5Object and AbstractDs.
In addition, data member IdComponent::id was moved into subclasses:
Attribute, DataSet, DataSpace, DataType, H5File, Group, and PropList.
Platforms tested:
SunOS 5.10 (linew)
Linux 2.6 (kagiso)
FreeBSD (duty)
Description:
The class hierarchy was revised to address the problem reported in
bugzilla #1068. Classes AbstractDS and Attribute are moved out of
H5Object. Class Attribute now multiply inherits from IdComponent and
AbstractDs and class DataSet from H5Object and AbstractDs.
In addition, data member IdComponent::id was moved into subclasses:
Attribute, DataSet, DataSpace, DataType, H5File, Group, and PropList.
Platforms tested:
SunOS 5.10 (linew)
Linux 2.6 (kagiso)
FreeBSD (duty)