Closed eweitz closed 1 month ago
Attention: Patch coverage is 56.25000%
with 7 lines
in your changes missing coverage. Please review.
Project coverage is 69.54%. Comparing base (
20fdea2
) to head (4c47c6b
). Report is 13 commits behind head on development.
Thanks for the enhanced testing, Jean! I see expected validation failure with unconventional.h5ad
per screenshot, so my hunch is your finding is due to a discrepancy in local setup. The other file is a known separate case. So this seems good to merge. Let's pair when you've got a few minutes!
This extends up-front checks to cover adding an AnnData file from a bucket. It makes authoring smoother, and thus faster.
Impact
Previously, new AnnData validation caught errors upon selecting a local file. Validating before upload is a great idea. It eliminates long wait times, potentially reducing a disjointed 15-45 minute process into a cohesive 10 second process. But local AnnData validation doesn't help when the file is remote, i.e. in a Terra workspace GCP bucket.
Now, client-side file validation (CSFV) for AnnData headers also applies to remote files. When adding AnnData via "Use bucket path", header validation finishes in < 10 seconds rather than 5-10 minutes like before.
Demo
Here's how it looks!
https://github.com/user-attachments/assets/360b2bfe-f744-4476-b439-d37fdabb8bf9
Technical notes
This required fixing a bug in the external HDF5 library that prevented using it with files needing an OAuth token. Details on that are in https://github.com/jrobinso/hdf5-indexed-reader/pull/2. That HDF5 library is now also available as a canonical NPM package, which replaces our use of an org-scope package.
Next steps
This satisfies SCP-5770.