Fixed bug where is.unsorted() on sparse character vectors compared string pointers instead of string contents, and ignored default values after the last non-default value.
Fixed bug where is.unsorted() on sparse integer, sparse double, and sparse logical vectors ignored default values after the last non-default value, and returned FALSE for vectors with a single non-default value without comparing it against the default. (#133)
Fixed bug where min() and max() on sparse integer and sparse double vectors included the default value even when every position was a non-default value. (#132)
Fixed bug where sum() on sparse logical vectors used the wrong default value.
coerce_to_sparse_data_frame() and coerce_to_sparse_tibble() are now much faster. (#66)
ATTRIB() macro with R_altrep_class_name() and R_altrep_class_package() for R 4.6.0 compatibility.Fixed bug where sparse_multiplication() had a stack imbalence when returning all 0s. (#113)
Fixed bug where sparse_is_na(type = "integer") would error on character vectors. (#116)
coerce_to_sparse_matrix() would sometimes error if input had NA values. (#109)sparsity() error on numeric vectors with classes. (#106)Adding the scalar arithmetic functions sparse_division_scalar(), sparse_multiplication_scalar(), sparse_addition_scalar(), sparse_subtraction_scalar(). (#87)
Adding the arithmetic function sparse_multiplication(). (#93)
Helper function sparse_lag() bas been added. (#99)
Helper function sparse_sqrt() has been added. (#90)
Helper function sparse_replace_na() has been added. (#91)
Helper functions sparse_is_na() and sparse_which_na() have been added. (#92)
wts argument to sparse_mean(). (#95)coerce_to_sparse_data_frame() and coerce_to_sparse_tibble() where they didn't work with ngCMatrix. (#89)sparsity() has been added, allows sparsity calculations of data.frames, matrices, and sparse matrices. (#82)
Utility function has_sparse_elements() has been added. (#70)
Helper function sparse_dummy() has beenn added. (#49)
Helper functions sparse_mean(), sparse_var(), sparse_sd(), sparse_median() has been added. (#49)
All sparse vector types now have a significant smaller base object size. (#67)
All coerce functions have received a call argument. (#72)
is_sparse_vector() has been rewritten for speed improvement. (#76)
coerce_to_sparse_matrix() Now turns dense zeroes into sparse zeroes. (#77)
Fixed bug where coerce_to_sparse_data_frame() and coerce_to_sparse_tibble() didn't work with matrices with fully sparse columns. (#69)
Fixed bugs where coerce_to_sparse_matrix() would error for completely sparse columns. (#77)