Skip to content

Make tests runnable on Windows and with newer h5dump, with related fixes#160

Open
marklam wants to merge 1 commit into
Apollo3zehn:masterfrom
marklam:testable-on-windows
Open

Make tests runnable on Windows and with newer h5dump, with related fixes#160
marklam wants to merge 1 commit into
Apollo3zehn:masterfrom
marklam:testable-on-windows

Conversation

@marklam

@marklam marklam commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

This PR makes the tests work on Windows, and compatible with .net 10 sdk and a newer h5dump.

It fixes some problems with test parallelism and inability to delete files due to un-garbage-collected handles.

  • Add SharedHdf5StateCollection to serialize tests using HDF5/global state, preventing failures from sharing problems.
  • Update xUnit dependencies and add Xunit.SkippableFact for conditional test skipping.
  • Fix FilePathUtils handling of Widnows environment variables.
  • Make TestUtils.DumpH5File work with newer h5dump.
  • Use 'using' for H5File in tests to prevent attempts to delete in-use files.
  • Add .AsSpan() to fix build problem in .net 10 sdk.
  • Handle 16-byte types in filter tests with opaque type for portability (because LDOUBLE is 8 bytes in Windows).
  • Make HSDS Skip (not fail) if server is unreachable.
  • Fix a chunked storage encoding problem reported by h5dump 2.1.
  • Dispose VirtualDatasetStream in H5D_Virtual (tests failed when the files couldn't be replaced).

…xes.

- Add SharedHdf5StateCollection to serialize tests using HDF5/global state, preventing failures from sharing problems.
- Update xUnit dependencies and add Xunit.SkippableFact for conditional test skipping.
- Fix FilePathUtils handling of Widnows environment variables.
- Make TestUtils.DumpH5File work with newer h5dump.
- Use 'using' for H5File in tests to prevent attempts to delete in-use files.
- Add .AsSpan() to fix build problem in .net 10 sdk.
- Handle 16-byte types in filter tests with opaque type for portability (because LDOUBLE is 8 bytes in Windows).
- Make HSDS Skip (not fail) if server is unreachable.
- Fix a chunked storage encoding problem reported by h5dump  2.1.
- Dispose VirtualDatasetStream in H5D_Virtual (tests failed when the files couldn't be replaced).
@Apollo3zehn

Copy link
Copy Markdown
Owner

Thanks for your PRs, I hope to be able to review soon.

Regarding Fix a chunked storage encoding problem reported by h5dump 2.1., is this related to HDFGroup/hdf5#6409 ? If so, this is an issue in the C library, not here.

@marklam

marklam commented Jun 4, 2026

Copy link
Copy Markdown
Contributor Author

I think it is that problem. This PR changes the vaue written to be what h5dump 2.1.1 was happy with.

I can back that bit out if you'd prefer.

@Apollo3zehn

Copy link
Copy Markdown
Owner

No, it is fine for now. When I do the review I will or will not request a change. I am not sure if I can do the review soon but I will do my best to work in it in the coming days.

@marklam

marklam commented Jun 4, 2026

Copy link
Copy Markdown
Contributor Author

No problem!

I've created a few PRs but tried to keep them orthogonal to make more "bite sized" work

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants