Skip to content

Commit

Permalink
Merge pull request #79 from fastverse/development
Browse files Browse the repository at this point in the history
Development
  • Loading branch information
SebKrantz committed Jan 29, 2023
2 parents 9d49a16 + 5b17697 commit 0a1c8d8
Show file tree
Hide file tree
Showing 28 changed files with 124 additions and 85 deletions.
2 changes: 1 addition & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package: fastverse
Title: A Suite of High-Performance Packages for Statistics and Data Manipulation
Version: 0.3.0
Version: 0.3.1
Authors@R: c(person("Sebastian", "Krantz", role = c("aut", "cre"),
email = "sebastian.krantz@graduateinstitute.ch"),
person("Hadley", "Wickham", role = "ctb"))
Expand Down
4 changes: 4 additions & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# fastverse 0.3.1

* Hides another core *fastverse* conflict between a new function `collapse::fduplicated()` and `kit::fduplicated()`. The conflict is solved in favor of the new *collapse* version, which is faster and can also indicate all occurrences of duplicated values. `kit::fduplicated()` on the other hand can determine duplicates starting from the last value, and also supports matrices.

# fastverse 0.3.0

* Packages *matrixStats* and *fst* are removed from the core set of packages following a poll on Twitter in which more than 50% of respondents voted in favor. This makes the *fastverse* package lighter and focused on core data manipulation tasks. Users have many options to keep the original extent of the fastverse, such as (1) calling `fastverse_extend(matrixStats, fst, permanent = TRUE)` once following the update, (2) calling `fastverse_extend(matrixStats, fst)` right after `library(fastverse)`, (3) placing a `.fastverse` configuration file with `matrixStats, fst` in the project directory, or (4) setting `options(fastverse.extend = c("matrixStats", "fst"))` in an `.Rprofile` file. See the [vignette](https://fastverse.github.io/fastverse/articles/fastverse_intro.html) for details. The GitHub and R-universe versions of *fastverse* retain their capability to correct some functions in *matrixStats* to make them preserve dimension names by default, whenever *matrixStats* is added as an extension. The CRAN version does not allow this feature.
Expand Down
8 changes: 4 additions & 4 deletions R/conflicts.R
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ ls_env <- function(env) {
x <- ls(pos = env)
switch(env,
`package:data.table` = x[x != "fdroplevels"],
`package:kit` = x[x != "funique"], # !x %in% c("funique", "count")
`package:kit` = x[!x %in% c("funique", "fduplicated")], # !x %in% c("funique", "count")
`package:collapse` = x[x != "D"],
x)
}
Expand Down Expand Up @@ -36,10 +36,10 @@ confirm_conflict <- function(packages, name) { # packages <- conflicts[[3]]; nam
#' It can also be used to check conflicts for any other attached packages.
#'
#'
#' There are 2 internal conflict in the core \emph{fastverse} which are not displayed by \code{fastverse_conflicts()}:
#' There are 3 internal conflicts in the core \emph{fastverse} which are not displayed by \code{fastverse_conflicts()}:
#' \itemize{
#' \item \code{collapse::funique} masks \code{kit::funique}. If both packages are detached, \emph{collapse} is attached after \emph{kit}. In general, the
#' \emph{collapse} version is faster and supports unique rows on selected columns, as well as sorted unique values with option \code{sort = TRUE}. The \emph{kit} version is also very fast and additionally supports matrices.
#' \item \code{collapse::funique} and \code{collapse::fdupliacted} mask \code{kit::funique} and \code{kit::fduplicated}. If both packages are detached, \emph{collapse} is attached after \emph{kit}. In general, the
#' \emph{collapse} versions are faster and a bit more versatile. The \emph{kit} versions are also very fast and additionally supports matrices!
#' % \item \code{matrixStats::count} masks \code{kit::count}. The \emph{matrixStats} version is more flexible, supporting restricted search and missing value removal. The \emph{kit} version is nearly twice as fast.
#' \item{collapse::fdroplevels} masks \code{data.table::fdroplevels}. The former is faster and supports arbitrary data structures, whereas the latter has options to exclude certain levels from being dropped.
#' }
Expand Down
4 changes: 2 additions & 2 deletions R/fastverse.R
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,8 @@
#'
#' @section \emph{fastverse} Harmonizations:
#' % \itemize{
#' There are 2 internal clashes between \code{collapse::funique} and \code{kit::funique}, and \code{collapse::fdroplevels} and \code{data.table::fdroplevels}. % between \code{matrixStats::count} and \code{kit::count}.
#' The \emph{collapse} versions take precedence in both cases as they provide greater performance. % over the \emph{kit} versions. For a comparison of functionality see the details section of \code{\link{fastverse_conflicts}}.
#' There are 3 internal clashes between \code{collapse::funique} and \code{kit::funique}, \code{collapse::fduplicated} and \code{kit::fduplicated}, and \code{collapse::fdroplevels} and \code{data.table::fdroplevels}.
#' The \emph{collapse} versions take precedence in all cases as they provide greater performance. % over the \emph{kit} versions. For a comparison of functionality see the details section of \code{\link{fastverse_conflicts}}.

#' % \item Quite a number of functions in the \emph{matrixStats} package do not (by default) preserve the attributes of objects passed to them, resulting in inconsistent behavior of different functions.
#' % The GitHub version of the \code{fastverse} alters most of the functions where this is the case, listed in a global variable \code{.matrixStats_replaced}, bestowing them with
Expand Down
2 changes: 1 addition & 1 deletion docs/404.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion docs/LICENSE-text.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 0a1c8d8

Please sign in to comment.