Description:
We've run into a bug that was introduced in the latest version of Cygwin, that breaks C99 code using the 'timezone' global variable. As a workaround, we use the -ansi flag, which makes everything compile/link/test correctly
Tested: Cygwin on WinXP
Description:
Wrote documentation on how to use the 1.6 API for a user application-- this replaces the outdated documentation we previously had.
Tested: VS2005 with HDFEOS5
Description:
There are many tests that are unsupported on MinGW because of the way it handles certain syntax in shell scripts (particularly '/'). As a result, we list a few tests that users must comment out in various Makefile.in's. This checkin updates the location of h5stat-- it was formerly in ./tools/misc, but has been moved it ./tools/h5stat.
Tested:
MinGW on WinXP
Removed the stream-vfd from the basic library code.
(The stream-vfd source files are not removed yet but the MANIFEST has been
updated to NOT release those stream-vfd source files.)
Platforms tested:
Kagiso and smirom.
Then test the release tar ball in kagiso.
Description:
Previously, we provided a static h5tinit.c with our Windows distribution, and provided instructions to optionally generate it. Now, we will incorporate it as part of the default build process, to emulate other platforms more closely.
Tested:
VS6
VS2005
Description:
We recently uploaded new versions of our external library binaries to support more compiler configurations. This check-in is to point to the new location in our documentation.
Tested:
None
Tools:
------
- h5dump lists groups and attributes in requested orders (by name and
creation order, both ascending and descending). PVN - 2007/10/5
- h5import imports string (text) data. PVN - 2007/10/5
Description:
This updates the command-line build process to handle structural changes we've made in the HDF5 project files. Also, we add support for two new options:
/fort - to build Fortran libraries
/useenv - to allow users to specify include and libpath directories on the command line as well.
Also updated documentation to reflect these change.
Tested:
VS2005 on WinXP
Description:
There are minor changes in the testing process for Windows with the new test scripts. Specifically, the test output is output to the screen, rather than redirected into files, by default. Also, it is much easier to test parts modularly, and installing DLLs is one step, instead of separated batch files.
Tested:
None, only documentation changed.
Description:
This checkin is another Windows project cleanup, and also extends our Windows support for 64-bit Fortran. Project files are now in VS2005 format, rather than VS.NET. A couple projects have been renamed to be more descriptive (*cstub rather than *_lib), and project settings make better use of build macros. This will make them much easier to update in the future.
Tested:
VS2005 on WinXP 32-bit
VS2005 on WinXP x64
Description:
Previously the process of generating h5tinit.c, as well as the Fortran type files, was very manual on Windows. For Fortran, the process included opening 4 different solutions, and running 4 different commands from the prompt. I've made things very much more automated, and now only requires only building one project for either C or C/Fortran. Running the commands to generate the file is done automatically.
Tested: VS.NET
Description:
Visual Studio does not have the function siglongjmp. Therefore, we have created a new configure flag H5_HAVE_SIGLONGJMP that tests for this. We use this within H5detect.c.
Tested:
VS.NET
h5committest
Description:
At a previous seminar, it was brought up that the naming scheme for Windows debug DLL is inconsistent. Specifically, some use *ddll, while others use *dlld. *dlld is more widely-used, so we decided this is "correct". This changes others to use this scheme, and adapts other projects / install scripts / documentation.
Tested:
Visual Studio .NET on WinXP
Description:
Previously, we needed to force symbol definition "gethostname@8" for compatibility with old versions of Visual Studio. It appears that Visual Studio no longer requires this, so we remove it. This makes the build process on 64-bit much smoother.
Also minor updates to main documentation, command-line documentation, and removed codewarrior and INTEL docs.
Tested:
VS.NET
VS2005
chkmanifest
Description:
The Windows documentation on generating H5tinit.c was lacking special instructions for Visual Studio 2005. Specifically, Windows does not support the function "siglongjmp". Previous versions of Visual Studio will ignore this function, but VS2005 produces an error.
Tested:
VS6
VNET
VS2005
Description:
Explain why Fortran isn't supported on MinGW and give users an "unsupported" alternative. Also re-worked the main documentation to clarify using the HDF5 DLL libraries.
Tested:
None needed.
Description:
This makes major updates to the Windows installation documentation, to account for the switch from VS6 to .NET. Installation instructions for 6.0 can also be found in INSTALL_Windows_Short_MSVS6.0.TXT, although it's noted that we are phasing out our VS6 support.
Also added install instrctions for MinGW, to reflect our initial support. Updated MANIFEST for new file checkin.
Tested:
Instructions for each configuration have been tested.
Description:
Updated RELEASE.txt to reflect support for 64-bit Windows. Also updated the testing table, and removed some old Windows-related issues that are no longer present.
No testing needed.
I've also updated our Windows documentation file to include 64-bit instructions. The process is fairly tedious right now, but we hope to make it more straight-forward when we depreciate 6.0 and re-work our project files.
Tested:
32-bit WinXP: VS6, VS.NET, and VS 2005
64-bit WinXP: VS.NET and VS 2005
Change back to clearing memory buffers by default, but give users option
to disable this, for performance reasons (--disable-clear-file-buffers).
Also, add configure option (--enable-using-memchecker) to conveniently
control making the library "play nice" with memory checking tools like valgrind
and purify.
Tested on:
Mac OS X/32 10.4.9 (amazon)
FreeBSD/32 6.2 (duty)
Linux/32 2.6 (kagiso)
added entries
- Fortran interfaces for the Image, Table and Lite APIs. PVN - 2007/5/1
- New HDF5 Dimension Scale API (H5DS) allows dimension scales to be
created in an HDF5 file and associated with specific datasets.
PVN - 2007/5/1
Updated for 1.8.0-beta1.
Updated URLs from hdf.ncsa.uiuc.edu
to www.hdfgroup.org or www.hdfgroup.uiuc.edu, as appropriate
and corrected otherwise-out-of-date URLs.
Updated HDF Help Desk address to 'help@hdfgroup.org'.
Added notes regarding beta documentation.
And here were a few minor edits.
Tested:
Visual inspection.
-This line, and those below, will be ignored--
M RELEASE.txt
Change H5[D|G|T]<foo>_expand() "temporary" API routines to
H5[D|G|T]<foo>2() "versioned" routines. Also added
H5[D|G|T](create|commit)_anon() routines to continue to allow "anonymous"
objects to be created in a file.
Tested on:
Mac OS X/32 10.4.9 (amazon)
FreeBSD/32 6.2 (duty)
FreeBSD/64 6.2 (liberty)
Linux/32 2.6 (chicago)
Linux/64 2.6 (chicago2)
Add mention of the h5copy & h5mkgrp tools to the release notes.
Update documentation for the "--private" flag in release script
Tested on:
None - just text/comment changes
Relax restriction on the "location ID" for attribute operations to allow
file IDs to be used as the location ID. If a file ID is used, the attribute
operations will occur on the file's root group.
Tested on:
FreeBSD/32 6.2 (duty)
Added the WARNING messages of unstable temporary formats.
For README.txt,
In addition, also updated website name to hdfgroup.org, updated email addresses
new names and new subscription instructions.
Platforms tested:
Eyeballed since these are just information files.
Add tests for H5Oopen_by_idx() (in a rare fit of superlative coding I
apparently got the implementation complete correct in my earlier checkin :-)
Tested on:
Linux/32 2.6 (chicago)
Linux/64 2.6 (chicago2)
Add support for "delete by index" to "old-style" groups, finishing
implmentation of H5Ldelete_by_idx() routine.
Tested on:
FreeBSD/32 4.11 (sleipnir)
Linux/32 2.4 (heping)
Linux/64 2.4 (mir)
Aix/32 5.? (copper)
Add new H5Lget_val_by_idx() routine & tests.
Also includes most of changes for H5Ldelete_by_idx() routine.
Tested on:
Mac OS X/32 10.4.8 (amazon)
FreeBSD/32 4.11 (sleipnir)
Linux/32 2.4 (heping)
Linux/64 2.4 (mir)
AIX/32 5.? (copper)
"make check-vfd" will now run all tests in the test directory with different
file drivers (at least, all of those tests that use the testing framework's
FAPL). Tests that fail will be skipped.
This is not a perfect fix, but is better than nothing.
Along with this change, check-vfd should be added to the Daily Tests.
Description: Added support for HPUX11.23
Solution: Added configuration file for the system.
Both C, C++, F90, HL 32-bit and 64-bit are supported. Known problems:
C++ library will not build in 64-bit mode if shared is enabled.
Platforms tested: HPUX 11.23 at UMKC
Misc. update:
Configuration feature
Description:
'make install' now tests both static and shared libraries if both are installed.
Solution:
Previously, shared libraries were only tested when static libraries were not installed.
Also cleaned up line in commence.am that was including HL library in all Makefiles.
Platforms tested:
mir (Makefile change only)
Bug fix
Description:
Fix bug which could lead to files with incorrect count of messages in the
header for an object. The exact sequence of operations is complicated and
is described in the release notes.
Solution:
Mark merged null header messages as dirty.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Linux 2.4 (chicago)
Mac OS/X (amazon)
Bug fix
Description:
Changed the semantics of --enable-stream-vfd and --enable-shared.
Both are now disabled by default when parallel HDF5 is being built.
Solution:
Both shared and stream-vfd are disabled by default in parallel, but can
be enabled explicitly if the user chooses.
Before, shared was always enabled by default and stream-vfd was
always disabled in parallel.
Platforms tested:
heping, mir (configuration change only)
Description: Ran /bin/h5vers to change suffix to alpha4 after creating hdf5-1.8.0-alpha3
tar ball and tagging the release with hdf5_1_8_0_alpha3 tag
Solution:
Platforms tested:
Misc. update:
Misc. update: Document some errors in test/dt_arith.c when converting data from
long double to (unsigned) long long and from (unsigned) long long to long double.
Description: Updated VMS installation instructions to reflect support
for the deflate filter; documented scale+offset test failures
when G_FLOAT is used (not IEEE double)
Solution:
Platforms tested:
Misc. update:
Document error.
Description:
The fix of the TR was put in the wrong session (new configure feature).
It is moved to the proper session (bug fix on configure.)
Bug fix.
Description:
The ${TR}, though avoid the error, is inconvenient. It is needed
because configure.in use the char range in the style of 'a-z'.
The other style of '[a-z]' is more commonly accepted by all tr
but autoconf tends to strip away [], making the syntax rather
clumsy.
Solution:
Learned from autoconf that it avoids the use of character range
by just spell all the letters out. Changed our tr commands to
use those variables defined by autoconf. Also removed the
definition of ${TR} since it will cause inconsistancy when
autoconf also use plain 'tr' in its generated code.
The Makefile.in are changed because the elimination of ${TR} from
configure triggered its removal from all Makefil.in. That is okay
because ${TR} is not used at all in Makefile.
Platforms tested:
h5committested. (sol failed to connected). also tested in shanti
using both /usr/ucb/tr and /bin/tr (the bad one before.)
Misc. update:
Updated both INSTALL and RELEASE files.
Description: Comitting files modified by the bin/release script
before tagging the release.
Solution:
Platforms tested: released tar ball was tested on heping, and copper
64-bit sequential and 32-bit parallel
Misc. update:
Description: Added information about compilation problems on Altix SGI
with Intel v9.0 compilers for testmeta.c test
Marked platforms on which alpha2 was not tested.
Solution:
Platforms tested:
Misc. update:
Maintenance on Windows
Description:
ttsafedll will be automatically enabled when using .Net and Intel
Add in some instructions for this in applicable places
Solution:
Platforms tested:
Misc. update:
Description: Here is what I did:
modified MANIFEST according Quincey's instructions to fix
the problem exposed by bin/release (compilation fails
because some header files were not included in the distribution)
fixed small typo and modified include_HEADERS line in
src/Makefile.am to address the problem exposed by bin/release
ran bin/h5vers to change version number to 1.8.0-alpha0
ran bin/release to release tar ball to the ftp server
Solution:
Platforms tested: mir MANY,MANY,MANY times
Misc. update:
Shrink skull & crossbones (how many times do you get to write _that_ in
a CVS log message? :-)
Description:
Documented the --enable-group-revision configure option and found a smaller
skull & crossbones to put in the release notes for it.
Maintenance on Windows
Description:
hdf5_hl_fortran is a mixed language project. when building
this project , the compiler will ask to choose one language as a main
project.
Missed this information in previous document.
Need to ch
Solution:
Platforms tested:
Misc. update:
Correcting typos and updating
Description:
Several section numbers are messed up inside INSTALL_Windows.txt.
Remove the section of using DEBUG information inside HDF5 since it is difficult to verify whether this part of code is indeed used. Most people use windows' own debugger while debugging.
Solution:
Platforms tested:
Misc. update:
Bug fix
Description:
Retrieving an object's name could fail (in various ways) under certain
circumstances (mostly having to do with mounted files).
Solution:
Re-write & simplify "get object name" code to fix error in a better way
than adding yet another hack to the previous pile of hacks... :-)
Platforms tested:
FreeBSD 4.11 (sleipnir)
h5committest
Unstable format version marker.
Description:
This marks the Check in baseline for compact group revisions,
which radically revises the source code for managing groups and object headers.
Earlier versions (1.7.52 or earlier) have the original format. This version
and later have the unstable format until further notice.
Platforms tested:
h5committested.
New feature
Description:
Check in baseline for compact group revisions, which radically revises the
source code for managing groups and object headers.
WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!!
WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!!
This initiates the "unstable" phase of the 1.7.x branch, leading up
to the 1.8.0 release. Please test this code, but do _NOT_ keep files created
with it - the format will change again before the release and you will not
be able to read your old files!!!
WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!!
WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!! WARNING!!!!
Solution:
There's too many changes to really describe them all, but some of them
include:
- Stop abusing the H5G_entry_t structure and split it into two separate
structures for non-symbol table node use within the library: H5O_loc_t
for object locations in a file and H5G_name_t to store the path to
an opened object. H5G_entry_t is now only used for storing symbol
table entries on disk.
- Retire H5G_namei() in favor of a more general mechanism for traversing
group paths and issuing callbacks on objects located. This gets us out
of the business of hacking H5G_namei() for new features, generally.
- Revised H5O* routines to take a H5O_loc_t instead of H5G_entry_t
- Lots more...
Platforms tested:
h5committested and maybe another dozen configurations.... :-)
New feature
Description:
Add in baseline "object copy" code from Peter [in the form of a new API
routine: H5Gcopy()]. There's still some work to do (like handling variable-
length datatypes and possibly support for references) and it hasn't been tested
on mounted files yet, but the core functionality is there and working
correctly.
I've also got a set of patches to update the 1.6 branch with tweaks to
keep the branches mostly in sync, but Elena will kill me if I import them
before the 1.6.5 release is out... :-)
Platforms tested:
FreeBSD 4.11 (sleipnir)
h5committested
Updated RELEASE.txt
Description:
Mentioned that h5c++ and h5fc now support linking against shared libraries.
Platforms tested:
documentation change only
Update copyrights.
Description:
Solution:
This should address almost all of the "simple" cases in the repository.
There's still work to do, but it's going to require actually thinking about
the files in question instead of just copying & pasting.
bug fix
Description:
an assertion after the search for objects was saying that the number of
objects in file should be > 0
removed it, since there can be a case where the number of objects is 0.
in this case this was found by a case where zlib was not present and the output file
was not written any objects to
note: this was only detected on the windows batch files, that do not have a conditional
condition to not run tests when a filter is not present
Solution:
Platforms tested:
linux
Misc. update:
Bug fix
Description:
Fix "double root open" bug and apply same fix to datasets & named datatypes.
Also fix bug in symbol table entry lookup code that would "transfer" an
object from one file handle to another file handle when the two file handles
were opened on the same actual file.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
Updated release notes
Description:
Mentioned that shared C++ and Fortran libraries are supported in
INSTALL and RELEASE.txt.
Platforms tested:
documentation change only
Description: Added support for "big" REAL and DOUBLE PRECISION types.
Solution:
Platforms tested: heping with g95 (-r8, -d8)
mir with ifc (-r16, -r8)
Misc. update:
Purpose:
Add the known problem for IRIX6.5 C version >7.4.
Description:
Somehow SGI's MPI implementation doesn't free MPI_TYPE_entries,
So for large application to use MPI derived datatype, environment
variable MPI_TYPE_MAX needs to be reset.
Solution:
Platforms tested:
Misc. update:
Code cleanup & speedup
Description:
Refactor h5dump & related code to be considerably cleaner & faster for
files with large #'s of objects.
Platforms tested:
FreeBS 4.11 (sleipnir)
Linux 2.4
Maintenance on Windows
Description:
Add how to build hdf5 with thread-safe feature on windows into the
document
Solution:
Platforms tested:
Misc. update:
Bug fix
Description:
Fix core dump when checking whether to invalidate the name of an object
when unlinking an object in a group opened through an object reference.
Solution:
Check if names of various objects are valid before comparing them, etc.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
Add more comments for collective chunk IO supports.
Description:
On some platforms that use mpich library internally, we have no way to check mpich version number. We have to manually turn off the collective IO supports.
One example is Altix(cobalt). Just put a comment there so that we won't forget about this.
Solution:
Platforms tested:
Misc. update:
Description:
Added missing member functions:
H5::CompType::getMemberArrayType
H5::CompType::getMemberVarLenType
H5::AbstractDs::getArrayType
H5::AbstractDs::getVarLenType
H5::CommonFG::openArrayType
H5::CommonFG::openVarLenType
H5::PropList::copyProp -- this will replace the current
H5::PropList::copyProp in later releases due
to incorrect prototype.
H5::IdComponent::getHDFObjType
Bug fix
Description:
Correct problems when querying information about a group that was opened
by dereferencing an object reference.
Solution:
Read in symbol table information instead of rely on it being cached.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
Bug fix
Description:
If a named datatype is copied and the copy is used to create a dataset,
the dataset would inadvertantly refer to the original named datatype instead
of a local (possibly modified) copy of the named datatype.
Solution:
Fixed datatype copying routine.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
Bug fix
Description:
Further progress on fixing file mounting to work properly.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Linux 2.4
Too minor to require h5committest
Description: There was a bug in the calculating code of the Fletcher32
checksum in the library before v1.6.3. The checksum value wasn't consistent
between big-endian and little-endian systems. This bug was fixed in
Release 1.6.3. However, after fixing the bug, the checksum value is no
longer the same as before on little-endian system.
Solution: Made the library compare both the correct checksum and incorrect
checksum generated from v1.6.2 or before. This makes the library be
backward compatible but not forward compatible.
Platforms tested: h5committest and fuss.
Misc. update: Documented the forward incompatibility problem in the
Known Problem section in RELEASE.txt
Modification on .Net and Intel part
Description:
In batch mode, there should be no options to choose build Only HDF5 C or both C and C++ library
with visual studio .net or intel compiler for the time being
Solution:
Platforms tested:
Misc. update:
Bug fix & code cleanup
Description:
Don't unmount child files from a parent file if the parent file is
being held open by an object.
Also, moved the mounting routines into their own source file and the
superblock routines into their own file also.
Solution:
Moved the code for unmounting child files down in the H5F_close routine
and also add checks to the file and group mounting code to unmount child
files when the last object holding open a file closes.
Platforms tested:
FreeBSD 4.11 (sleipnir)
h5committest
Bug fix
Description:
Fixed bugs that caused tests to be unable to find testhdf5.sh during
daily tests, and another that broke sol and shanti.
Solution:
When tests are run, their path is ./$testname .
When scripts are run, their path has no leading "./". Fixed.
Sol and shanti don't recognize the -e option for test, but they do know
-f. Fixed.
Also modified release notes.
Platforms tested:
mir, shanti, heping
Bug fix
Description:
When a series of files is mounted on one another and one of those files
is not unmounted, the library gets confused at shutdown and goes into an
infinite loop in the file interface.
Solution:
If there are still files left in the "closing" state when shutting down
the file API, iterate over those file IDs and unmount any child files that we
find mounted on those files.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
Description: First, report a bug fix(#214) of family driver. Second
document PGI compiler bug for optimization on AMD processor.
Misc. update: First, report a bug fix(#214) of family driver. Second
document PGI compiler bug for optimization on AMD processor.
Description:
When compiler flag was used to set the size of Fortran integer
to 8 bytes, library would fail.
Solution:
Cleaned up the code; added detection of Fortran INTEGER type size
and appropriately defined int_f type for C-stubs routines.
Platforms tested:
Solaris 2.8 32 and 64-bit, AIX 5.1 64-bit parallel
PGI Fortran with -i8 flag on heping
Absoft Fortran with -i8 flag on heping
g95 on mir (Fortran integer is 8 bytes by default that cannot be
changed - compiler bug ;-)
AIX Fortran with -qintsize=8 32 and 64-bit modes on copper
Misc. update:
Bug fix
Description:
Hyperslab selections that had a selection offset and were applied to a
chunked dataset could get into an infinite loop or core dump if the same
selection was used multiple times, with different selection offsets.
Solution:
"Normalize" the selection with the selection offset, generate the
selections for the chunks overlapped and then "denormalize" the selection.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
Bug fix
Description:
Add check for opaque tags that are too long for file format to handle
currently.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5commmitest
File was split into three parts.
Description:
The short version was split into three parts three compilers
MSVS 6.0 MSVS .NET and Intel Compiler
Solution:
Platforms tested:
Misc. update:
Add short version instruction for users using Intel Compiler
Description:
Add a short version instruction for building and testing HDF5
with Intel C and Fortan compiler on windows XP.
Solution:
Platforms tested:
Misc. update:
Add short version instruction for Visual C++ .net 2003
Description:
Short version instruction for building and testing HDF5
with Visual C++ .Net was added.
Solution:
Platforms tested:
Misc. update:
Separate short version instruction for different compilers.
Description:
Add short version instruction for MSVS 6.0
Solution:
Platforms tested:
Misc. update:
Bug fix
Description:
Fix several NULL pointer dereferences when tracking the name of open
objects during some unusual sequences of mount & unmount operations.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
Bug fix/new feature
Description:
Setting "SEMI" or "STRONG" file close degrees causes problems when multiple
file IDs exist for the same file on disk.
Solution:
Make the "SEMI" and "STRONG" settings only apply to the file ID that is
being closed.
Also, add an "H5F_OBJ_LOCAL" flag for the H5Fget_obj_count() &
H5Fget_obj_ids() calls, so that applications can query about objects opened
with a particular file ID instead of all the objects opened in the file on
disk.
Platforms tested:
FreeBSD 4.11 (sleipnir)
h5committest
Description: See details from Bug #213. Family member file size wasn't saved
anywhere in file. When family file is opened, the first member size determine
the member size.
Solution: This is the third step of checkin. h5repart has been modified. If h5repart is used
to change the size of family member file, the new size(actual member size) is saved in the superblock.
In the second step of checkin, multi driver is checked against the driver
name saved in superblock. Wrong driver will result in a failure with an error message indicating
multi driver should be used. This change includes split driver because it's a special case for multi
driver.
In the first step of checkin. Family member size and name template(unused at this stage) are saved
in file superblock. When file is reopened,the size passed in thrin superblock. A different size
will trigger a failure with an error message indicating the right size. Wrong driver to open family
file will cause a failure, too.
Platforms tested: h5committest and fuss
Misc. update: RELEASE.txt
Feature
Description:
Added "support" for UTF-8 character encoding.
Solution:
Wrote tests to check that UTF-8 can be used in a number of places in
HDF5 (object names, data, etc.). These tests live in test/tunicode.c.
Added a new UTF-8 character encoding for datatypes.
Platforms tested:
mir, modi4, heping
Misc. update:
Description: h5pget_driver_f function returned information that could not
be interpreted by fortran application
Solution: Defined Fortran global variables that correspond to
the C H5FD_<driver_name> variables at the Fortran library
initialization time.
Platforms tested: heping with PGI compilers, sol 64-bit and copper parallel
Misc. update:
Description: Removed support for SRB driver
Solution: Removed or modified appropriate files; ran reconfigure
to regenerate Makefile.in and configure files.
Platforms tested: heping and shanti
Misc. update: ran bin/chkmanifest on heping
Description: Added missing h5get_member_class_f function
Solution:
Platforms tested: heping; it is a simple change. I will
watch daily tests and take care of failures.
Misc. update:
Update documents about installing hdf5 on windows xp
Description:
Modified files: INSTALL_Windows.txt INSTALL_Windows_From_Command_Line.txt
INSTALL_Windows_Short.txt
Solution:
Platforms tested:
Misc. update:
Purpose:
Added C++ wrapper for Packet Table API.
Description:
Added macro for high-level C++ library (LIBH5CPP_HL), which changes every
Makefile.in.
Added directories for high-level C++ library (though currently only Packet
Table API is supported).
Added both C++ source and tests.
Platforms tested:
sleipnir, mir, modi4
Misc. update:
Optimization
Description:
Speed up I/O on enumerated datatypes (including those nested in compound
datatypes, arrays, etc.) if the destination datatype is a proper superset of
the source datatype.
Solution:
Detect the situation and treat as no-op datatype conversion.
Platforms tested:
FreeBSD 4.11 (sleipnir)
Too minor to require h5committest
Automake update cleanup and minor changes
Description:
Removed macros in acsite.m4 that are no longer used.
Switched to using autoconf's AC_LANG_PUSH(Fortran) instead of old
AC_LANG_FORTRAN9X macro.
Switched to using AC_LANG_PUSH() and AC_LANG_POP() (from old AC_LANG_X).
Added ifort to list of Fortran compilers configure will look for.
Added a note about automake change to Release Notes.
Platforms tested:
copper, modi4 (parallel and serial), eirene
Description: Support of hardware conversion between "long double" and integers(mainly in
H5Tconv.c) and test cases for it(mainly in dtypes.c)
Platforms tested: h5committest and fuss
Misc. update: RELEASE.txt
Update.
Description:
Update installation file on how to link HDF5 with Zlib 1.2.2 and Szip 2.0 DLL libraries.
Solution:
Platforms tested:
Misc. update:
Description: H5Tget_member_value didn't return correct value if called after
H5Tenum_valueof. It's because there's a sorting on the members of enum type in
H5Tenum_valueof which changed the order of members.
Solution: Made a copy of original type and do sorting on it to protect the
original order.
Platforms tested: fuss; tested v1.6 with h5committest
Misc. update: RELEASE.txt
Description: For variable-length string, H5Tget_class returned H5T_STRING as
its class. But H5Tdetect_class and H5Tget_member_class considered it as
H5T_VLEN. This is fixed to let all these 3 functions treat it as H5T_STRING.
Some test cases have been added to dtypes.c
Platforms tested: heping - already tested for v1.6 with h5committest
Misc. update: RELEASE.txt
Description: The byte order for all 1-byte integer types was fixed as little-endian
even on a big-endian machine. This's corrected in h5detect.c. When types are only
1 byte long, a native int is used substitute the type to detect byte order. Some tools
like h5dump and h5repack are also corrected in this case.
Platforms tested: fuss, copper, sol.(There're some failures from the recent configure
change).
Misc. update: Information in the RELEASE.txt.
Description: Removed PABLO from the source
Solution:
Platforms tested: arabica with 64-bit, copper with parallel,
heping with GNU C and C++ and PGI fortran (but
I disabled hl, there is some weird problem only
on heping: F9XMODFLAG is not
propagated to the Makefile files
Misc. update:
Description: Start to support software conversion between long double and
all integers.
Solution: No major changes to the algorithm. Changes to configure is to
exclude SGI for long double to integers test because there're too many problems
in their compiler.
Platforms tested: h5committest, modi4, fuss, Teragrid, arabica
Misc. update: RELEASE.txt
Bug Fix/Code Cleanup/Doc Cleanup/Optimization/Branch Sync :-)
Description:
Generally speaking, this is the "signed->unsigned" change to selections.
However, in the process of merging code back, things got stickier and stickier
until I ended up doing a big "sync the two branches up" operation. So... I
brought back all the "infrastructure" fixes from the development branch to the
release branch (which I think were actually making some improvement in
performance) as well as fixed several bugs which had been fixed in one branch,
but not the other.
I've also tagged the repository before making this checkin with the label
"before_signed_unsigned_changes".
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel & fphdf5
FreeBSD 4.10 (sleipnir) w/threadsafe
FreeBSD 4.10 (sleipnir) w/backward compatibility
Solaris 2.7 (arabica) w/"purify options"
Solaris 2.8 (sol) w/FORTRAN & C++
AIX 5.x (copper) w/parallel & FORTRAN
IRIX64 6.5 (modi4) w/FORTRAN
Linux 2.4 (heping) w/FORTRAN & C++
Misc. update:
Description: INSTALL file in 1.7 branch had old information about
the minimum set of header files that should be installed
Solution: Fixed
Platforms tested: N/A
Misc. update:
Update.
Description:
Update HDF5 Windows installation documentation to include recently added HDF5 high level library and tests information.
Solution:
Platforms tested:
Not necessary.
Misc. update:
Bug fix
Description:
Correct values used in "space utilization" equation: the 'used' and
'total' values were backwards.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Too minor to require h5committest
Bug fix
Description:
Fix core dump when flushing a file with a newly created attribute which
hasn't had a value written to it still open.
Solution:
Write the attribute fill value when appropriate.
Platforms tested:
FreeBSd 4.10 (sleipnir)
Linux 2.4 (verbena)
Solaris 2.7 (arabica)
Purpose: change feature
Description: Back up support bitfield and time datatypes in H5Tget_native_type.Leave it to future support. Let it return "not supported" error message for
now.
Platforms tested: h5committest and fuss.
Misc. update: RELEASE.txt
Bug fix
Description:
Relax restrictions on parallel I/O to allow compressed, chunked datasets
to be read in parallel (collective access will be degraded to independent
access, but will retrieve the information still).
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Solaris 2.7 (arabica)
IRIX64 6.5 (modi4)
h5committest
Description: enable size adjustment for compound datatype. The size
can be increased and decreased(as long as the last member isn't cut).
Solution: mainly check if the last member is being cut when decreasing
the size. Others are simply taking out assertion to enable this feature.
Platforms tested: h5committest and fuss.
Misc. update: RELEASE.txt
Bug fix.
Description:
Fix off-by-one error in Core VFL driver which would cause spurious address
or size overflow errors when an odd valued address or size was checked.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Linux 2.4 (heping)
Solaris 2.7 (arabica)
Update release_docs/RELEASE.txt to describe options for dealing
with installations which insert extra text in output, thereby
breaking tests which function by comparing output with an exemplar.
Description:
See above.
Solution:
Add discussion of this possible problem, and listed two possible
solutions:
1) "setenv HDF5_Make_Ignore yes" and then score "failed" tests
by hand.
2) Use the RUNSERIAL environment variable to use a filter script
to filter out the extra text.
Platforms tested:
No testing needed.
Misc. update:
Bug fix
Description:
Correct typedef for dataset region references to avoid struct alignment
issues on Crays.
Solution:
Change the typedef for hdset_reg_ref_t from a struct to an array of
unsigned char's of the correct size and propagate the appropriate adjustments
around the code.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Linux 2.4 (verbena) w/fortran
Cray T90 (subzero) w/fortran
Cray SV1 (wind) w/fortran & parallel
Cray T3E (cyclone) w/fortran & parallel
Description: Restore 6 old error API functions back to the library to be backward
compatible with v1.6. They are H5Epush, H5Eprint, H5Ewalk, H5Eclear, H5Eset_auto,
H5Eget_auto. These functions do not have error stack as parameter.
Solution: Internally, these functions use default error stack.
Platforms tested: h5committest and fuss.
Misc. update: RELEASE.txt
Bug fix (sorta)
Description:
Change reading of "missing" chunks from datasets with undefined fill
values to not overwrite the application buffer with random garbage from
memory. Note that this is almost the same, since whatever garbage the
application had in those locations will still be there...
Platforms tested:
FreeBSD 4.10 (sleipnir)
IRIX64 6.5 (modi4)
h5committested
Description: Added PGI Fortran support for Linux64 systems (x86_64)
Solution:
Platforms tested: AMD Opteron box at AMD Sunnyvale and verbena
with PGI and gcc compilers.
Misc. update:
Bug fix
Description:
Correct possible core dump when a datatype conversion function is
registered with the library after a compound datatype has been converted
(having it's type conversion information cached by the library). The compound
datatype must have been created by inserting the fields in non-increasing
offset order to see the bug.
Solution:
Re-sort the fields in the compound datatypes before recalculating the
cached information when performing the conversion on them.
Platforms tested:
FreeBSD 4.10 (sleipnir)
h5committested
Bug fix
Description:
Correct buffer overrun in "multi" VFL driver that was writing past the
end of the "driver name" buffer when encoding the driver info block for the
file's superblock.
Platforms tested:
FreeBSD 4.10 (sleipnir)
Too minor to require h5committest
Bug fix.
Description:
Address two problems:
- The computation of the scanline in the szip filter was being
performed in the "can apply" callback routine instead of the
"set local" routine.
- The routine which allocated all the chunks for an entire dataset
(which is invoked when the allocation time is early or late,
rather than incremental) wasn't recording a failed filter in
the information for the chunk, causing the library to believe
that the chunk had the filter applied when it really hadn't.
Solution:
- Move the scanline computation to the "set local" callback.
- Record the filter mask with each chunk created when allocating them.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/szip
Too obscure to require h5committest
Description: Added support for Absoft Fortran compiler
Solution: Modified configuration file to check which Fortran compiler is used
and set appropriate flags.
Platforms tested: verbena with pgf90 and Absoft f95 compilers
Misc. update:
Bug fix
Description:
Allow I/O on extendible chunked datasets with (currently) zero-sized
dimensions to proceed harmlessly instead of dumping core on an assertion.
Solution:
Removed assertion and added checks to avoid problem situation in H5TB_end
Platforms tested:
FreeBSD 4.10 (sleipnir) w/ & w/o parallel
Too minor to require h5committest
Bug fix
Description:
Always write fill values to chunks when initializing entire B-tree and
any filters are defined.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Solaris 2.7 (arabica)
Too minor to require h5committest
Purpose: Maintenance for MAC OSX
Description: Added support for Absoft Fortran compiler f95;
Ddefault compiler is set to IBM xlf.
Solution:
Platforms tested: pommier with xlf and Absoft f95 compilers
Misc. update:
Code cleanup, sorta
Description:
Added ifdef sections for "H5_USING_PURIFY" in various places in the code,
which are designed to reduce the spurious "uninitialized memory read" warnings
from purify which are actually OK. Note that this macro will have to be
turned on by adding it to the CFLAGS for the build - I didn't think it was
important enough to add a configure flag for.
Also, the changes in H5HG.c optimize the walks through the objects in a
heap to only look at the 'used' entries instead of all the 'allocated' entries.
Platforms tested:
Solaris 2.7 (arabica) w/purify
Not tested by h5committest
Code cleanup
Description:
Fixed reserved.c test to use h5_fileaccess/h5_fixname/h5_cleanup.
Updated RELEASE.txt for previous bug fix
Platforms tested:
sleipnir, verbena
Description: This is the second step of checkin for encoding and decoding objects.
H5Tencode and H5Tdecode have been committed in the previous step. H5Sencode
and H5Sdecode are checked in this time.
Solution: Given object ID, these functions encode and decode object information
into and from binary buffer and return new object ID. They take advantage of the
existing codes of object header message and encode in the same format.
Platforms tested: fuss and h5committest.
Misc. update: RELEASE.txt
Bug fix
Description:
Allow buffer parameter to H5Dread & H5Dwrite to be NULL if there are no
elements to transfer.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Too minor to require h5committest
Purpose:
Bug Fix
Description:
Trying to create the root group or the working group ("/" or ".") fakes out
HDF5 so that it neither creates a group nor returns an error.
Solution:
H5G_namei now throws an error if it was supposed to insert but didn't.
Platforms tested:
sleipnir, Visual Studio 7 (very minor change)
Misc. update:
Bug fix
Description:
Correct problems with "resurrecting" a dataset in a file. (This occurs
when a dataset which is open gets unlinked from the group hierarchy (making it
"dead" and marked for deletion in the file) and then is re-linked to the group
hierarchy). Note that the current solution applies only to datasets, further
work will fix this for groups and named datatypes also.
Also, fix the "debug" routines to be a little more helpful in certain
situations.
Additionally, fix a locking bug in the symbol table node splitting routine
which could be [one of] the cause[s] of the file corruption in flexible
parallel operation.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
h5committested
Bug fix
Description:
Fix error in chunked dataset I/O where data written out wasn't read
correctly from a chunked, extendible dataset after the dataset was extended.
Also, fix parallel I/O tests to gather error results from all processes,
in order to detect errors that only occur on one process.
Solution:
Bypass chunk cache for reads as well as writes, if parallel I/O driver is
used and file is opened for writing.
Platforms tested:
FreeBSD 4.10 (sleipnir) w/parallel
Too minor to require h5committest
Purpose: Maintenance
Description: Added h5fget_name_f and h5fget_filesize_f subroutines and tests.
Solution: N/A
Platforms tested: arabica (32-bit), sol (64-bit)
parallle build on copper failed for the C library with the the
following error:
ld: 0711-317 ERROR: Undefined symbol: .H5FD_stdio_term
Since this change doesn't affect the C library, I am cheking it in
and will retest the fresh CVS copy after this check-in.
Misc. update:
Purpose:
HDF5 now supports SZIP with no encoder.
Description:
SZIP can be configured to have both encoder and decoder or just to have the decoder. HDF5 can now query the configuration of any filter, and will throw errors if users try to write using a filter with encoding disabled.
Solution:
Added H5Zget_filter_info function, changed API for H5Pget_filter and H5P_get_filter_by_id. See SZIP RFC.
Platforms tested:
Copper (fortran, C++, parallel), Sleipnir (C++), Arabica (fortran, C++), Verbena (fortran, C++)
Misc. update:
Purpose:
Updated H5MPprivate.h for the new API function H5Itype_exists.
Description:
This is the last commit for these changes... I swear...
Solution:
Platforms tested:
Misc. update:
Description: Added new API H5Fget_name and new test program called filename.c. This function
returns the name of the file by object ID(file, group, dataset, named datatype, and attribute)
which belongs to the file.
Platforms tested: h5committest and fuss.
Misc. update: MANIFEST and RELEASE.txt
Description: If compound datatype has variable-length string as field, after it's committed to
the file, when it's reopened, the size of the datatype is miscalculated. It makes the data
unreadable. Dumper also fails to read data because of this problem.
Solution: Change the size of datatype when it's committed to file. Then modify the size again
for memory type when it's reopened.
Platforms tested: h5committest and RH 8.
Misc. update: RELEASE.txt
Purpose: Maintenance
Description: h5dwrite/read_f and h5awrite_read_f functions were overloaded
with dims argument being of type INTEGER and INTEGER(HSIZE_T).
We promised to remove overloading in 1.4 release. It was
removed from documentation but not from the source code.
Solution: Finish code cleanup.
Platforms tested: Solaris 2.7 32 and 64 bit, and copper with --enable-
parallel. Windows are broken, so Kent and Xuan
will test it with their changes later.
Misc. update:
Description: a new dataspace, null dataspace.
Solution: it's a dataspace without any element. This is a staged check-in.
After daily test succeeds, will add a test.
Platforms tested: h5committest
Misc. update: RELEASE.txt
Description: integer-float software conversion. There are some
print commands left in the source code. Will clean them up once
no problem is found in test.
Platforms tested: h5committest.
Misc. update: RELEASE.txt
bug fix
Description:
the fletcher filter used a temporary 2 byte word buffer to compute the checksum.
this is non portable between big-endian/little endian.
Solution:
replaced with a buffer of 1 byte type
Platforms tested:
linux
solaris
solaris 64 bit
AIX
windows
Misc. update:
Code cleanup/bug fix
Description:
Fix configuration files to allow 64-bit compilation of the library with
a 64-bit version of zlib.
Solution:
Moved important compiler flags settings from CC macro to CFLAGS macro.
Instead of setting CC (F9X, CXX) environment variable for compiling for 64-bit
code, users should just set the CFLAGS (FFLAGS, CXXFLAGS) to -q64.
Updated INSTALL file to reflect this change.
Platforms tested:
IBM p690 (copper) w/parallel, FORTRAN, C++, srcdir.
Platforms specific - h5committest does not apply.
Description: software conversion from float to integer(integer to float hasn't
be done yet).
Solution: This is the software conversion.
Platforms tested: h5committest
Misc. update: RELEASE.txt
Purpose:
replaced name of delete filter with remove filter for the new function H5Premove_filter
Description:
Solution:
Platforms tested:
linux
Misc. update:
New Feature. (Contributed by Robb)
Description:
Allow h5ls to specify a VFL with the '--vfl=' command line flag.
Add MPI-I/O & MPI-POSIX VFL drivers to list of drivers available for
h5ls and h5dump.
Platforms tested:
FreeBSD 4.9 (sleipnir) w/parallel
h5committested
Bug fix.
Description:
Allow H5Tget_native_type() to handle opaque fields in compound datatypes.
Platforms tested:
FreeBSD 4.9 (sleipnir)
too minor to require h5committest
Bug fix/optimization
Description:
Address slowdown in MPI-I/O file metadata operations that was introduced
mid-stream. We now _require_ a POSIX compliant parallel file system for the
MPI-I/O file driver (as well as for the MPI-POSIX file driver).
Also optimized file open operation when the file is being created by
reducing the number of collective & syncronizing calls.
Additionally, refactor the MPI routines into a common place, eliminating
duplicated code.
Platforms tested:
FreeBSD 4.9 (sleipnir) w/parallel
h5committest
Code cleanup
Description:
Add C++ and FORTRAN wrappers for new H5Pdelete_filter routine, along with
documentation and a note in the release notes.
Platforms tested:
FreeBSD 4.9 (sleipnir)
Linux 2.4 (verbena) w/ C++ and FORTRAN
Too minor for full h5committest
Add tests & docs
Description:
Added tests for the recent B-tree bug fixes & document their fix in the
release notes.
Platforms tested:
FreeBSD 4.9 (sleipnir)
Too minor to require h5committest
Bug fix
Description:
Correct two problems with variable-length datatypes in datasets:
- When overwriting an entire dataset, writing the fill value to the
file would be skipped, causing problems for VL datatypes when
objects in the file had been unlinked (and thus the space in the
file was not all zeros)
- When an application has set a fill-value for a dataset and the
dataset's datatype contained a VL datatype, the library was filling
space on disk with the memory form of the VL information, instead
of the disk form.
Platforms tested:
FreeBSD 4.9 (sleipnir)
h5committest
Bug fix
Description:
When two property lists are compared, the H5Pequal routine was just
comparing the raw information for the property values. This causes problems
when the raw information contains pointers to other information.
Solution:
Allow a 'compare' callback to be registered for properties, so that a user
application get perform the comparison itself, allowing for "deep" compares of
the property value.
This was exported to the H5Pregister & H5Pinsert routines in the development
branch, but not the release branch.
Platforms tested:
FreeBSD 4.9 (sleipnir)
h5committest
Purpose: Maintenance
Description: Fortran APIs MAC OS X port for IBM XL Fortran compiler
Solution: Brought back changes from 1.6 branch
Platforms tested: pommier, h5comittested; this time h5committest
complained about copperpp directory and didn't run;
tests on verbena and sol passed.
Misc. update:
Bug fix
Description:
Fix small memory leak of fill-value information inside the library.
Solution:
"reset" the fill-value object header message, so that the internal buffer
gets freed.
Platforms tested:
FreeBSD 4.9 (sleipnir)
too minor to require h5committest
Bug fix
Description:
Range check the szip 'pixels per block' against the chunk size of the
dataset when attempting to create a new dataset, since the szip library
requires the PPB to be at least the size of the fastest changing dimension
in the chunk.
Platforms tested:
FreeBSD 4.9 (sleipnir)
too minor for h5committest
Bug fix
Description:
Fixed bug in hyperslab iteration where certain combinations of flattened
and non-flattened dimensions would cause incorrect locations to be iterated
over.
Platforms tested:
FreeBSD 4.9 (sleipnir)
too minor to require h5committest
Code cleanup, bug fixes
Description:
Wrap up rest of changes necessary for fixing the "short" MPI-I/O read
problem that Robb reported.
Platforms tested:
FreeBSD 4.9 (sleipnir)
too minor to require h5committest
Bug fix
Description:
Attributes which were created with scalar dataspaces were reporting their
dataspace as a simple dataspace when queried later.
Solution:
Fix the dataspace handling code when reading in the attribute message from
the file to set the extent type correctly.
Platforms tested:
FreeBSD 4.9 (sleipnir)
too minor to require h5committest
Bug fix.
Description:
Using a selection offset with hyperslab selections in chunked datasets
was getting into an infinite loop and hanging the application.
Solution:
Apply the selection offset to the hyperslab selection properly.
Platforms tested:
FreeBSD 4.9 (sleipnir) w & w/o parallel
h5committest
Bug fix
Description:
Make a copy of the index value for H5Giterate and use that instead of
dereferencing the index pointer.
Platforms tested:
FreeBSD 4.9 (sleipnir)
too minor to need h5committest
Bug fix
Description:
Variable length strings and sequences with NULL pointers were not handled
by library, causing problems access the data. This also affected fill values
for variable-length datatypes.
Solution:
Address the issues in the library by detecting NULL sequences/strings
and avoid trying to convert them.
Patched up dumper to display NULL sequences/strings.
Platforms tested:
FreeBSD 4.9 (sleipnir)
h5committest
Code optimization
Description:
Improved integer & floating-point datatype conversions by removing some
corner cases. Got rid of algorithm which walked the buffer of elements to
convert backwards, switching to algorithm which computes the non-overlapping
space in the buffer and repeatedly converts it in the forward direction.
Platforms tested:
FreeBSD 4.9 (sleipnir)
h5committest
Cray SV1 & T3E (T90 is not accessible)
Improvement
Description:
If the library is built in parallel mode, then name the "h5cc" and
"h5fc" programs "h5pcc" and "h5pfc" resp. This saves the user from
worrying about mixing serial and parallel builds of the library and
having to specify the pathnames and so-forth.
Platforms tested:
Linux (w/ parallel & Fortran)
Modi4 (w/ parallel & Fortran)
Sol (Serial & Fortran & C++)
Misc. update:
Updated release/docs/RELEASE
Bug fix & code cleanups
Description:
Change our use of MPI derived datatypes to not create datatypes with
"0-sized" lengths, which causes the LANL Q machine to hang.
Also, get rid of "prefer MPI derived datatypes" environment variable since
it has no advantage.
Platforms tested:
FreeBSD 4.9 (sleipnir) w & w/o parallel
h5committest
Description: new function H5Iget_file_id. It returns file ID given an obeject
(group, dataset, or attribute) ID.
Platforms tested: h5committest
Misc. update: RELEASE.txt
Bug fix
Description:
Single hyperslab selections (which were set with only one call to
H5Sselect_hyperslab) that had dimensions that could be "flattened" but were
interspersed with dimensions that could not be flattened were not correctly
handled, causing core dumps.
Solution:
Re-work "flattening" code to handle this case properly.
Platforms tested:
FreeBSD 4.9 (sleipnir) w/parallel
h5committest
bug fix, update documentation
Description:
version 8 of Code Warrior has a bug on the open file function
that causes one of our tests to fail
documented this in the install instructions
removed a CW specific header file include , that was left from version 6
from the file testhdf5.c
Platforms tested:
Code Warrior
linux
Misc. update: