Clean up formatting and delete two functions.
Description:
Minor reformatting at the head of each file (in the functions list).
Delete 2 functions from HM_H5T.html -- H5Tget_member_dims, H5Tinsert_array.
Platforms tested:
IE 5.
To warn users that RM_H5G.html and Groups.html can render groups and
datasets inaccessible in a file.
Solution:
Modified RM_H5G.html and Groups.html as follows:
-- Added warning (new section) to Groups.html that H5Gunlink and
H5Gmove can result in inaccessible groups and datasets.
-- Added links to that new section from H5Gunlink and H5Gmove
in RM_H5G.html.
Platforms tested:
IE5
Purpose:
Removing functions that have been removed from library.
Solution:
Removed H5Pget_driver, H5P[gs]et_stdio, H5P[gs]et_sec2,
H5P[gs]et_core, H5P[gs]et_split, H5P[gs]et_family,
H5P[gs]et_mpi, and H5P[gs]et_xfer.
Platforms tested:
IE5
"New" document
Description:
Raymond has prepared and added a new document reporting his
experience of using HDF5 with OpenMP. It was checked in as
a .txt file but browsers could not display it properly, at least
not for the MS-IE.
Solution:
I renamed the file from openmp-test.txt to openmp-hdf5.html,
added in simple mind html control statement (<pre>), added
an entry to the TechNote.html so that it can be found with
other technical notes.
Platforms tested:
Viewed by MS-IE.
Documentation of TS Library
Description:
This is the document Chee Wai wrote up about the thread safe
version of the HDF5 library. I just put it in HTML format and
checked it in...
Platforms tested:
Netscrape
Purpose:
This file describes the experiencing of OpenMP with hdf5.
Description:
All detailed description is in the file.
Solution:
[details about the changes, algorithm, etc...]
[Please as detail as you can since your own explanation is
better than others guessing it from the code.]
Platforms tested:
Everything was done on modi4.
Feature symmetry
Description:
A while ago I needed to get the 'type' of data being accessed during writes
to the VFL driver, so I put in code to get the information down there.
Albert asked for the same information during reads, so I've added that in.
Tested:
Netscape
Bug Fix
Description:
the line:
#include <hdf5.h>
needed to be escaped to be seen in the browser.
Solution:
Changed to:
#include <hdf5.h>
Platforms tested:
Seen in Netscrape
Adding new document links
Description:
Adding links to TechNotes/VFL.html and TechNotes/VFLfunc.html,
the new virtual file layer documents.
Platforms tested:
IE 5
Adding new document
Description:
Adding VFL.html (Virtual File Layer) to HDF5 Technical Notes.
August 1999 version. Will be updated for R1.4 by developer.
Platforms tested:
IE 5
Purpose:
Clarification of H5Fclose
Description:
RM_H5F.html / H5Fclose: Added note that all data is flushed to file.
Platforms tested:
Tested with IE 5.
Bug fix
Description:
The documentation on how to dump attribute data was not complete
enough. Some people got confused on the commandline syntax (you
have to specify the "path" from the root group to the attribute
to dump it). I put some examples in to show how to correctly dump
attributes.
Platforms tested:
Viewed with Netscrape.
Update
Description:
Added the description of the environment variable HDF5_MPI_OPT_TYPES
which controls the use of optimized MPIO routines.
Platforms tested:
Viewed via IE.
Purpose:
Bug fix -- #445
Description:
In RM_H5D.html in the H5 Reference Manual, the H5Dget_storage_size
entry described the wrong FAILURE return value.
Solution:
Changed H5Dget_storage_size return value on FAILURE to 0 (zero).
Platforms tested:
Tested in Internet Explorer 5.
Feature
Description:
Added a new document of all the controls (compiler macros,
environment variables, ...) that affect the functionality of
the libraries and tools.
Platforms tested:
Viewed with MS IE.
RM_H5Front.html
Added new Fortran90 functions and links. Related edits.
Added "Describes HDF5 Release..." line in page footers.
Minor editorial corrections.
H5Tvlen_create: Added cross-reference to H5Dget_vlen_buf_size
and H5Dvlen_reclaim.
H5Tget_class: Removed numbers from class identifiers list.
Added H5T_VLEN to class identifiers list.
RM_H5F.html
H5Freopen: Corrected description of file_id parameter.
Added comment about eventually closing returned identifier.
Added clarification that function cannot open closed files.
H5Pget_chunk: Changed max_ndims parameter description to IN.
H5Pget/set_gc_references: Corrected signature errors,
added missing parameter description and values.
H5Pget/set_family: Removed. These are not implemented.
H5Pget/set_hyper_cache: Corrected signature and parameter
expressions, added missing parameter description.
H5Pset_buffer: Added units for parameter 'size'.RM_H5P.html
H5Pget/set_split: Corrected misnamed parameters.
H5Pset_alignment and H5_set_core:
Edited for clarity.
Added statement regarding "special case" effect of
setting 'threshold' to 0 (zero).
Stated clearly that 'threshold' is non-negative and
'alignment' and 'increment' are both positive.
H5Pget/set_vlen_mem_manager:
Corrected cross-ref to H5Dvlen_reclaim.
Minor clarification regarding circumstances under which
contents of a parameter are ignored.
H5Pget_cache: Removed redundant material.
Removed H5Pset_compression (commented it out, actually) and
changed example which used it to use H5Pset_deflate.
H5.format.html
Driver Identification block: Added clarification regarding the
representation of the version in the driver identification string.
H5Dclose: Corrected return type to herr_t (was hid_t).
H5Dcreate: Inserted missing spaces in function syntax statement.
RM_H5E.html
H5Ewalk: Added H5E_walk_t prototype and prototype parameter
descriptions.
RM_H5F.html
H5Fclose: Corrected behavior description, eliminating
comment that function fials if other access identifiers
are still open and describing actual behavior.
RM_H5T.html
H5Tregister: Corrected possible 'pers' values to H5T_PERS_HARD
(was HARD) and H5T_PERS_SOFT (was SOFT).
H5Tfind: Corrected 'pcdata' parameter IN/OUT designation.
Groups.html
Added note that object names (in Groups.html) or dataset
names (in Datasets.html) must be unique.
Changed 'boot block' to 'super block'. (Groups.html only)
Files.html
Minor formatting fixes.
Datatypes.html
H5Tconvert: Added plist_id parameter.
References.html
Deleted "not implemented" and related messages.
Added description of H5Rget_object_type.
Deleted all material about internal dataset region references.
[Unlikely to be implemented (QK) and there was very little info.]
Commented out references to H5R_BADTYPE. [This appeared in the
list of "valid types", which it is not. And user is instructed
to test for 'a negative value' rather than 'H5R_BADTYPE'.
So this was deemed not to be user-level information.]
Changed 'boot block' to 'super block'.
Other minor editing changes.
H5Dopen: Corrected description of 'loc_id' parameter.
RM_H5T.html
H5Tset_strpad:
Corrected string padding values list (replaced 'H5T_STR_NULL &
H5T_STR_SPACE' with ''H5T_STR_NULLTERM, 'H5T_STR_NULLPAD, &
H5T_STR_SPACEPAD'.
Added notes re conversion from shorter to longer strings and
from longer to shorter strings.
Other minor edits and formatting.
H5Tget_class
Corrected H5T_ENUM and H5T_REFERENCE entries in class
identifiers table (they were reversed).
Tools.html
h5dump: Added note that '-bb' option is not yet implemented.
Changed 'boot block' to 'super block'.
Corrected link to HDF5 FTP archives.
H5.intro.html
Added paragraph stating that changes in bugfix Releases 1.2.x
are listed in the RELEASE, HISTORY, and README files.
H5.format.html
Merged R1.2 and R1.4 (development tree) versions.
Fixed centered paragraphs and moved first two figures to right
margin.
FF-IH_FileGroup.gif and FF-IH_FileObject.gif
New 'File-Group' and 'File-Object' images for Format Spec.
Changed 'Boot Block' to 'Super Block'. (FF-IH_FileGroup.gif only)
H5Sselect_hyperslab, H5Sget_select_elem_pointlist,
H5Sget_select_bounds:
Inserted missing punctuation and missing space between words.
H5Sget_simple_extent_dims: Added statement that either or both of
'dims' and 'maxdims' may be NULL.
in parameters section and removed reference to H5Fpublic.h.
RM_H5D.html H5Dvlen_reclaim: Inserted missing punctuation.
H5Dcreate: Added paragraph explaining that 'name' must be unique.
H5Pset/get_cache: Added missing rdcc_nelmts parameter.
Corrected inconsistent references to rdcc_wo parameter.
Clarified Purpose and Description sections.
H5Pget_sec2: Corrected return type from 'returntype' to 'herr_t'.
RM_H5A.html H5Acreate: Restructured and expanded the Description section,
with particular attention to the fact that the attribute name
specified in H5Acreate must be unique.
----------------------
./MANIFEST
./configure.in
./configure [REGENERATED]
Added more checking for `make' features.
./Makefile.in
./doc/Makefile.in
./doc/html/Makefile.in
./doc/html/Tutor/Makefile.in
./examples/Makefile.in
./pablo/Makefile.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
./config/commence.in
./config/conclude.in
./config/depend.in [REMOVED]
./config/depend1.in [NEW]
./config/depend2.in [NEW]
./config/depend3.in [NEW]
./config/depend4.in [NEW]
./config/dependN.in [NEW]
The directory search stuff was moved into commence.in, thereby
shortening the Makefile.in prologues.
./doc/html/Dependencies [NEW]
./doc/html/Tutor/Dependencies [NEW]
./examples/Dependencies [NEW]
./src/Dependencies [NEW]
./test/Dependencies [NEW]
./testpar/Dependencies [NEW]
./tools/Dependencies [NEW]
The `.distdep' files were all renamed to `Dependencies' to make them
more obvious. They are required (but may be empty) in every directory
that has a Makefile.in that ends with @CONCLUDE@ (you'll get an
obvious error from make if you forgot to create one).
./bin/trace
./src/H5.c
Added H5E_major_t and H5E_minor_t although tracing only prints the
integer value.
./src/H5E.c
./src/H5Epublic.h
Added tracing information.
./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDgass.c
./src/H5FDmpio.c
./src/H5FDsec2.c
./src/H5FDstdio.c
Fixed places where FUNC_LEAVE() evaluated it's argument more than
once.
Added tracing information.
Wrapped long lines.
./config/gnu-flags
Fixed a syntax error when we don't have a gnu compiler.
----------------------
./MANIFEST
./src/H5FDmulti.c [NEW]
./src/H5FDmulti.h [NEW]
./src/Makefile.in
./src/hdf5.h
The split driver was reimplemented as a more general "multi"
driver which is capable of splitting data into multiple files
like the family driver except the partioning is done by memory
usage type instead of address. The H5Pset_fapl_split()
function just calls H5Pset_fapl_multi() with arguments which
prepare to split the address space into two files: meta and
raw data.
This is the first version. I plan to allow the open() call to
relax a bit which would allow one to open an hdf5 file when
only the meta-data file is present. This would allow a very
large file to be split and stored on tape and the relatively
small meta file to be mirrored on disk to allow limited
browsing of the file (any request for raw data would fail).
./src/H5private.h
./src/H5F.c
./src/H5FD.c
./src/H5FDprivate.h
./src/H5FDpublic.h
./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDmpio.c
./src/H5FDsec2.c
Added the ability for a file driver to store information in
the superblock which would be needed if the file were opened
again later for reading. The format is driver-defined which
allows users to extend it however they like.
./doc/html/H5.format.html
Added information about the new driver information block of
the superblock. This is where file drivers store information
they need in order to reopen the file later.
./src/H5F.c
./src/H5Fprivate.h
./src/H5FD.c
./src/H5FDprivate.h
./src/H5FDpublic.h
./src/H5FDcore.c
./src/H5FDfamily.c
./src/H5FDmpio.c
./src/H5FDsec2.c
./src/H5Fistore.c
./src/H5R.c
The file access properties and the file access property list
were decoupled, which allows the property list to more cleanly
contain properties for various levels of the file and which
allows the property list to be modified more cleanly when
opening files.
./src/H5.c
./src/H5FDpublic.h
Removed H5FD_MEM_META and H5FD_MEM_GROUP since they're never
used.
./src/H5D.c
Changed the way we detect the MPIO driver in all these special
cases.
./src/H5F.c
./src/H5Rpublic.h
./test/tfile.c
The default file sizeof(offset) was changed to be a function
of haddr_t instead of hsize_t.
THE H5RPUBLIC.H DEFINITIONS WILL HAVE PROBLEMS IF THE USER
CREATES A FILE WITH NON-DEFAULT OFFSET AND SIZE SIZES!
./src/H5F.c
Fixed an uninitialized memory access bug in file closing
related to the VFL.
./src/H5T.c
./src/H5Tpublic.h
Added an H5T_NATIVE_HADDR predefined datatype which
corresponds to the `haddr_t' type.
./test/Makefile.in
Reformatted long lines.
./test/big.c
./test/cmpd_dset.c
./test/dsets.c
./test/dtypes.c
./test/extend.c
./test/external.c
Removed the H5F_ACC_DEBUG flag from file creation/open calls.
./test/big.c
Plugged a memory leak.
./test/h5test.c
Added support for the `multi' driver.
Removed #warning about not having the stdio driver. Plans are
to not implement it since the sec2 driver serves the same
purpose and testing didn't show any difference in execution
times between the two.
RM_H5S.html
Dataspaces.html
H5Sselect_hyperslab
H5Sselect_elements
Add H5S_SELECT_OR operator.
Converted operator list to a table.
H5Sextent_copy
Corrected source and destination descriptions. (RM_H5S.html only)
H5Screate
Removed unused H5S_NONE dataspace type.
H5Sset_extent_none
Corrected reset class type to H5S_NO_CLASS (previously said H5S_NONE).
RM_H5G.html
H5Gget_linkval
Corrected descriptions of 'loc_id', 'name', and 'value'.
Corrected "Purpose".
Emphasized need to call H5Gget_objinfo first.
H5Gset_comment
H5Gget_comment
Corrected description of 'loc_id'.
H5Gget_objinfo
Corrected description of 'loc_id'.
Added H5G_TYPE to list of valid values of 'type'.
RM_H5F.html
ExternalFiles.html
H5Fmount
H5Funmount
Corrected description of 'loc_id'.
Changed function descriptions in ExternalFiles.html to correspond to RM.
RM_H5T.html
Moved H5Tget_class and H5Tget_size to "General Datatype Operations" in top index.
H5.format.html
Copy edits
Beginning of revisions to bring the Specification up-to-date and
move it to present tense
Couple of new intro paragraphs, designed largely to offer the
user a bit more context
H5.user.html
Datatypes.html
Font correction and minor formatting changes.
H5.user.PrintGen.html
H5.user.PrintTpg.html
New files to enable creating a searchable and printable version
of the HDF5 User's Guide. These files enable the creation of a
PDF file containing the entire document. H5.user.PrintGen.html
controls the print job; H5.user.PrintTpg.html is the title page
for the PDF volume.
Changes since 19990611
----------------------
./doc/html/H5.format.html
Added documentation for opaque data types (bitfield types were
already documented but they were out of order).
./src/H5E.c
Fixed a bug with glibc2 on linux systems where `stdout' is an
extern and can't be used to initialize static data.
./src/H5T.c
./src/H5Tpkg.h
./src/H5Tpublic.h
./src/H5detect.c
Removed the `_T' from the new C9x types I just added so the
names are consistent with existing types. Besides, the fact
that something is a datatype is obvious because it starts with
H5T_NATIVE_.
./tools/h5ls.c
Added the new C9x data types. H5ls prints one of these types
only if it doesn't match one of the builtin C types.
Prints the OID for shared data types.
Fixed a formatting bug with symbolic links which was
introduced a few changes ago.
The commandline has been changed so that objects from multiple
files can be listed with a single command. Instead of
specifying a file name and an optional list of objects, each
thing to print is a file name and object concatenated. H5ls
figures out how to devide the name into a file name and object
name even when the file name part doesn't correspond to an
actual Unix file.
Old syntax: h5ls [OPTIONS] FILE [OBJECTS]
New syntax: h5ls [OPTIONS] FILE[/OBJECT] [FILE[/OBJECT]]...
Example ({X,Y} is expanded by the shell)
Old command: h5ls -d ../test/x.data dir1 dir2
New command: h5ls -d ../test/x.data/{dir1,dir2}
The filename is printed as part of the object name when full
names are requested (--full or --recursive). If people really
don't like this they can undefine a constant at the top of
h5ls.
Errors from the hdf5 library are turned off.
Commandline switches of the form `--width 80' are accepted in
addition to `--width=80'. This is more symmetric with
single-letter switches that take two forms: `-w 80' and
`-w80'.
./src/H5D.c
Added tracing instrumentation for H5Dvlen_reclaim().
./src/H5private.h
Added casts to int for the isalpha() et al macros to shut up
solaris warnings about char subscripts.
----------------------
./doc/html/Datatypes.html
./test/dtypes.c
Added documentation and tests for opaque types.
./tools/h5ls.c
Added a `-x' or `--hexdump' argument which is not fully
implemented (because I want to synchronize h5tools.c first)
but which will eventually print raw data in hexadecimal format
without any translation from disk. This would be useful for
debugging references and VL types.
./tools/h5tools.c
Added support for references (not quite finished yet, but
compiles -- I wanted to sync up this file before Patrick and I
got too far apart...)
./src/H5R.c
Checked for error return value from H5R_get_object_type()
./src/H5A.c
./src/H5D.c
Changed error return values from NULL to FAIL
./test/Makefile.in
./test/trefer.c
Creates trefer1.h5 and trefer2.h5 so that the second test
doesn't clobber the first file since the files might be useful
for debugging.
----------------------
Remove changes from CVS
./bin/release
Added a `--nocheck' switch which causes the script to not
check the contents of the MANIFEST file against CVS. This is
sometimes useful when you need to make a quick snapshot but
the MANIFEST file is not quite up to date.
./src/H5D.c
Removed warnings for unused variables
./src/H5Fprivate.h
Removed the WIN32 definition for `uint' and changed the data
type for `eof_written' from `uint' to `uintn'. Shouldn't this
really be `hbool_t'?
./src/H5Odtype.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tpublic.h
./test/dtypes.c
./doc/html/H5.format.html
Added support for bitfields and opaque data types.
DatatypesEnum.html
EnumMap.gif
Added enumeration datatypes -- First pass, only minimal editing.
Intro paragraph in Datatypes.html; details in DatatypesEnum.html.
EnumMap.gif is a figure for DatatypesEnum.html.
Tools.html
Added new h5toh4 supported object and data type.
H5.intro.html
Corrected transposed "start coordinates" in Example 1.
Corrected parameter and return types in function prototypes
and parameter descriptions
Deleted comments regarding unimplemented functionality in R1.0
which has since been implemented
Cleaned up formatting of commands TOC at top of page
References.html
Corrected parameter and return types in function prototypes
and in example code
Deleted comments regarding unimplemented functionality in R1.0
which has since been implemented
----------------------
./INSTALL
./doc/html/Compression.html
./doc/html/Filters.html
Disassociated GNU from zlib. Did not change the introduction
which incorrectly states that compression in hdf5 is available
only if GNU gzip is available (should read zlib).
Changed a typo in INSTALL to match what is documented in
various other places: that zlib 1.1.2 (not 1.0.2) or better is
required for compression.
Added a reference to the main zlib web page in various places.
./src/H5Fistore.c
Fixed a typo in a comment.
./src/H5Flow.c
Removed carriage returns from the end of lines.
./test/dsets.c
The deflate compression tests are still run but `-SKIP-' is
printed instead of `PASSED' if the zlib library was not
detected at configuration time. The tests check that the
compression layer (H5Z) is correctly bypassed.
been checked into "HDF5 Development" branch.
General
=======
Various "copy edit" types of repairs.
Revisions to document cross-linking.
Added structural links tying all docs together (banners
at top and bottom of documents, similar to Reference Manual
banners of the Beta release).
Set background color to white in all documents.
NCSAfooterlogo.gif
hdf2.jpg
New image files to make the documents more self-contained
(i.e., to prevent loading images from NCSA and HDF home servers).
index.html
Redesigned to isolate links external to the installation
in a single location.
Intro to HDF5
=============
H5.intro.html
Fixed banner linking Intro to other docs.
Set all URLs to be relative within the distribution; nothing
points back to the HDF server.
Updates to "Limits of the Current Release" and "Changes in
the Current Release."
HDF5 User's Guide
=================
Changed several User Guide section titles such that all
sections that are primarily about a particular interface
are now titled in the format "The xxxxx Interface (H5x)".
H5.user.html
Commented out links to developer docs since they are marked
in MANIFEST as not being for distribution in the release.
Removed 2nd and 3rd indices from page.
Changed "freeform" lists of sections (TOCs) to aligned tables.
Datatypes.html
Removed the sentence "I'm deferring definition until later
since they're probably not as important as the other data
types." from Section 3.3, "Properties of Date and Time
Atomic Types."
Added info regarding 'char' versus 'string' datatypes. Added
as Section 3.7, "Character and String Datatype Issues."
References.html
Commented out substantial material (at end of document) from
References planning document that is not appropriate for
the User Guide but that is worth keeping around.
Groups.html
Final edits from elimination of "current working group."
HDF5 Reference Manual
=====================
Removed "Draft" from the <title>__</title> lines.
RM_H5Front.html
Removed 2nd and 3rd indices from page.
Changed "freeform" lists of sections (TOCs) to aligned tables.
RM_H5F.html
RM_H5P.html
Add file mounting information.
----------------------
./INSTALL
Added warning that enabling debugging code can adversely
affect performance even when the debugging isn't turned on at
run-time. Performance testing shows that under certain
circumstances (like data type conversions of compound types)
the H5_timer functions, although only a few lines each,
contribute a fairly large percent to the execution time.
./src/H5T.c
./src/H5Tpkg.h
./src/H5Tpublic.h
Improved the H5Tunregister() function to make unregistering
more flexible. It takes the same arguments as H5Tregister()
but also accepts wild cards. All conversion functions that
match the H5Tunregister() search criteria are removed from the
global type conversion table.
The H5Tregister_hard() and H5Tregister_soft() were combined
into a single function called H5Tregister() which is the
counterpart to H5Tunregister(). A new `persistence' argument
was added to differentiate between the two types of conversion
functions.
The application is allowed to register a hard conversion
function for the no-op conversion path although the library
isn't obligated to call it (it usually does). This is mostly
for completeness, but the application might use it to help
determine if the raw data pipeline was able to use the
optimized path for the case when no type conversion is
necessary. The library doesn't allow this path to be
unregistered although the application can redefine it as often
as it likes.
Fixed the type conversion tables in preparation for MT-safety
and to fix previosly-known design bugs wrt. unregistering
conversion functions or changing the C function associated
with a conversion path. The MT-safety stuff is documented in a
separate white paper.
Increased the conversion function debugging name from 9
characters to 31 characters so the output can be more
descriptive.
Moved conversion path statistics from the H5T_cdata_t member
into the conversion path itself. This makes H5T_cdata_t
contain only application-visible data structures.
./src/H5A.c
./src/H5D.c
./src/H5Ofill.c
./src/H5P.c
./src/H5T.c
Improved the way type conversion functions are called so the
caller doesn't have to check for data type debugging and
increment type conversion timers and statistics.
Changed check for no-op conversion since it is now
application-definable and there may even be more than one
definition at a time in a multi-threaded application (one
thread might be using the no-op conversion path when some
other thread changes its definition -- the first thread still
sees the original defintion until it's done with the
operation).
./doc/html/Datatypes.html
Updated the user guide to reflect the changes to data type
conversion registration functions.
./bin/trace
./src/H5.c
Added tracing support for the new H5T_pers_t data type.
./test/dtypes.c
Added printf to display alignment value if non-aligned data
types are being tested.
./test/h5test.c
Modified the H5Tunregister() calls to use the new
arguments. All 94 of those calls can be replaced by a single
call to the new H5Tunregister() function.
./src/H5.c
Added HAVE_GETTIMEOFDAY around an auto variable and
initialized the elapsed time to zero when gettimeofday() is
not available.
./src/H5F.c
./src/H5Fprivate.h
./src/H5P.c
Added an H5*_init() functions which do the same thing as
H5*_init_interface() but can be called from other packages and
don't do anything if the interface is already initialized.
This fixes a couple memory leaks in applications that
repeatedly close and open the library with H5close().
./src/H5Tconv.c
Optimized some data alignment code in the hardware conversion
functions.
Hardware conversions accumulate statistics about source and
destination data alignment and print that information when the
conversion function is unregistered (usually when the
application exits) if data type debugging is compiled into the
library and enabled at run-time.
The conversion caching was cleaned up for the compound data
type conversion function. It now caches conversion paths in a
manner that will be MT-safe and is much simpler than the old
method. Also cleaned up some array index maps.
./src/H5detect.c
Fixd mispelling of alingemnt.
./src/H5private.h
Changed `TRUE' to `1' in assignment to interface_initialize_g
in FUNC_ENTER macro definition.
./tools/testh5dump.sh
Completely rewritten to make it shorter, better documented,
and conforming to most of the other test outputs.
The comparison of the actual output with the expected output
is insensitive to differences in white space. The test now
passes for the first time on Linux where the output width
wasn't as expected but the output was otherwise correct.
./tools/testfiles/tall-1.ddl
./tools/testfiles/tall-2.ddl
./tools/testfiles/tall-3.ddl
./tools/testfiles/tattr-1.ddl
./tools/testfiles/tattr-2.ddl
./tools/testfiles/tattr-3.ddl
./tools/testfiles/tattr-4.ddl
./tools/testfiles/tcomp-1.ddl
./tools/testfiles/tcomp-2.ddl
./tools/testfiles/tcomp-3.ddl
./tools/testfiles/tcomp-4.ddl
./tools/testfiles/tdset-1.ddl
./tools/testfiles/tdset-2.ddl
./tools/testfiles/tdset-3.ddl
./tools/testfiles/tdset-4.ddl
./tools/testfiles/tgroup-1.ddl
./tools/testfiles/tgroup-2.ddl
./tools/testfiles/tgroup-3.ddl
./tools/testfiles/tlink-1.ddl
./tools/testfiles/tlink-2.ddl
./tools/testfiles/tlink-3.ddl
./tools/testfiles/tlink-4.ddl
./tools/testfiles/tlink-5.ddl
./tools/testfiles/tslink-1.ddl
./tools/testfiles/tslink-2.ddl
Changed `../h5dump' to just `h5dump'.
./config/alpha-dec-osf4.0
Added more warning and optimization switches to the native
compiler.
----------------------
./doc/html/Datatypes.html
./src/H5.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tpublic.h
./src/H5detect.c
./test/chunk.c
./test/dtypes.c
./test/h5test.c
./test/mtime.c
./test/tattr.c
./test/th5s.c
./tools/h5dump.c
./tools/h5dumputil.c
./tools/h5import.c
./tools/h5ls.c
./tools/h5toh4.c
./tools/h5tools.c
Renamed the old H5T_NATIVE_CHAR type to H5T_NATIVE_SCHAR to
denote that it is always signed.
Added a new H5T_NATIVE_CHAR type which has the same range,
representation, and behavior as either H5T_NATIVE_SCHAR or
H5T_NATIVE_UCHAR depending on the compiler and its
command-line switches for the application source file which
references H5T_NATIVE_CHAR. If source files are compiled with
different switches then each source file will resolve
H5T_NATIVE_CHAR appropriately so it matches the C type `char'
in that source file.
NOTE: THERE ARE OTHER DOCUMENTATION FILES THAT I DIDN'T CHANGE
BECAUSE I CAN'T MODIFY THE SOURCE.
./test/extend.c
Swapped two lines to prevent diagnostic messages from messing
up the formatted output.
----------------------
./src/H5T.c
Fixed a typo in the registration of the `unsigned char' to
`unsigned long long' type conversion that caused it to not be
registered, falling back to software whenever that conversion
path was taken.
./MANIFEST
./test/Makefile.in
./test/testhdf5.c
./test/testhdf5.h
./test/theap.c [REMOVED]
./test/lheap.c [NEW]
./test/tohdr.c [REMOVED]
./test/ohdr.c [NEW]
./test/tstab.c [REMOVED]
./test/stab.c [NEW]
Removed the `t' from the front of these names and made each
test a stand-alone program following the format of most of the
other tests.
./test/big.c
Uses libh5test.a but always sets the low-level driver to 1GB
file family.
The `#if' near the top to set the data space to 8GB has been
simplified now that `long_long' is always defined and the
error message is improved when `long_long' isn't wide enough.
Cleanup code was added to the error handling.
./test/gheap.c
./test/istore.c
Uses libh5test.a. Added error cleanup code.
./test/dtypes.c
./test/h5test.c
Added 68 new tests that check hardware and software
conversions between `long long' and `unsigned long long' and
the other integer types. The tests only run on machines where
sizeof(long_long)!=sizeof(long). We test a total of 180
different integer conversions, half in hardware and half in
software.
Cut down the number of times each test is run from 5 to 1 so
it doesn't take so long. If you want to run more times
there's a constant that can be changed at the top of the file.
./test/extend.c
Removed unused variable.
./test/h5test.c
./test/h5test.h
./test/external.c
./test/fillval.c
The h5_cleanup() returns true/false so it can be used in an `if'
statement to clean up additional files.
./doc/html/Environment.html
Indented. Added HDF5_PREFIX and HDF5_DRIVER descriptions.
./src/H5P.c
Changed the trace type for the second argument from `Iu' to
`x' since it's an output parameter.
./INSTALL
Added a warning that the GNU zlib that comes with the latest
version of HDF4 is too old to use with HDF5 and must be
renamed so configure doesn't see it when `--enable-hdf4' is
used.
References.html
New User Guide documents.
RM_H5I.html Identifier Interface
RM_H5R.html Reference Interface
Created these two sections of Reference Manual.
Intro
======
H5.intro.html
Major rewrite to Groups section. New Example 7 (groups).
Added TOC and requisite links.
Numbered sections.
Labelled figures and centered those that were not.
Fixed table formatting.
===========
User Guide
===========
H5.user.html
Linked in Chunking.html.
Linked in References.html.
Linked in DDL.html.
Chunking.html
Minor edits.
DDL.html
References.html
New documents.
Datatypes.html
Added "R Reference" to base name description and
"H5T_STD_ROBJ -- Reference to an entire object
in a file" to list of datatype names.
Files.html
H5Fflush
Added scope parameter.
Groups.html
Removed references to "current working group."
Removed H5Gpush, H5Gpop, and H5Gset functions.
Removed note that H5Glink and H5Gunlink were not implemented.
=================
Reference Manual
=================
RM_*.html and Tools.html
Updated Reference Manual internal cross-linking (the link
banner at the top and bottom of each page).
Changed
Returns SUCCEED (0) if successful;
otherwise FAIL (-1).
to read
Returns a non-negative value if successful;
otherwise returns a negative value.
and several derived changes where circumstances differred
only slightly.
Minor copy edits throughout.
RM_H5.html
Corrected H5open "Purpose" statement.
RM_H5A.html
Changed H5Aget_name return type to hssize_t.
RM_H5F.html
H5Fflush
Added scope parameter.
Added H5Freopen.
RM_H5Front.html
Reordered listing of interfaces to alphabetical order (H5,
H5A, H5D, ...)
Added H5I, H5R, and H5RA.
RM_H5G.html
H5Gopen
Edited "Description."
H5Gget_objinfo
Added named datatype to list of valid values for loc_id.
RM_H5I.html Identifier Interface
New section.
RM_H5P.html
Added H5Pset_fill_value and H5Pget_fill_value.
Several minor copy edits.
RM_H5R.html Reference Interface
New section.
H5RA.html
Essentially a new section. It was in the tree previously,
but it did not actually have content.
RM_H5S.html
Changed H5Sget_select_npoints return type to hssize_t.
Tools.html
Updated h5dump documentation.
----------------------
./MANIFEST
./doc/html/study.html [DELETED]
./doc/html/study_1000x1000.gif [DELETED]
./doc/html/study_250x250.gif [DELETED]
./doc/html/study_499x499.gif [DELETED]
./doc/html/study_5000x1000.gif [DELETED]
./doc/html/study_500x500.gif [DELETED]
./doc/html/study_p1.gif [DELETED]
./doc/html/study_p1.obj [DELETED]
Removed these old files -- the data was from before the chunk
cache was implemented and therefore the whole file was pretty
much garbage.
./MANIFEST
./doc/html/Chunking.html [NEW]
./doc/html/Chunk_f1.gif [NEW]
./doc/html/Chunk_f1.obj [NEW]
./doc/html/Chunk_f2.gif [NEW]
./doc/html/Chunk_f2.obj [NEW]
./doc/html/Chunk_f3.gif [NEW]
./doc/html/Chunk_f4.gif [NEW]
./doc/html/Chunk_f5.gif [NEW]
./doc/html/Chunk_f6.gif [NEW]
./doc/html/Chunk_f6.obj [NEW]
New documentation for chunking. It's not quite complete but
it gives a pretty good idea of some of the issues affecting
performance.
Changed H5Sget_space_type to H5Sget_simple_extent_type.
Changed H5Sget_simple_extent_type FAIL return value to
H5S_NO_CLASS.
RM_H5F.html
H5Fflush. Corrected function name in sytax line, which
had read H5Fis_hdf.
RM_H5G.html
Removed discussion of "current working group" and associated
information from the introductory discussion.
H5Gset, H5Gpush, H5Gpop
Removed these functions.
H5Gunlink, H5Gmove
Removed the "not yet implemented" notations from
these functions.
Revised and extended hyperslab selection image.
Added section "Selecting a union of hyperslabs."
IH_map*.gif (6 new files)
New images for "Intro to HDF5."
As a composite, these replace H5.intro.datamap.gif.
H5.intro.datamap.gif
Removed. Replaced by the composite IH_map*.gif.
RM_H5RA.html (new file)
RM_H5Front.html
Tools.html
Ragged.html
H5.user.html
Changed all H5R functions to H5RA.
Changed Ragged Array API references from H5R to H5RA.
Changed links to RM_H5R.html to RM_H5RA.html.
RM_H5R.html
Removed. Replaced by RM_H5RA.html.
----------------------
./doc/html/H5.format.html
./src/H5HG.c
Fixed a bug in the global heap that caused H5HG_read() to
write past the end of the buffer in certain cases.
./test/big.c
The test is skipped if hdf5 was configured with
`--disable-hsizet'.
./src/H5Ofill.c
Data type conversions are implemented for the fill value.
./src/H5.c
Tracing prints one of H5P_FILE_CREATE, H5P_FILE_ACCESS,
H5P_DATASET_CREATE, H5P_DATASET_XFER, or H5P_MOUNT instead of
the more cryptic H5I_TEMPLATE_* constants.
./src/H5D.c
Removed prototype for H5D_find_name().
./src/H5I.c
The GROUP_MASK and ID_MASK are both calculated from GROUP_BITS
instead of being set by hand.
We don't use the sign bit of hid_t; all valid hid_t values are
positive so we can say things like `if ((file=H5Fopen(...))<0)'.
Changed `(int)pow(2.0,x)' to `1<<x' so we don't have to worry
about rounding.
Fixed H5I_get_type() so it doesn't always fail an assertion.
./src/H5E.c
./src/H5Epublic.h
Added minor error H5E_MOUNT
./src/H5F.c
./src/H5Fprivate.h
Added H5Fmount() and H5Funmount(). Mounting and unmounting
works as documented but some of the other things aren't
implemented yet, the biggest being current working groups
always acting on the root of the mount tree, and H5Fclose()
closing the entire tree. The rest of the stuff will be added
shortly...
./src/H5P.c
./src/H5Ppublic.h
Added the H5P_MOUNT property list but haven't implemented any
particular properties for it yet.
./src/H5Gstab.c
Hard links across files return an error instead of failing an
assertion.
HDF5." (The HTML copy was checked in for the Beta; the MS Word
copy was overlooked at that time.)
The mapping image, used to illustrate hyperslab data selections,
is a separate gif image, H5.intro.datamap.gif, in docs/html.
Changes since 19980930
----------------------
./MANIFEST
./doc/html/H5.format.html
./src/H5D.c
./src/H5Dprivate.h
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fprivate.h
./src/H5O.c
./src/H5Ofill.c [NEW]
./src/H5Oprivate.h
./src/H5P.c
./src/H5Ppublic.h
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Spoint.c
./src/H5Sprivate.h
./src/Makefile.in
Added fill values as documented in previous e-mails. They only
work for chunked datasets so far.
./src/H5E.c
./src/H5Epublic.h
./src/H5P.c
Changed H5E_TEMPLATE to H5E_PLIST.
./src/H5Omtime.c
./src/H5V.c
Fixed a typo in a comment.
./src/H5Tconv.c
Fixed a bug in compound type conversions that caused an
assertion to fail.
Reordered examples to coincide with the sequence of use within the document.
Moved NATIVE and named datatype discussions to be with the rest of the
datatypes discussion.
Fixed arrays illustrated in tables so that empty cells show clearly.
Several dozen minor edits.
----------------------
./MANIFEST
Removed duplicate Ragged.html
./doc/src/Glossary.html
Changed 1.0 to 1.2 since 1.0 is the current development
branch, 1.1 will be development after beta release, and 1.2
will be the first complete release (see Version.html).
./test/dsets.c
./test/tstab.c
Added more tests.
Added link to Tools.html
Clean up formatting.
Added RM_H5R.html, Ragged Arrays, but link is commented out for Beta.
RM_H5.html
H5version Removed patch number parameter.
H5check_version Removed patch number parameter.
Corrected datatype to unsigned (was unsigned *).
Added missing "Purpose:" statement.
RM_H5A.html
H5Aread/write Added reference to data conversion limitations.
RM_H5D.html
H5Dwrite Added "Writing to an external dataset will fail
if the HDF5 file is not open for writing."
H5Dread/write Added reference to data conversion limitations.
RM_H5F.html
H5Fflush Added H5Fflush.
RM_H5G.html
H5Gget_stat Fixed formatting error.
Added mtime to the description of the data structure.
Added the following "Note:", per Robb's checkin mesage:
"Some systems will be able to record the time
accurately but unable to retrieve the correct time;
such systems (e.g., Irix64) will report an mtime
value of 0 (zero)."
Corrected successful return value.
H5Gset_comment Added the following statement to "Description:"
"Comments can be attached to any object that
has an object header, e.g., data sets, groups,
named data types, and data spaces,
but not symbolic links.
RM_H5P.html
Cleaned up file formatting.
H5Pset_filter Added these three functions.
H5Pget_nfilters
H5Pget_filter
H5Pget_deflate Removed these three functions. (Actually,
H5Pset_compression they are commented out, in case they should
H5Pget_compression be reinstated.)
RM_H5R.html
Intial version of H5R reference manual entry, but still largely
just a template.
Not yet ready for distribution.
Links to this document are currently commented out.
RM_H5S.html
H5S_set_extent_simple Changed name to H5Sselect_extent_simple.
now: H5Sselect_extent_simpl
H5Sselect_npoints Corrected return value.
Now: H5Sget_select_npoints
H5Sget_class Reinstated to RM. Changed name.
now: H5Sget_space_type
H5Soffset_simple Added these 6 functions. The there is a
H5Sextent_copy link to Dataspaces.html for the 10 "not yet
H5Sset_extent_none implemented (NYI)" functions.
H5Sselect_all
H5Sselect_none
H5Sselect_valid
RM_H5T.html
Added the following datatypes (though the list of native datatypes
is commented out):
H5T_NATIVE_HSIZE
H5T_NATIVE_HSSIZE
H5T_NATIVE_HERR
H5T_NATIVE_HBOOL
Tools.html
Corrected h5ls and h5repart sections.
Glossary.html
Unlinked for Beta.
Copyright.html
New file.
Copyright statement, linked into User's Guide and Reference Manual.
General
Changed the following function names:
From: To:
H5version H5get_libversion
H5vers_check H5check_version
H5Anum_attrs H5Aget_num_attrs
H5Fget_create_template H5Fget_create_plist
H5Fget_access_template H5Fget_access_plist
And associated "template" -> "property list" edits.
H5Gstat H5Gget_stat
H5Sextent_npoints H5Sget_simple_extent_npoints
H5Sextent_ndims H5Sget_simple_extent_ndims
H5Sextent_dims H5Sget_simple_extent_dims
H5Sget_class H5Sget_simple_extent_type
H5Sselect_npoints H5Sget_select_npoints
Added links to Tools.html and RM_H5R.html (Ragged Arrays),
though link to RM_H5R.html is commented out for now.
New file.
Environmental variables and configuration parameters.
Copyright.html
New file.
Copyright statement, linked into User's Guide and Reference Manual.
A little editorial cleanup.
Added link to Ragged.html, Ragged Arrays.
Added link to Environment.html, Environmental Variables and
Configuration Parameters.
Added link to Copyright.html.
Ragged.html
Added "Use at your own risk" notice.
Environment.html
New file for environmental variables and configuration parameters.
Datatypes.html
Added the following datatypes:
H5T_NATIVE_HSIZE
H5T_NATIVE_HSSIZE
H5T_NATIVE_HERR
H5T_NATIVE_HBOOL
Section 8, "Data Conversions"
Added named link tag to catch hyperlink from RM.
Revised "Note:" to emphasize limited inate data-conversion capability.
Copyright.html
New file.
Copyright statement, linked into User's Guide and Reference Manual.
Glossary.html
Unlinked for Beta.
General
Changed email link at bottom of "user guide level documents"
(as contrasted with "developer guide level documents"
listed on the lower half of the User's Guide front page)
to HDF Help Desk, hdfhelp@ncsa.uiuc.edu.
Changed the following function names:
From: To:
H5version H5get_libversion
H5vers_check H5check_version
H5Anum_attrs H5Aget_num_attrs
H5Fget_create_template() H5Fget_create_plist()
H5Fget_access_template() H5Fget_access_plist()
H5Gstat H5Gget_stat
H5Sextent_npoints H5Sget_simple_extent_npoints
H5Sextent_ndims H5Sget_simple_extent_ndims
H5Sextent_dims H5Sget_simple_extent_dims
H5Sget_class H5Sget_simple_extent_type
H5Sselect_npoints H5Sget_select_npoints
----------------------
./COPYING
Reformatted as text instead of C. Removed zlib crew from the
list of contributors since no zlib code is actually in the
hdf5 library.
./INSTALL
./INSTALL.ascired
./MANIFEST
Minor updates for Beta release including version number
change.
./INSTALL_MAINT
Added information about making a release.
./RELEASE
Updated function list based on public header files.
./bin/checkposix
Got rid of complaints about some obvious things.
./doc/html/H5.api.html
./doc/html/RM_H5F.html
./src/H5F.c
./src/H5Fpublic.h
./test/tfile.c
Changed H5Fget_create_template() and H5Fget_access_template()
to H5Fget_create_plist() and H5Fget_access_plist() since that
conforms better to lots of other names.
./doc/html/Datatypes.html
./doc/html/ExternalFiles.html
./doc/html/Files.html
./doc/html/H5.api.html
./doc/html/H5.sample_code.html
./doc/html/RM_H5F.html
./doc/html/RM_H5Front.html
Changed `template' to `property list', etc.
./doc/html/Ragged.html [NEW]
Documentation for ragged arrays.
./src/H5Iprivate.h
./src/H5Ipublic.h
./src/H5I.c
Changed the scope of some symbols to be more local.
./src/H5.c
./src/H5AC.c
./src/H5D.c
./src/H5E.c
./src/H5F.c
./src/H5Ffamily.c
./src/H5Fistore.c
./src/H5Flow.c
./src/H5Fsec2.c
./src/H5Fsplit.c
./src/H5Fstdio.c
./src/H5G.c
./src/H5Gnode.c
./src/H5HG.c
./src/H5I.c
./src/H5O.c
./src/H5Ocomp.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Omtime.c
./src/H5Oname.c
./src/H5P.c
./src/H5S.c
./src/H5Shyper.c
./src/H5Tbit.c
./src/H5Tconv.c
./src/H5V.c
./src/H5Z.c
./src/H5private.h
Fixed some violations of our naming scheme by adding HD to the
beginning of all Posix functions.
Fixed errors
H5.c
Fixed core dump with setvbuf() for debugging.
H5Fistore.c
Fixed bug with sparse datasets.
H5Omtime.c
Found a typo in "Posix Programmer's Guide". The `%z' in the
strftime() should be `%Z' instead.
H5T.c
H5Tpublic.h
Improved api tracing for H5Tinsert_array().
h5tools.c
Doesn't dump core for empty datasets.
----------------------
./doc/html/Datatypes.html
./doc/html/H5.format.html
./src/H5.c
./src/H5Odtype.c
./src/H5T.c
./src/H5Tconv.c
./src/H5Tpkg.h
./src/H5Tpublic.h
./test/dtypes.c
Changed the values of the H5T_str_t type in order to make a
distinction between C's null terminated strings and strings
which are not null terminated.
The string character set and padding method are saved to the
hdf5 file instead of using defaults.
Added conversion function from one fixed-length string type
to another.
./test/chunk.c
Fixed to work with new filter API
----------------------
./config/solaris2.5
Hopefully set up now so it honors the CC and CFLAGS variables
and understands solaris cc flags.
./test/big.c
Checks to see if creating lots of large sparse files exceeds
the user disk quota and skips the test. It also checks that
we can actually open ~64 files at once.
./doc/html/Files.html
./src/H5A.c
./src/H5Aprivate.h
./src/H5F.c
./src/H5Fpublic.h
Added the H5Fflush() function which takes any object as an
argument as long as the object is in some way associated with
a file. This required an H5A_entof()
./src/H5.c
./src/H5Flow.c
The `%a' format of HDfprintf() now allows a field width and
justification flag etc, like the other formats. The old
H5F_addr_print() was recoded to call HDfprintf() instead of
vice versa.
----------------------
./MANIFEST
Replaced Compression.html with Filters.html
./doc/html/Filters.html
./src/H5Ocomp.c
./src/H5P.c
./src/H5Ppublic.h
./src/H5Z.c
./src/H5Zprivate.h
Added two extra arguments to H5Pget_filter() in order to
retrieve the filter name. The name is the name registered for
the filter with H5Zregister(), but if the dataset creation
property originally came from an existing file then the name
is that which is stored in the file.
./tools/h5ls.c
The `-v' option now prints the names of the filters.
./src/H5B.c
./src/H5Fistore.c
./src/H5O.c
./src/H5Oefl.c
./src/H5Oprivate.h
./src/H5P.c
Plugged a memory leak.
./src/H5MMprivate.h
H5MM_malloc(0) and H5MM_calloc(0) actually allocate a single
byte in order to be sure that we get a valid pointer.
./src/H5S.c
./src/H5Sselect.c
Fixed pointer->integer conversions in error return values in
three places.
----------------------
./bin/release
Added ./Makefile to the distribution again -- it got lost in
the changes last week although it isn't all that important a
file since it gets clobbered by configure anyway.
./bin/trace
./doc/html/Filters.html
./doc/html/H5.format.html
./doc/html/H5.user.html
./src/H5.c
./src/H5D.c
./src/H5Dprivate.h
./src/H5E.c
./src/H5Epublic.h
./src/H5Farray.c
./src/H5Fistore.c
./src/H5Fprivate.h
./src/H5O.c
./src/H5Ocomp.c
./src/H5Oprivate.h
./src/H5P.c
./src/H5Ppublic.h
./src/H5Sall.c
./src/H5Shyper.c
./src/H5Spoint.c
./src/H5Sprivate.h
./src/H5Ssimp.c
./src/H5Z.c
./src/H5Zprivate.h
./src/H5Zpublic.h
./src/hdf5.h
./test/dsets.c
./tools/h5ls.c
Added the data filter pipeline, a generalization of the
compression stuff which allows things like checksums,
encryption, compression, performance monitoring, etc. See
./doc/html/Filters.html for details -- it replaces the
Compression.html doc.
./src/H5T.c
Cleaned up debugging output.
./config/linux
Added checks for egcs and pgcc and changed optimization flags
for the compilers.
./src/H5G.c
./tools/h5dump.c
Fixed compiler warnings in these files and others.
./configure.in
./src/H5private.h
./test/mtime.c
Added a check for difftime() and defined HDdifftime() to do
something else on systems that don't have difftime().
----------------------
./MANIFEST
./doc/html/H5.format.html
./src/H5O.c
./src/H5Oprivate.h
./src/H5Omtime.c [NEW]
./src/H5private.h
./src/Makefile.in
Added the modification time message. If an object header has
this message then it's value is updated with the current time
whenever anything changes in the object header.
./acconfig.h
./configure.in
Alas, there seems to be no standard way to convert a string
time like 19980727122800 in UTC to a time_t since mktime()
only converts local times to time_t. So I've modified the
configuration to check for various ways of getting the time
zone information:
* Added checks for the `tm_gmtoff' field of `struct tm'.
* Added a check for the `timezone' global variable.
* Added a check for `struct timezone'.
* Added a check for BSDgettimeofday().
* Added a check for gettimeofday() although it doesn't
actually set the timezone argument on some systems.
* Added a check to see if `tm_zone' is a member of `struct tm'.
* Added a check to see if `tzname' is a global variable.
* Added a check to see if `struct tm' is defined in time.h
or sys/time.h.
It's not difficult to get the right UTC modification message
into the object header, but some systems might have problems
getting the right time back out (Irix64 is one) and those
systems will report zero for the H5G_stat_t.mtime from an
H5Gstat() call as if the mtime message isn't even present. It
will, however, continue to be updated as normal.
./src/H5G.c
./src/H5Gpublic.h
The H5G_stat_t struct now contains an `mtime' field which will
hold the object modification time. If the object has no
object modification time then the `mtime' will be initialized
to zero.
Fixed a bug in H5G_stat() that caused the `objno' field of the
H5G_stat_t to be set incorrectly on some machines.
./src/H5D.c
Writing to external datasets fail if the hdf5 file is not open
for writing.
A modification time message is added to the dataset object
header when it's created and H5O_touch() is called from
H5D_write() to update that message.
./src/H5T.c
Fixed a bug in H5Tget_member_dims() that caused a segmentation
fault if one of the output array arguments was the null
pointer.
Relaxed the member dimension checking in H5Tinsert_array() so
it can also be used for scalar members.
./test/Makefile.in
Added additional file names to the `mostlyclean' target.
./tools/h5dump.c
./tools/h5tools.h
Increased the temporary buffer size to 1MB.
Added support for printing compound data types with array
members.
When printing H5T_NATIVE_CHAR and H5T_NATIVE_UCHAR we escape
double quote characters.
./tools/h5ls.c
Changed the output format a little because we were starting to
get too much info to fit on a line. Without `--verbose' each
object occupies one line of output. Otherwise, additional
information is printed below the object name: object file
address, comment, and modification time. If `--dump' is given
then the data is printed after the other information.
./test/cmpd_dset.c
Changed the way the dataset is initialized to be more uniform.
----------------------
./src/H5A.c
./src/H5Apublic.h
./test/tattr.c
Switched the order of the second and third argument of
H5Aget_name() to make it consistent with other functions that
take buffers and buffer sizes.
./src/H5G.c
./src/H5Gpublic.h
./src/H5Gprivate.h
The H5Gget_comment() function returns the size of the comment
including the null terminator. If the object has no comment
then zero is returned. If an error occurs then a negative
value is returned.
./MANIFEST
./tools/Makefile.in
./tools/h5tools.h [NEW]
./tools/h5dump.c [NEW]
Created a library for printing values of datasets in a way
that looks nice. It's not done yet, but I needed it for
debugging the contents of files from Jim Reus.
./tools/h5ls.c
Added the `-d' and `--dump' options which cause the contents
of a dataset to be printed. Added `-w N' and `--width=N'
options to control how wide the raw data output should be. If
you want single-column output then say `-w1'.
Printing dataset values can now handle datasets of any integer
or floating point atomic type. As a special case, integers
which are one byte wide are treated a character strings for
now.
Sample output:
$ h5ls --dump --width=60 banana.hdf
ARCHIVE 0:0:0:744 Dataset {52/Inf}
Data:
(0) "U struct complex { double R; double I; };\012V"
(43) " double;\012"
U 0:0:0:2500 Dataset {256/512}
Data: printing of compound data types is not implemented yet
V 0:0:0:3928 Dataset {256/512}
Data:
(0) 0, 0.015625, 0.03125, 0.046875, 0.0625,
(5) 0.078125, 0.09375, 0.109375, 0.125, 0.140625,
(10) 0.15625, 0.171875, 0.1875, 0.203125, 0.21875,
(15) 0.234375, 0.25, 0.265625, 0.28125, 0.296875,
...
----------------------
./src/H5Gpublic.h
./src/H5Gprivate.h
./src/H5G.c
./test/dsets.c
./doc/html/Groups.html
Added the H5Gset_comment() and H5Gget_comment() functions
described in an earlier e-mail.
./src/H5.c
Fixed a bug in the tracing code that caused certain data space
enum types to not be printed. Nested case statements can get
confusing to the eyes!
./tools/h5ls.c
Prints the first 50 bytes or so of object comments.
----------------------
./doc/html/H5.format.html
./src/H5Oattr.c
./src/H5Odtype.c
./src/H5Oefl.c
./src/H5Olayout.c
./src/H5Osdspace.c
./src/H5Oshared.c
Added version numbers to some object header messages so we can
update them easier in the future. The library currently just
gives up if the version numbers don't match, but in the future
the library could handle multiple versions of a message.
./test/testhdf5.c
Removed an argument from the H5version() call that I missed
last time.
----------------------
./bin/release
The archive names have only three parts to a version number.
Instead of `hdf5-1.2.3d.tar.gz' they will be named like
`hdf5-1.2.3.tar.gz'.
./src/H5public.h
./src/H5.c
Dropped the patch level from the version number. The version
number is now a major number, a minor number, and a release
number.
./doc/html/Version.html
Updated to get rid of patch numbers.
./tools/h5repart.c
Added a `-V' flag like for `h5ls' that prints the version number.
----------------------
./doc/html/H5.format.html
./src/H5F.c
./src/H5Gprivate.h
./src/H5Oshared.c
Added file alignment fields: the boot block has an extra
reserved address field. The symbol table entry scratch pad
space was reduced from 24 bytes to 16 bytes. The index
permutation was moved earlier in the data type message for
compound data types and extra padding was added. Four bytes
of padding was added to the shared message format.
----------------------
./doc/html/H5.format.html
./src/H5Gent.c
./src/H5Gprivate.h
./src/H5Oattr.c
./src/H5Oprivate.h
./src/H5Oshared.c
./src/H5HG.c
./src/H5HGprivate.h
Added padding fields in symbol table entries, attribute
messages, shared messages, and global heap objects to insure
that things are aligned on 8-byte boundaries in the file, and
thus in memory. Otherwise some little endian machines
complain (DEC Alpha) during encoding/decoding of file meta
data. I chose to add alignment to the file rather than
rewriting the ENCODE/DECODE macros for the little endian case.
Completely rewrote the section on attribute messages.
More alignment stuff will follow.
./src/H5detect.c
Fixed a typo `nd'->`dn'
./test/dtypes.c
Commented out conversion tests to/from `long double' on
machines where it's the same size as `double' to get rid of
compiler warnings.
./doc/html/Big.html
Fixed a couple typos.
----------------------
./MANIFEST
Alphabetized. `d' comes before `e' :-)
./bin/release
Added the `-batch' option which causes the script to not ask
questions and to automatically update the minor version
number and set the patch level back to `a'. This is intended
to be used for the daily snapshots:
#! /bin/sh
set -e
cd ~/hdf5
make distclean
make test
bin/release -batch tar compress gzip bzip2
mv ./releases/* /repository
./src/H5Z.c
Removed warnings about unused variables when the zlib.h header
file is present but libz.a isn't.
./INSTALL
./configure.in
./doc/html/tracing.html
Made API tracing the default (you still need to define the
HDF5_TRACE environment variable to get results) and change the
name from `--disable-tracing' to `--disable-trace' to make it
consistent with the other switches.
Changed `site config file' to `host config file' to match the
documentation.
./doc/html/H5.user.html
Added a reference to the `tracing.html' file.