Changes in version 2.3.0 - Added ecodive JOSS citation information. - New robust_aitchison() beta diversity function. - Switch from testthat to dependency-free tinytest for test suite. - read_tree fixes for edge cases. Changes in version 2.2.6 (2026-04-14) - When using CLR normalization: - Warns when zeros are detected and pseudocount is NULL. - Then continues with pseudocount <- min(counts[counts>0]) / 2. Breaking Changes - norm now defaults to "none" instead of "percent". - norm parameter was removed from some beta diversity functions. Changes in version 2.2.4 Breaking Changes - The rarefy() function has been simplified: - drop = FALSE now returns samples with original counts when sum < depth. - drop = TRUE no longer drops zero-sum features - only zero-sum samples. - depth can no longer be a fraction (only positive integers now). - n_samples parameter has been removed. - warn parameter has been added. Changes in version 2.2.3 - Coerce counts to double before rarefaction. Changes in version 2.2.2 (2026-01-16) - Drop explicit zeros from sparse matrices after rarefaction. Changes in version 2.2.1 (2025-12-12) - Corrected CRAN rchk issue. Changes in version 2.2.0 (2025-12-03) - Dedicated rarefaction backends for dense and sparse matrices. - Auto-conversion to col-major sparse matrix for distance/diversity calculations. Changes in version 2.1.0 (2025-09-26) Breaking Changes - rescale parameter is superseded by norm parameter. Fixes - alpha_div() and beta_div() will only forward applicable parameters. - No longer crashes when pairs = integer(0). - pseudocount = NULL correctly selects smallest non-zero count. Changes in version 2.0.0 (2025-09-21) Breaking Changes - Input matrix is now samples as rows. - Removed weighted parameter. Added New Diversity Methods - Updated Alpha Options: c("ace", "berger", "brillouin", "chao1", "faith", "fisher", "simpson", "inv_simpson", "margalef", "mcintosh", "menhinick", "observed", "shannon", "squares") - Updated Beta Options: c("aitchison", "bhattacharyya", "bray", "canberra", "chebyshev", "chord", "clark", "sorensen", "divergence", "euclidean", "generalized_unifrac", "gower", "hamming", "hellinger", "horn", "jaccard", "jensen", "jsd", "lorentzian", "manhattan", "matusita", "minkowski", "morisita", "motyka", "normalized_unifrac", "ochiai", "psym_chisq", "soergel", "squared_chisq", "squared_chord", "squared_euclidean", "topsoe", "unweighted_unifrac", "variance_adjusted_unifrac", "wave_hedges", "weighted_unifrac") Changes in version 1.0.0 (2025-08-22) - This is the first release of ecodive.