1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186
|
Package: listenv
================
Version: 0.8.0 [2019-12-05]
SIGNFICANT CHANGES:
* S3 method lengths.listenv() is no longer exported.
NEW FEATURES:
* Made several error messages more informative. The downside is that those
messages are no longer translated (because they are no longer aligned with
built-in R error messages which have translations)
BUG FIXES:
* parse_env_subset(x[1, names]) on a listenv 'x' matrix would throw error
'Error in if (any(i < 0)) { : missing value where TRUE/FALSE needed' if
one of the elements in 'names' specifies a non-existing column name.
* parse_env_subset(x[]) on a listenv 'x' would throw an error on
"Invalid subset: 'x[]'".
* parse_env_subset(x[names]) on a listenv 'x' would throw an error on
'length(x) = 2 > 1' in coercion to 'logical(1)' when length(names) > 1
and _R_CHECK_LENGTH_1_LOGIC2_=true.
* parse_env_subset(x[1,idxs]) on a listenv 'x' would throw an error on
'length(x) = 2 > 1' in coercion to 'logical(1)' with length(idxs) > 1
and _R_CHECK_LENGTH_1_LOGIC2_=true.
* parse_env_subset(x[[names]]) on a regular environment 'x' with
length(names) > 1 would not throw an error, whereas x[[names]] would.
* parse_env_subset(x[[1]]) on a regular environment 'x' would not throw
an error, whereas x[[1]] would.
Version: 0.7.0 [2018-01-21]
NEW FEATURES:
* Now it is possible to set the dimension on an empty list environment without
first resizing it with length(), e.g. x <- listenv(); dim(x) <- c(2, 3).
* Now it is possible to remove multiple elements by assigning NULL, e.g.
x[c(2:3, 10)] <- NULL and x[, "B"] <- NULL.
* Added lengths() for list environments. Requires R (>= 3.3.0).
* dim_na(x) <- dims, where 'dims' contain exactly one missing value, will
set the "missing" dimension based on the length of 'x' and the other
dimensions specified, e.g. with length(x) == 6, dim_na(x) <- c(2, NA) will
set dim(x) <- c(2, 3). This works for all types of object to which
dimensions can be assigned - not only list environments.
* Added is.matrix(), is.array(), as.vector() and as.matrix() for list
environments.
BUG FIXES:
* print() on a named, empty list environment would output an empty string.
* Removing an element from a list environment did not remove dimensions,
e.g. x$a <- NULL.
DEPRECATED AND DEFUNCT:
* Function map() has been renamed to mapping() and same for the corresponding
replacement function. The map() and map<-() functions will soon be
deprecated and eventually defunct.
* x <- listenv(length = n) is defunct; use x <- listenv(); length(x) <- n.
Version: 0.6.0 [2015-12-27]
NEW FEATURES:
* Added support for multi-dimensional subsetting of list environments
just as for list.
BUG FIXES:
* parse_env_subset(x[[idx]]) for list environment 'x' and index 'idx' claimed
x[[idx]] exists as long as idx in [1,length(x)] but it forgot to check if
element really existed, which may not be true if 'x' has been expanded.
Version: 0.5.0 [2015-10-30]
NEW FEATURES:
* Add support for assigning elements when creating list environment
similarly how to lists work, e.g. x <- listenv(a = 1, b = 2).
* length(x) <- n now expand/truncate a list environment.
* Added unlist() and all.equal() for list environments.
DEPRECATED AND DEFUNCT:
* Deprecated x <- listenv(length = n); use x <- listenv(); length(x) <- n.
BUG FIXES:
* as.listenv(x) would drop NULL elements in 'x'.
* x[idxs], x[name] <- y and x$<name> <- y would introduce NA names for
non-named list environments.
Version: 0.4.0 [2015-08-08]
NEW FEATURES:
* Added as.listenv().
* CONSISTENCY: Assigning NULL now removes element just as lists,
e.g. x$a <- NULL. To assign value NULL, do x['a'] <- list(NULL).
* Added support for subsetting with [(), which returns another
list environment, e.g. x[2:3], x[-1] and x[c(TRUE, FALSE)].
* Added [<- assignment, e.g. x['a'] <- 1 and x[2:3] <- c(3,8).
* CLEANUP: Dropped stray debug code.
Version: 0.3.0 [2015-05-23]
CODE REFACTORIZATION:
* Package no longer depends on other packages.
Version: 0.2.4 [2015-05-22]
NEW FEATURES:
* Added helper function parse_env_subset().
Version: 0.2.3 [2015-05-21]
NEW FEATURES:
* print() on listenv() handles empty and no-named listenv:s better.
Version: 0.2.2 [2015-05-20]
NEW FEATURES:
* Now listenv(length = ...) always allocates internal variables.
Version: 0.2.1 [2015-05-19]
NEW FEATURES:
* get_variable() gained argument 'mustExist'.
Version: 0.2.0 [2015-05-19]
SIGNFICANT CHANGES:
* Moved list environments from an in-house package to its own package.
Version: 0.1.4 [2015-05-02]
NEW FEATURES:
* Added print() for listenv:s.
CODE REFACTORIZATION:
* Using tempvar() of R.utils.
Version: 0.1.0 [2015-02-07]
* Created.
|