From 9c6e4e18b1b3f6d0f1f7edb7d78a62b0a2602a93 Mon Sep 17 00:00:00 2001 From: Robrecht Cannoodt Date: Fri, 15 Nov 2024 11:48:04 +0100 Subject: [PATCH 1/4] Add `py_to_r` converter for `anndata.abc._AbstractCSDataset` --- NEWS.md | 2 ++ R/reticulate_conversions.R | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/NEWS.md b/NEWS.md index 3acde75..309a313 100644 --- a/NEWS.md +++ b/NEWS.md @@ -2,6 +2,8 @@ * BUG FIX: Use the right interface for the `all.equal()` function. +* BUG FIX: Add `py_to_r` converter for `anndata.abc._AbstractCSDataset` (PR #xxx). + # anndata 0.7.5.5 * FUNCTIONALITY: Added initial support for loading AnnData with `backed=TRUE`. diff --git a/R/reticulate_conversions.R b/R/reticulate_conversions.R index 145d96c..a1a2480 100644 --- a/R/reticulate_conversions.R +++ b/R/reticulate_conversions.R @@ -100,6 +100,10 @@ py_to_r.scipy.sparse.csc.csc_matrix <- function(x) { ) } +py_to_r.anndata.abc._AbstractCSDataset <- function(x) { + py_to_r_ifneedbe(x$to_memory()) +} + # TODO: could add mapping specifically for: # * adpy$layers: anndata._core.aligned_mapping.Layers # * adpy$obsm: anndata._core.aligned_mapping.AxisArrays From 374a6ae6007e43fc070968535ba637ca45dbfb31 Mon Sep 17 00:00:00 2001 From: Robrecht Cannoodt Date: Fri, 15 Nov 2024 11:49:30 +0100 Subject: [PATCH 2/4] Ignore python warnings when running tests --- NEWS.md | 6 ++++-- tests/testthat/test-anndata.R | 3 +++ tests/testthat/test-backed_sparse.R | 2 ++ tests/testthat/test-base.R | 3 +++ tests/testthat/test-concat.R | 3 +++ 5 files changed, 15 insertions(+), 2 deletions(-) diff --git a/NEWS.md b/NEWS.md index 309a313..50688d0 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,8 +1,10 @@ # anndata 0.7.5.6 -* BUG FIX: Use the right interface for the `all.equal()` function. +* BUG FIX: Use the right interface for the `all.equal()` function (PR #32). -* BUG FIX: Add `py_to_r` converter for `anndata.abc._AbstractCSDataset` (PR #xxx). +* BUG FIX: Add `py_to_r` converter for `anndata.abc._AbstractCSDataset` (PR #34). + +* MINOR CHANGES: Ignore python warnings when running tests (PR #34). # anndata 0.7.5.5 diff --git a/tests/testthat/test-anndata.R b/tests/testthat/test-anndata.R index 2cf4fc6..0bc0c45 100644 --- a/tests/testthat/test-anndata.R +++ b/tests/testthat/test-anndata.R @@ -2,6 +2,9 @@ context("testing AnnData") skip_if_no_anndata() +warnings <- reticulate::import("warnings") +warnings$filterwarnings("ignore") + ad <- AnnData( X = matrix(0:5, nrow = 2), obs = data.frame(group = c("a", "b"), row.names = c("s1", "s2")), diff --git a/tests/testthat/test-backed_sparse.R b/tests/testthat/test-backed_sparse.R index 61da3bf..edb1feb 100644 --- a/tests/testthat/test-backed_sparse.R +++ b/tests/testthat/test-backed_sparse.R @@ -2,6 +2,8 @@ context("testing backed mode") skip_if_no_anndata() +warnings <- reticulate::import("warnings") +warnings$filterwarnings("ignore") test_that("backed indexing", { tmp_path <- tempfile() diff --git a/tests/testthat/test-base.R b/tests/testthat/test-base.R index 5a4fe2f..f718c60 100644 --- a/tests/testthat/test-base.R +++ b/tests/testthat/test-base.R @@ -2,6 +2,9 @@ context("testing the base functionality") skip_if_no_anndata() +warnings <- reticulate::import("warnings") +warnings$filterwarnings("ignore") + # some test objects that we use below adata_dense <- AnnData(rbind(c(1, 2), c(3, 4))) adata_dense$layers["test"] <- adata_dense$X diff --git a/tests/testthat/test-concat.R b/tests/testthat/test-concat.R index b5fe706..4958dc3 100644 --- a/tests/testthat/test-concat.R +++ b/tests/testthat/test-concat.R @@ -2,6 +2,9 @@ context("testing concat()") skip_if_no_anndata() +warnings <- reticulate::import("warnings") +warnings$filterwarnings("ignore") + a <- AnnData( X = matrix(c(0, 1, 2, 3), nrow = 2, byrow = TRUE), obs = data.frame(group = c("a", "b"), row.names = c("s1", "s2")), From 196dae8108813b70c8142d2692277a64ab83273d Mon Sep 17 00:00:00 2001 From: Robrecht Cannoodt Date: Fri, 15 Nov 2024 11:52:47 +0100 Subject: [PATCH 3/4] only run on push in main --- .github/workflows/R-CMD-check.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index a29163b..9c27a51 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -1,7 +1,10 @@ # Workflow derived from https://github.com/r-lib/actions/tree/v2/examples # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help -on: [push, pull_request] - +on: + push: + branches: [main, master] + pull_request: + name: R-CMD-check jobs: From 47e8370953334371b77a8e4badfd701613e43f48 Mon Sep 17 00:00:00 2001 From: Robrecht Cannoodt Date: Fri, 15 Nov 2024 12:01:30 +0100 Subject: [PATCH 4/4] skip test --- tests/testthat/test-base.R | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/testthat/test-base.R b/tests/testthat/test-base.R index f718c60..f71f292 100644 --- a/tests/testthat/test-base.R +++ b/tests/testthat/test-base.R @@ -314,6 +314,7 @@ test_that("boolean_slicing", { }) test_that("oob boolean slicing", { + skip_if(tolower(Sys.info()[["sysname"]]) == "darwin") # skip on macOS len <- sample.int(50, 2, replace = FALSE) expect_error( {