4268 Commits
Author SHA1 Message Date
jhendersonHDF b21c848829 Remove unused variables in test (#5808)
Fixes several warnings in Developer builds about variables declared past the start of the function
2025-09-11 14:56:42 -05:00
Matt L 5ce77b3fea Separate test file generation from testing in external link reference test (#5760)
Move the portion of test_reference_external() in charge of test file creation to its own dedicated function. This will eventually be helpful if/when we change the test file creation here to used a shared routine.
2025-09-03 22:47:48 -05:00
Allen Byrne 63803d7115 allow better CMake version testing (#5727)
* add cmake latest workflow with lukka/get-cmake@latest
* Upgrade minimum CMake version to 3.26
2025-08-23 06:43:20 -05:00
Matt L 99a3e84532 Fix Family VFD filename conflict in tests (#5673) 2025-08-14 07:58:39 -05:00
Allen Byrne 497b65ad0f Add file header comments to CMake files (#5688) 2025-08-13 07:19:57 -05:00
Neil Fortner be306608d4 Change default page buffer size to 64MiB when using ROS3 driver (#5685)
* H5FDset_fapl_ros3() sets page buffer size to 64MB by default. Added
H5F_PAGE_BUFFER_SIZE_DEFAULT macro indicating the page buffer size
setting is the default, and associated machinery and tests.
2025-08-06 23:04:10 -05:00
bc9914d2f0 Optimizations for repeated VDS source file and dataset names (#5640)
Add hash tables for detecting repeated source file and dataset names.
Share these repeated strings between mappings in memory. Add new
encoding format for VDS for shared names. Add tests and documentation
for these changes.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Matthew Larson <matthewjlar@gmail.com>
2025-07-16 09:23:59 -05:00
H. Joe Lee 434b94c1b3 chore: decapitalize Fixed Array (#5659)
close #5658
2025-07-15 18:20:13 +02:00
H. Joe Lee 519bb41b7b Remove 1 hour timeout limit for objcopy test (#5648) 2025-07-07 07:38:11 -05:00
Matt L 3b054fe7cc Always build test generators (#5622) 2025-06-23 07:47:05 -05:00
Matt L 68bf564886 Delay dataset layout copy to DCPL (#5537) 2025-06-20 11:02:55 -05:00
0743df227f Add documentation and s3proxy testing for ROS3 VFD (#5560)
Adds workflow to build ROS3 VFD and optionally build aws-c-s3 library
from source or use package managers

Adds testing of ROS3 VFD with s3proxy and docker

Adds new H5Pset_fapl_ros3_endpoint()/H5Pget_fapl_ros3_endpoint() API
functions to set/get an alternative endpoint URL to use when opening
files with the ROS3 VFD

Cleans up warnings in tools and tests related to ROS3 VFD structure size

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
Co-authored-by: Allen Byrne <50328838+byrnHDF@users.noreply.github.com>
2025-06-19 16:22:49 -05:00
Neil Fortner 1ca48703e3 Add H5Dread_chunk2() (#5506) 2025-06-17 11:11:13 -05:00
75fff3ed06 Re-write ROS3 VFD S3 backend to use AWS' C S3 library (#5548)
* Re-write ROS3 VFD S3 backend to use AWS' C S3 library

Replaces the ROS3 VFD's libcurl-based S3 backend with a new
backend which uses the aws-c-s3 library

Adds support for sourcing credentials from standard AWS
configuration files, environment variables, etc. with a
fallback to anonymous credentials when credentials can't be
found

Adds support for sourcing AWS region from standard AWS
configuration files and environment variables

Adds support for new environment variables HDF5_ROS3_VFD_DEBUG,
HDF5_ROS3_VFD_LOG_LEVEL and HDF5_ROS3_VFD_LOG_FILE for debugging
purposes

Replaces function to load testing credentials in the ros3.c and
s3comms.c tests with new function that delegates to the aws-c-s3
library for better compatibility with standard AWS configuration
files and environment variables

Adds support for s3:// object URIs

Adds HTTP User-Agent header in form of
'libhdf5/<hdf5_version> (vfd:ros3) libaws-c-s3'

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
Co-authored-by: Allen Byrne <50328838+byrnHDF@users.noreply.github.com>
2025-05-29 17:51:29 -05:00
Dana Robinsonandgithub-actions d9f5f5020c Refactor warning macros (#5432)
* Refactor warning macros

Replaces the scheme in H5warnings.h with a more compiler-agnostic
one that relocates ifdef complexity to the warnings header file
and uses better naming.

---------

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-23 11:46:40 -05:00
Matt L 9db58791cd Fix typo in DLS test message (#5534) 2025-05-14 15:29:49 -05:00
Scot Breitenfeld b0a47973d1 update hdf5.github.io links to support.hdfgroup.org (#5530) 2025-05-13 07:45:16 -05:00
Neil Fortner e0dbcebe0d Minor addendums to latest file image fix (#5489) (#5496)
* Enable bitwise comparison of file image in file_image.c for all file
format versions. Add RELEASE.txt note for file image fix with latest
format (#1915).

* Fix error message in file image test.
2025-04-28 13:37:30 -05:00
Neil Fortner abc030a905 Fix issue with H5Fget_file_image() when using newer file formats (#5489)
* Patch superblock checksum of file image when using H5Fget_file_image
* Add assert to (hopefully) prevent this code from going out of date
again.
2025-04-25 15:06:13 -05:00
Matt L f469afca53 Fix bad VOL env var handling in CMake tests (#5337)
* Fix bad VOL env var handling in CMake tests

* Preserve VOL connector env during filter plugin test

* Do not load env VOL connector during filter plugin test
2025-04-15 08:08:38 -05:00
jhendersonHDF 1b7baf0e5f Include 400/500 HTTP status codes in ROS3 VFD error stacks (#5441)
Adds check for buffer overflow in curl write callback
2025-04-11 16:55:21 -05:00
jhendersonHDF 407caf1259 Suppress GCC warnings about invalid float16 literal suffix before C23 (#5387)
* Revert to old form of warning flag
2025-04-02 11:54:12 -05:00
jhendersonHDF be63ed0cb0 Enable building of test generator programs against shared libraries (#5404)
Build test generator programs against shared libraries, if available,
by default. Otherwise, build them against static libraries. If
HDF5_BUILD_STATIC_TOOLS is set to ON, the tools test generator
programs will be built against static libraries even if shared
libraries are available.
2025-03-26 14:26:19 -05:00
Allen Byrne 53f415ddfa Remove bypassed autotools files, references and CI commands (#5395) 2025-03-21 09:20:56 -05:00
jhendersonHDF fc3b3e7bbb Fix segfault in H5S__get_select_hyper_blocklist() (#5353) 2025-03-18 11:06:36 -05:00
Allen Byrne 1602e1fbfe Remove autotools files and docs (#5358) 2025-03-14 13:28:44 -05:00
Matt L 4b609617f6 Close attribute after shared attr dtype test (#5360) 2025-03-12 13:17:02 -05:00
jhendersonHDF 5e32f15352 Fix two assertion failures in hyperslab code (#5355) 2025-03-07 16:54:53 -06:00
Allen Byrne 0b55bcd98d Change md file links to correct locations (#5349) 2025-03-03 15:00:44 -06:00
jhendersonHDF d366d72830 Update API tests README.md with current information (#5348) 2025-03-03 15:00:25 -06:00
Scot Breitenfeld 352501a5bd fix for cray compiler failing test (#5347) 2025-03-03 14:11:00 -06:00
Matt L 07030271ee Fix objects not being closed on objcopy helper failure (#5331) 2025-02-27 10:19:57 -06:00
Matt L e07da0c772 Fix bad objcopy test cleanup on failure (#5320) 2025-02-17 11:46:26 -06:00
jhendersonHDF d48af25a96 Move TestAlarmOn()/TestAlarmOff() back into PerformTests() (#5307)
Moves call to TestAlarmOn() in testframe framework back into
the PerformTests() function due to the timing of when the
framework processes command-line arguments
2025-02-10 15:23:54 -06:00
jhendersonHDF e8760978c9 Fix segfault in H5Scombine_select (#5296)
Checks for a hyperslab selection in the resulting dataspace before
attempting to set a hyperslab-specific field
2025-02-07 09:44:01 -06:00
jhendersonHDF 354994a91a Minor adjustments to usage of alarm(2) timer in tests (#5292)
Make alarm(2) timer per-test program rather than per-subtest

Avoid enabling alarm(2) timer when TestExpress is set to 0
2025-02-05 14:27:11 -06:00
jhendersonHDF fba198e148 Add new -testexpress option to testframe testing framework (#5286)
Adds new -testexpress command-line option to the testframe testing
framework to allow setting or overriding of the TestExpress level
at runtime

Adds macros for the different currently defined TestExpress levels
2025-01-31 20:11:48 -06:00
Ted Lyngmo 985df02283 Fix a few illegal pointer usages (#5279) 2025-01-25 22:54:47 -06:00
Matt L 331c000e6a Add H5Tdecode2, rename and deprecate H5Tdecode (#5213) 2025-01-24 08:13:43 -06:00
Allen Byrne d84337ad8c Fix codespell issues (#5256) 2025-01-21 17:36:27 -06:00
jhendersonHDF c83ca7dff3 Fix AddressSanitizer issues in cache test (#5235)
Fix usages of stack variables after function return by
removing extraneous H5CX_push/pop operations and hoisting
a stack variable to a higher scope
2025-01-15 14:58:39 -06:00
Dana Robinson 144b4fc661 Move AWS config/auth code inside H5FDs3comms.c (#5238)
The AWS configuration and authorization setup code needs to be
consolidated into one location in order to check AWS environment
variables and configuration files as well as fapl parameters.

This changeset pushes some stragglers into the s3comms code.

Also includes some cleanup, like removing useless macros,
making the s3comms functions package functions, and
renames things for symmetry and readability.
2025-01-15 05:43:20 -08:00
Dana Robinson 01d5a973e0 More H5FDs3comms.c/h cleanup (#5231)
* Rename functions that create AWS strings to include _make_aws_
  in the name
* Separate out the test-only load AWS credentials function
2025-01-14 10:13:32 -06:00
jhendersonHDF 46658a55b3 Fix memory leak in API tests for vlen dataset I/O (#5230) 2025-01-13 16:58:32 -08:00
Dana Robinson 04f17f5a7c Clean up H5FDs3comms.c code (#5228)
Makes it more like the rest of the library. Also simplifies some
string copying.
2025-01-13 10:25:57 -08:00
Dana Robinson 915722a0c4 Parse ros3 VFD URLs using libcurl (#5226) 2025-01-13 06:40:27 -08:00
Dana Robinson 8ff65ebf7a Use SSL to create hex strings from byte arrays (#5227) 2025-01-13 05:44:14 -08:00
jhendersonHDF 2d0c676642 Enable API tests by default and fix some issues (#5223)
* Enable API tests by default

* Fix leaked file handle in API link test

* Fix some versioned API misuses
2025-01-10 09:08:02 -08:00
jhendersonHDF af0b2315bd Remove const from testing parameters in testframe framework (#5214)
Makes testing parameters specified with AddTest non-const again when
passed to test functions. This allows test functions to update their
parameters during execution and is particularly useful for tests
which use those parameters to accumulate statistics, error counts,
etc. without resorting to global variables.
2025-01-08 13:33:00 -06:00
Dana Robinson 00adfce7a4 Remove duplicate MESSAGE macro (#5200)
* Removes duplicate macro from C++ code
* Hides global variables behind accessor functions
2025-01-02 10:11:17 -06:00