From edfcf75c6a25abdd15f1a519af8991255ac76643 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Franquesa=20Mon=C3=A9s?= Date: Thu, 30 Oct 2025 12:31:45 +0100 Subject: [PATCH 1/2] feat: create parent dirs when writing into h5ad --- src/anndata/_io/h5ad.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/anndata/_io/h5ad.py b/src/anndata/_io/h5ad.py index 7b28b6f9a..6e0ddcd2e 100644 --- a/src/anndata/_io/h5ad.py +++ b/src/anndata/_io/h5ad.py @@ -72,6 +72,7 @@ def write_h5ad( adata.strings_to_categoricals(adata.raw.var) dataset_kwargs = {**dataset_kwargs, **kwargs} filepath = Path(filepath) + filepath.mkdir(parents=True, exist_ok=True) mode = "a" if adata.isbacked else "w" if adata.isbacked: # close so that we can reopen below adata.file.close() From f0875a0982f6b19e93f83447b8f211e712298337 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Franquesa=20Mon=C3=A9s?= Date: Thu, 30 Oct 2025 12:50:53 +0100 Subject: [PATCH 2/2] fix: create parent dir --- src/anndata/_io/h5ad.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/anndata/_io/h5ad.py b/src/anndata/_io/h5ad.py index 6e0ddcd2e..a33fc0167 100644 --- a/src/anndata/_io/h5ad.py +++ b/src/anndata/_io/h5ad.py @@ -72,7 +72,7 @@ def write_h5ad( adata.strings_to_categoricals(adata.raw.var) dataset_kwargs = {**dataset_kwargs, **kwargs} filepath = Path(filepath) - filepath.mkdir(parents=True, exist_ok=True) + filepath.parent.mkdir(parents=True, exist_ok=True) mode = "a" if adata.isbacked else "w" if adata.isbacked: # close so that we can reopen below adata.file.close()