Commit Graph

82 Commits

Author SHA1 Message Date
Dana Robinson
b22984600a
Adds platform-independent basename and dirname (#1951)
* Adds platform-independent basename and dirname

* Tidy up H5_dirname and H5_basename implementations and add tests

* Committing clang-format changes

* Fix misspelling

* Several fixes for H5_dirname/H5_basename from review

* Committing clang-format changes

* Add reason to VERIFY_STR macros in th5_system.c

* Use H5MM_free instead of HDfree in H5_dirname/H5_basename tests

Co-authored-by: Jordan Henderson <jhenderson@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-08-05 16:11:13 -07:00
Dana Robinson
460ee73a64
Adds format attribute to additional functions (#1868)
* Adds format attribute to (s|p)io_perf code

* Added gcc format attribute to additional test code

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-07-11 08:29:46 -07:00
Dana Robinson
23ab623955
Removes unused H5HP (private heap) package (#1548) 2022-03-29 20:56:37 -05:00
Sean McBride
f6c49fe891
More clang tidy (#908)
* Pacify clang-analyzer-unix.cstring.NullArg

* Apply some bugprone-suspicious-string-compare

* Apply some readability-simplify-boolean-expr

* Apply some readability-make-member-function-const

* Apple some bugprone-macro-parentheses

* Changed an f suffix to L for `long double`

* Applied some readability-uppercase-literal-suffix automatically

* Committing clang-format changes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-08-23 16:14:53 -05:00
Dana Robinson
189293e12f
Removes dead H5ST package from the library (#528)
* Committing clang-format changes

* Removes the unused H5ST package from the library

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2021-03-29 21:32:52 -05:00
Larry Knox
4819f89d3f
Update license url (#332)
* Modify temporary rpath for testing in java example scripts.

* Update URL in source file Copyright headers for web copy of COPYING
file - src and test directories.
2021-02-17 08:52:04 -06:00
Allen Byrne
b2d661b508 Clang-format of source files 2020-09-30 09:27:10 -05:00
Jerome Soumagne
ae490016b9 Add new H5R API that abstracts object, region and attribute reference types
Also support references to external files

Add new H5T_REF type and type conversion routines

Support conversion from H5T_REF_OBJ/DSET_REG to H5T_REF

Add H5Treclaim() API to reclaim memory of vlen/reference types

Deprecate H5Dvlen_reclaim()

Fix H5T_vlen_reclaim() and H5T_reclaim() to use private callback

Add H5T_ref_reclaim()

Move previous H5R APIs to H5Rdeprec.c

Clean up H5Ocopy

Separate H5O_copy_expand_ref() to H5Ocopy_ref()

Add support for copying new reference types

Clean up deprecated routines to go through VOL and same code path

Fix return codes in existing trefer.c test

Rename trefer.c to trefer_deprec.c

trefer.c is for new references

Add performance test for trefer

Add additional obj_copy_ref test

Make use of tokens and blobs to store references

Skip blob encoding for object references

Start adding new reference examples
2019-10-08 14:30:24 -05:00
Allen Byrne
ba974c031d OESS-29 Update HD prefix mostly 2019-08-24 14:07:33 -05:00
Allen Byrne
205d33f332 Cleanup overuse of include files 2018-02-14 10:08:09 -06:00
Dana Robinson
9fdd984cde Changed casts to const void * 2017-11-27 09:15:45 -08:00
Dana Robinson
8d8dc867a4 Casted pointers to void to quiet warnings on Linux. 2017-11-27 09:11:53 -08:00
Dana Robinson
856e475c47 Added CHECK_PTR_EQ macro to testhdf5 to quiet cast warnings on Windows. 2017-11-27 08:57:26 -08:00
Dana Robinson
8cb4529211 Fixed misc Warnings flagged by VS2017. 2017-11-26 18:13:18 -08:00
Larry Knox
89fbe00dec Merge pull request #426 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10 to hdf5_1_10
* commit '54957d37f5aa73912763dbb6e308555e863c43f4':
  Commit copyright header change for src/H5PLpkg.c which was added after running script to make changes.
  Add new files in release_docs to MANIFEST. Cimmit changes to Makefile.in(s) and H5PL.c that resulted from running autogen.sh.
  Merge pull request #407 in HDFFV/hdf5 from ~LRKNOX/hdf5_lrk:hdf5_1_10_1 to hdf5_1_10_1
  Change copyright headers to replace url referring to file to be removed and replace it with new url for COPYING file.
2017-04-25 16:05:36 -05:00
Dana Robinson
2a4ea9b24e [svn-r26392] Reinstates r26327-8, which had been reverted due to failures on
Solaris and OS X.

Added public API functions that expose the C library's memory allocator
for use in filter functions that need to allocate or resize buffers.

Intended for use with filter plugins, particularly on Windows, where C
runtime (CRT) issues can cause problems.

Fixes: HDFFV-9100

Tested on: h5committest + OS X (quail) + Solaris (emu)
2015-03-08 19:41:54 -05:00
Larry Knox
ac290b5e45 [svn-r26331] Revert checking r 26327&8, which added new code and test that fails on solaris and macs.
Tested h5committest + emu and quail.
2015-02-28 12:00:03 -05:00
Dana Robinson
c16d230101 [svn-r26327] Added public API functions that expose the C library's memory allocator
for use in filter functions that need to allocate or resize buffers.
Intended for use with filter plugins, particularly on Windows, where
C runtime (CRT) issues can cause problems.

Fixes: HDFFV-9100

tested on: jam (minor, localized change)
2015-02-26 22:33:25 -05:00
Albert Cheng
e8a0753656 [svn-r23260] Bug fix: HDFFV-8267
The ERROR macro had a typo of missing a separator comma. When used, it seg.
fault. Added the comma back in.
Fix is reviewed in Crucible HDF5-107.

Tested: h5committest passed. Also tested using the ERROR macro in the
Mac (Owl) platform. Before fix, it seg. fault. After fix, it prints the
message as intended.
2013-02-12 16:36:54 -05:00
Quincey Koziol
602c716f76 [svn-r22758] Description:
Bring generic improvements from encode/decode property list branch to
the trunk.  This includes a better version of the property list comparison
routine, cleaned up compiler warnings, and some cleaned up property list
callbacks.  Also, started on changes to clean up parallel test output, so that
it doesn't report successful tests from each process.

Tested on:
    Mac OSX/64 10.7.4 (amazon) w/debug, GCC 4.7.x, FORTRAN, C++, threadsafe and parallel
    Linux 2.6/32 (jam) w/debug
    Solaris 2.7/64 (linew) w/debug
2012-09-13 12:08:01 -05:00
Quincey Koziol
a79ba5b135 [svn-r18224] Description:
Bring revisions from Coverity session from hdf5_1_8_coverity branch to
trunk:

r18214:
Issue 423:  cache_ptr was not initialized. if global 'pass' was false,
cache_ptr could be used. Extended scope of if(pass) block to include whole
function-flush_cache().

r18215:
Fix coverity item 317.  Removed unreachable code in H5B2_hdr_alloc.

r18216:
Fixed Coverity issues 57 & 67.  Checked oid_count > 0 before memory allocation
and oid_list != NULL before dereferencing.

Tested on:
    Mac OS X/32 10.6.2 (amazon) w/debug & production
    (daily tested on Coverity branch already)
2010-02-09 17:32:28 -05:00
Albert Cheng
c147f1815e [svn-r18174] Bug ID 1753: added macro version of GetTestVerbosity.
The previous implementation did not work for WIndows.
Moved the macro definition of HDGetTestVerbosity from testhdf5.h
to h5test.h.

Removed as much as possible macro definitions that use HDGetTestVerbosity
directly.

Tested: Jam (serial and parallel).  Did not run h5committest since this
is a trival change that is portable.
2010-01-27 17:03:28 -05:00
Albert Cheng
2c872f398b [svn-r18154] ID 1753: added macro version of GetTestVerbosity.
GetTestVerbosity() is called many times during tests. Implemented a more
efficient macro version HDGetTestVerbosity.

Tested: Jam (serial and parallel).  Did not run h5committest since this
is a trival change that is portable, I am 99% sure.
2010-01-22 16:17:48 -05:00
Quincey Koziol
f4d4d427b2 [svn-r17461] Description:
Fix a few more problems when the user block is not aligned properly.

Tested on:
    FreeBSD/32 6.3 (duty) in debug mode
    FreeBSD/64 6.3 (liberty) w/C++ & FORTRAN, in debug mode
    Linux/32 2.6 (jam) w/PGI compilers, w/C++ & FORTRAN, w/threadsafe,
        in debug mode
    Linux/64-amd64 2.6 (smirom) w/Intel compilers w/default API=1.6.x,
        w/C++ & FORTRAN, in production mode
    Solaris/32 2.10 (linew) w/deprecated symbols disabled, w/C++ & FORTRAN,
        w/szip filter, in production mode
    Linux/64-ia64 2.6 (cobalt) w/Intel compilers, w/C++ & FORTRAN,
        in production mode
    Linux/64-ia64 2.4 (tg-login3) w/parallel, w/FORTRAN, in production mode
    Linux/64-amd64 2.6 (abe) w/parallel, w/FORTRAN, in production mode
    Mac OS X/32 10.5.8 (amazon) in debug mode
    Mac OS X/32 10.5.8 (amazon) w/C++ & FORTRAN, w/threadsafe,
        in production mode
2009-09-10 14:02:40 -05:00
Raymond Lu
2d6036f0c3 [svn-r17195] I removed H5Eprivate.h from this header file. It isn't used anywhere in the test.
Tested on jam, smirom, linew, and Boeing VMS.
2009-07-17 10:25:53 -05:00
Raymond Lu
8377804436 [svn-r14354] Bug fix for #956 where the element coordinates went wrong for dataspace selection. Added a test
for it, too.  This round of checkin isn't well tarnished yet.  I'll come back to work on Jan. 8. I'll revise it then. 

Tested it on kagiso, smirom, linew.
2007-12-20 16:09:58 -05:00
Quincey Koziol
579284f422 [svn-r14144] Description:
Move H5Gget_objinfo() to deprecated symbols section and retarget
internal usage to H5Lget_info()/H5Oget_info().

	Misc. other code cleanups...

Tested on:
	FreeBSD/32 6.2 (duty)
	FreeBSD/64 6.2 (liberty)
	Linux/32 2.6 (kagiso)
	Linux/64 2.6 (smirom)
	AIX/32 5.3 (copper)
	Solaris/32 2.10 (linew)
	Mac OS X/32 10.4.10 (amazon)
2007-09-13 10:44:56 -05:00
Quincey Koziol
d6bb18abbc [svn-r13648] Description:
Rename new error handling API routines from H5E<foo>_stack() to
H5E<foo>2().

Tested on:
    Mac OS X/32 10.4.9 (amazon)
    FreeBSD/32 6.2 (duty)
    FreeBSD/64 6.2 (liberty)
2007-04-11 20:59:45 -05:00
Albert Cheng
ed7d456e51 [svn-r13253] Updated all C and C++ style source code files with the THG copyright notice.
Tested platform:
Kagiso only since it is only a comment block change.  If it works in one
machine, it should work in all, I hope.  Still need to check the parallel
build on copper.
2007-02-07 09:56:24 -05:00
James Laird
b6c317f27c [svn-r12902] Checkin of Shared Object Header Message work.
This feature is still in progress; Shared Object Header Messages are not
complete as a feature and are not thoroughly tested.  There are still
"TODO" comments in the code (comments with the word "JAMES" in them,
so as not to be confused with other TODO comments).

Hopefully this checkin will reduce the liklihood of conflicts as I finish
implementing this feature.

All current tests pass on juniper, copper (parallel), heping, kagiso, and mir.
2006-11-13 15:41:36 -05:00
Quincey Koziol
5fe34046c0 [svn-r12605] Description:
Break out a bunch of the misc. routines that were in src/H5.c into more
specific modules.

    Add optimized fletcher32 checksum routine, for checksumming metadata as
well as raw data.

Tested On:
    Linux/32 2.6 (chicago)
    Linux/64 2.6 (chicago2)
    Will test further after checkin...
2006-08-21 18:27:11 -05:00
James Laird
3e755623cb [svn-r12528] Added User-Defined links to the library.
Users can create external links using H5L_create_external().  These links
point to an object in another HDF5 file.  Users can alter the behavior of
external links or create new kinds of links by registering callbacks
using the H5L interface.

Added tests, tools support, etc.

Also a number of other, minor changes have been made (some restructuring of
the H5L interface, for instance).

Additional documentation and examples are forthcoming.
2006-08-02 18:41:53 -05:00
Quincey Koziol
bb31e94a92 [svn-r11093] Purpose:
Bug fix

Description:
    Rewrite code for mounting files to clean up layers of kludges and implement
a much cleaner and more maintainable design.

Platforms tested:
    FreeBSD 4.11 (sleipnir)
    Linux 2.4
2005-07-21 09:48:26 -05:00
James Laird
985af5617f [svn-r10785] Purpose:
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:
2005-05-23 13:20:07 -05:00
Quincey Koziol
3e582deaae [svn-r9778] Purpose:
Remove feature

Description:
    Retire threaded, balanced binary tree code from HDF5 use.  Requiescat in
    pace...

    Also, regenerate dependencies files.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel
    Too minor to require full h5committesting  (the code is already
    disconnected from everything except its tests)
2005-01-07 21:06:46 -05:00
Quincey Koziol
b52107a42a [svn-r9580] Purpose:
Add new internal data structure

Description:
    Add an implementation of skip lists to the library (see comment in
src/H5SL.c for references to the papers describing them) as a potential
replacement for our current threaded, balanced binary tree container.
Skip lists are much simpler to implement and should be faster to use.

    Also, added new error codes to release branch, so bump the minor version
number to indicate that the library is no longer perfectly compatible with
the 1.6.3 release.

Platforms tested:
    FreeBSD 4.10 (sleipnir) w/parallel
    Solaris 2.7 (arabica)
    Too minor to require further testing (the skip lists aren't actually
    used by any library code yet)
2004-11-27 11:07:11 -05:00
Raymond Lu
cb7f03a26f [svn-r9183] Purpose: New feature
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
2004-09-01 12:43:30 -05:00
James Laird
f249eed71d [svn-r8707] Changed the way HDF5 handles hid_t's and added API functions to allow users to register IDs and ID types at runtime. 2004-06-18 11:56:04 -05:00
Albert Cheng
b45703bf89 [svn-r8274] Purpose:
Code cleanup.

Description:
The routines residing in testframe.c was defined in testhdf5.h due to
historical reason.  It really belongs to h5test.h because those routines
reside in libh55test.a.

Solution:
Moved them to the right place.  Also removed the duplicated occurance
of testframe.c in the TEST_SRC.

Platforms tested:
Tested in o2 (SGI) parallel.
2004-03-22 23:43:12 -05:00
Albert Cheng
72ca2d086f [svn-r8100] Purpose:
Added the function ParseTestVerbosity() to be shared by all programs.

Platforms tested:
Eirene.
2004-01-23 01:29:57 -05:00
Albert Cheng
06d17aff4d [svn-r8097] Purpose:
Bug fix

Description:
C++ compilers do not like the variable name new which is a kind word
for C++.  Changed it to newval instead.

Platforms tested:
Tested in Copper which is the one complained about the name.
2004-01-22 22:33:51 -05:00
Albert Cheng
cc17167703 [svn-r8094] Purpose:
New feature.

Description:
Added function SetTestVerbosity() so that other applications can
set the verbosity explicitedly without the whole testframe taking
over.
Added Verbose queries shorthands to make code more readable and
easier to change the levels of low, medium and high.

Platforms tested:
Eirene (both serial and parallel).

Misc. update:
2004-01-22 18:05:55 -05:00
Albert Cheng
7f5fd94b56 [svn-r8084] Purpose:
Improvement.

Description:
Verbosity level were specified by numbers which are not meaningful
and prone to typos.

Solution:
Adapted the Verbosity predefined level symbols from HDF4
and changed all numberic verbosity to symbolic values.
(Still need to convert some left over macros like MESSAGE.)

Platforms tested:
Eirene.
No h5committest since this is trivial.

Misc. update:
2004-01-22 15:57:34 -05:00
Quincey Koziol
987f5d5e4d [svn-r8048] Purpose:
Code cleanup & reorganization

Description:
    Move further in the testing framework cleanup, eliminating all the
global variables (moving them into testframe.c as static variables) from the
testing framework code and moving it into the libh5test.a.

Platforms tested:
    FreeBSD 4.9 (sleipnir) w & w/o thread-safety, c++ & parallel
    h5committested
2004-01-09 20:41:13 -05:00
Quincey Koziol
ce2b03097b [svn-r8022] Purpose:
Code cleanup

Description:
    Refactor library testing framework (used for the testhdf5 & ttsafe tests)
to remove almost all of the duplicated code, moving the common code into a
new 'testframe.c' source file.

Platforms tested:
    FreeBSD 4.9 (sleipnir) w & w/o thread-safety
    h5committest
2004-01-06 12:53:13 -05:00
Raymond Lu
7e79a8d71e [svn-r7507] *** empty log message *** 2003-09-24 14:26:50 -05:00
Raymond Lu
0d22a663df [svn-r7265] *** empty log message *** 2003-07-25 21:55:47 -05:00
Quincey Koziol
99f66946f1 [svn-r6954] Purpose:
Code cleanup

Description:
    Wrap macro parameters with parantheses to avoid errors in expanding them.

Platforms tested:
    FreeBSD 4.8 (sleipnir) w/C++
    FreeBSD 4.8 (sleipnir) w/parallel
    h5committested
2003-06-04 10:32:05 -05:00
Quincey Koziol
93ade77d97 [svn-r6666] Purpose:
Code cleanup

Description:
    Clean up comments, etc.


Platforms tested:
    FreeBSD 4.8 (sleipnir) w/C++
    Linux 2.4 (burrwhite) w/FORTRAN
    Solaris 2.7 (arabica) w/FORTRAN
    IRIX64 6.5 (modi4) w/parallel & FORTRAN

    (h5committest not run due to my ongoing difficulties with C++ on burrwhite).
2003-04-14 06:22:50 -05:00
Bill Wendling
44022e598c [svn-r6538] Purpose:
Update

Description:
    Updated the Copyright statement

Platforms tested:
    Linux (This change is only in the comments, so I just check that the
    modules still compile)

Misc. update:
2003-03-31 12:59:04 -05:00