Skip to content

Commit 4d3739b

Browse files
authored
Merge pull request #170 from mojaveazure/release/5.0.1
Release/5.0.1
2 parents 78f71fe + dd1072f commit 4d3739b

12 files changed

+141
-100
lines changed

DESCRIPTION

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Package: SeuratObject
22
Type: Package
33
Title: Data Structures for Single Cell Data
4-
Version: 5.0.0
4+
Version: 5.0.1
55
Authors@R: c(
66
person(given = 'Rahul', family = 'Satija', email = '[email protected]', role = 'aut', comment = c(ORCID = '0000-0001-9448-8833')),
77
person(given = 'Paul', family = 'Hoffman', email = '[email protected]', role = c('aut', 'cre'), comment = c(ORCID = '0000-0002-7693-8957')),
@@ -46,7 +46,7 @@ Imports:
4646
future.apply,
4747
grDevices,
4848
grid,
49-
Matrix (>= 1.6.1),
49+
Matrix (>= 1.6.3),
5050
methods,
5151
progressr,
5252
Rcpp (>= 1.0.5),

NAMESPACE

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -531,7 +531,12 @@ exportMethods(show)
531531
importClassesFrom(Matrix,CsparseMatrix)
532532
importClassesFrom(Matrix,Matrix)
533533
importClassesFrom(Matrix,RsparseMatrix)
534+
importClassesFrom(Matrix,compMatrix)
535+
importClassesFrom(Matrix,dMatrix)
534536
importClassesFrom(Matrix,dgCMatrix)
537+
importClassesFrom(Matrix,dsparseMatrix)
538+
importClassesFrom(Matrix,generalMatrix)
539+
importClassesFrom(Matrix,sparseMatrix)
535540
importClassesFrom(sp,CRS)
536541
importClassesFrom(sp,Spatial)
537542
importClassesFrom(sp,SpatialPoints)

NEWS.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
# SeuratObject 5.0.1
2+
3+
## Changes:
4+
- Update internal calls to `GetAssayData()` to use `layer` instead of `slot` (#160)
5+
- Update Matrix version to 1.6-2 (#164)
6+
- Change layer-saving in `SaveSeuratRds()` to move all layers instead of just those in `tempdir()` (#169)
7+
- Update internal calls to `SetAssayData()` to use `layer` instead of `slot` (#171)
8+
- Replace internal calls of `FilterObjects()` to `.FilterObjects()` (#171)
9+
110
# SeuratObject 5.0.0
211
## Added
312
- New `Assay5` class with support for layers; layers provide support for:

R/assay.R

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -319,7 +319,7 @@ Features.Assay <- function(
319319
}
320320
layer <- layer[1L] %||% 'data'
321321
layer <- match.arg(arg = layer)
322-
features <- rownames(x = GetAssayData(object = x, slot = layer))
322+
features <- rownames(x = GetAssayData(object = x, layer = layer))
323323
if (!length(x = features)) {
324324
features <- NULL
325325
}
@@ -370,7 +370,7 @@ FetchData.Assay <- function(
370370
x = vars
371371
)
372372
# Pull expression information
373-
mat <- GetAssayData(object = object, slot = layer)
373+
mat <- GetAssayData(object = object, layer = layer)
374374
if (IsMatrixEmpty(x = mat)) {
375375
abort(message = paste("Layer", sQuote(x = layer), "is empty in this assay"))
376376
}
@@ -736,7 +736,7 @@ RenameCells.Assay <- function(object, new.names = NULL, ...) {
736736
CheckDots(...)
737737
names(new.names) <- NULL
738738
for (data.slot in c("counts", "data", "scale.data")) {
739-
old.data <- GetAssayData(object = object, slot = data.slot)
739+
old.data <- GetAssayData(object = object, layer = data.slot)
740740
if (ncol(x = old.data) <= 1) {
741741
next
742742
}
@@ -1370,7 +1370,7 @@ merge.Assay <- function(
13701370
}
13711371
combined.assay <- SetAssayData(
13721372
object = combined.assay,
1373-
slot = "data",
1373+
layer = "data",
13741374
new.data = merged.data
13751375
)
13761376
}
@@ -1465,17 +1465,17 @@ subset.Assay <- function(x, cells = NULL, features = NULL, ...) {
14651465
if (length(x = features) == 0) {
14661466
abort(message = "Cannot find features provided")
14671467
}
1468-
if (ncol(x = GetAssayData(object = x, slot = 'counts')) == ncol(x = x)) {
1469-
slot(object = x, name = "counts") <- GetAssayData(object = x, slot = "counts")[features, cells, drop = FALSE]
1468+
if (ncol(x = GetAssayData(object = x, layer = 'counts')) == ncol(x = x)) {
1469+
slot(object = x, name = "counts") <- GetAssayData(object = x, layer = "counts")[features, cells, drop = FALSE]
14701470
}
1471-
slot(object = x, name = "data") <- GetAssayData(object = x, slot = "data")[features, cells, drop = FALSE]
1472-
cells.scaled <- colnames(x = GetAssayData(object = x, slot = "scale.data"))
1471+
slot(object = x, name = "data") <- GetAssayData(object = x, layer = "data")[features, cells, drop = FALSE]
1472+
cells.scaled <- colnames(x = GetAssayData(object = x, layer = "scale.data"))
14731473
cells.scaled <- cells.scaled[cells.scaled %in% cells]
14741474
cells.scaled <- cells.scaled[na.omit(object = match(x = colnames(x = x), table = cells.scaled))]
1475-
features.scaled <- rownames(x = GetAssayData(object = x, slot = 'scale.data'))
1475+
features.scaled <- rownames(x = GetAssayData(object = x, layer = 'scale.data'))
14761476
features.scaled <- intersect(x = features, y = features.scaled)
14771477
slot(object = x, name = "scale.data") <- if (length(x = cells.scaled) > 0 && length(x = features.scaled) > 0) {
1478-
GetAssayData(object = x, slot = "scale.data")[features.scaled, cells.scaled, drop = FALSE]
1478+
GetAssayData(object = x, layer = "scale.data")[features.scaled, cells.scaled, drop = FALSE]
14791479
} else {
14801480
new(Class = 'matrix')
14811481
}
@@ -1625,7 +1625,7 @@ setMethod(
16251625
signature = c(x = 'Assay'),
16261626
definition = function(x, na.rm = FALSE, dims = 1, ..., slot = 'data') {
16271627
return(Matrix::colMeans(
1628-
x = GetAssayData(object = x, slot = slot),
1628+
x = GetAssayData(object = x, layer = slot),
16291629
na.rm = na.rm,
16301630
dims = dims,
16311631
...
@@ -1649,7 +1649,7 @@ setMethod(
16491649
signature = c(x = 'Assay'),
16501650
definition = function(x, na.rm = FALSE, dims = 1, ..., slot = 'data') {
16511651
return(Matrix::colSums(
1652-
x = GetAssayData(object = x, slot = slot),
1652+
x = GetAssayData(object = x, layer = slot),
16531653
na.rm = na.rm,
16541654
dims = dims,
16551655
...
@@ -1673,7 +1673,7 @@ setMethod(
16731673
signature = c(x = 'Assay'),
16741674
definition = function(x, na.rm = FALSE, dims = 1, ..., slot = 'data') {
16751675
return(Matrix::rowMeans(
1676-
x = GetAssayData(object = x, slot = slot),
1676+
x = GetAssayData(object = x, layer = slot),
16771677
na.rm = na.rm,
16781678
dims = dims,
16791679
...
@@ -1697,7 +1697,7 @@ setMethod(
16971697
signature = c(x = 'Assay'),
16981698
definition = function(x, na.rm = FALSE, dims = 1, ..., slot = 'data') {
16991699
return(Matrix::rowSums(
1700-
x = GetAssayData(object = x, slot = slot),
1700+
x = GetAssayData(object = x, layer = slot),
17011701
na.rm = na.rm,
17021702
dims = dims,
17031703
...
@@ -1927,11 +1927,11 @@ SubsetVST <- function(sct.info, cells, features) {
19271927
#' @noRd
19281928
#'
19291929
ValidateDataForMerge <- function(assay, slot) {
1930-
mat <- GetAssayData(object = assay, slot = slot)
1930+
mat <- GetAssayData(object = assay, layer = slot)
19311931
if (any(dim(x = mat) == c(0, 0))) {
19321932
slots.to.check <- setdiff(x = c("counts", "data", "scale.data"), y = slot)
19331933
for (ss in slots.to.check) {
1934-
data.dims <- dim(x = GetAssayData(object = assay, slot = ss))
1934+
data.dims <- dim(x = GetAssayData(object = assay, layer = ss))
19351935
data.slot <- ss
19361936
if (!any(data.dims == c(0, 0))) {
19371937
break
@@ -1944,7 +1944,7 @@ ValidateDataForMerge <- function(assay, slot) {
19441944
data = 0,
19451945
nrow = data.dims[1],
19461946
ncol = data.dims[2],
1947-
dimnames = dimnames(x = GetAssayData(object = assay, slot = data.slot))
1947+
dimnames = dimnames(x = GetAssayData(object = assay, layer = data.slot))
19481948
)
19491949
mat <- as.sparse(x = mat)
19501950
}

R/assay5.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1518,7 +1518,7 @@ SetAssayData.StdAssay <- function(
15181518
)
15191519
layer <- slot
15201520
}
1521-
LayerData(object = object, layer = slot) <- new.data
1521+
LayerData(object = object, layer = layer) <- new.data
15221522
return(object)
15231523
}
15241524

@@ -2733,7 +2733,7 @@ setAs(
27332733
# browser()
27342734
# Add the expression matrices
27352735
for (i in c('counts', 'data', 'scale.data')) {
2736-
adata <- GetAssayData(object = from, slot = i)
2736+
adata <- GetAssayData(object = from, layer = i)
27372737
if (IsMatrixEmpty(x = adata)) {
27382738
next
27392739
}

0 commit comments

Comments
 (0)