Releases: mitchelloharawild/vecvec
Releases · mitchelloharawild/vecvec
vecvec 1.0.0
The vecvec class has been reimplemented using S7, replacing the previous vctrs
implementation. Existing code using vecvec objects should continue to work.
Breaking changes
- Removed
new_vecvec(), which is replaced byclass_vecvecfor S7 consistency. - Extension packages building new vecvec data types will need to use S7 classes
that have the parent classclass_vecvec. - The internal data structure for
vecvecobjects has been overhauled. In
practice these internal indices should not be used by users or developers,
as the structure can change in the future to accommodate faster variants for
special cases (#7).
New features
vecvecclassed objects now work as matrices and arrays (#15).is_vecvec()tests whether an object is avecvec.class_vecvecS7 class and constructor for vecvec objects.- Added
vctrsmethods for backwards compatibility and vctrs interoperability.
Improvements
- Substantially faster performance and reduced object size
- Adjacent compatible vectors are now automatically flattened when constructing
or modifying avecvec, reducing fragmentation.
vecvec 0.2.1
Bug fixes
- Fixed missing value handling with
is.na()forvecvecobjects (#8).
CRAN v0.2.0
New features
- Added
vec_math()forvecvecobjects. - Added
vec_apply()for applying functions to each vector in avecvec.
Improvements
- vecvec now works with
vctrs::new_rcrdtype vectors. - Added
classargumentvecvec()to specify subclasses. - Removed unnecessary cast in
Opswithvecvectypes.
Bug fixes
- Fixed error when
Opswhenvecvecand second argument are both length 1. - Fix casting from
vecvecdropping common attributes. - Fixed
vec_proxy_equal()not comparing values across vectors.
CRAN v0.1.0
New features
new_vecvec()andvecvec()class constructors.unvecvec()class deconstructor to reduce back to atomic vectors.{vctrs}method dispatch forvecvecdata types.