rStats.js

Changelog

All notable changes to this project are documented here. The format follows Keep a Changelog.

While the version is 0.x, a minor release (0.y.0) may contain breaking changes; they are listed under Breaking for each release. From 1.0.0 the project follows Semantic Versioning.

1.3.0 - 2026-11-09

Robust standard errors and diagnostic accuracy and measurement agreement (items 1 and 2 of the roadmap): sandwich’s heteroskedasticity-consistent and clustered covariances of lm and glm fits with lmtest’s tests and intervals, the robust variance of coxph, ROC curves with DeLong’s and the bootstrap intervals and tests, the diagnostic 2 × 2 measures, Bland-Altman analysis, Deming and Passing-Bablok regression, the six Shrout-Fleiss intraclass correlations and TOSTER’s equivalence tests, checked against sandwich, lmtest, survival, pROC, epiR, BlandAltmanLeh, mcr, psych and TOSTER (R 4.6.2); where these packages lose digits or overflow, the true values.

Added

Fixed

1.2.0 - 2026-11-07

Contingency tables and proportions (item 1 of the roadmap): intervals for a proportion and for the risk difference, risk ratio and odds ratio of a 2 × 2 table, the mid-p version of Fisher’s exact test, Boschloo’s test, the G-test, the Stuart-Maxwell test, Goodman and Kruskal’s gamma, the linear-by-linear association test, the ‘N − 1’ chi-squared test, Freeman-Tukey residuals and equivalence tests, checked against DescTools, epitools, epiR, exact2x2, Exact, coin and equivalence (R 4.6.2); where these packages’ root searches or maxima are inexact, the true values. pgamma (and pchisq, ppois, …) is more accurate for small shapes and near x = a.

Added

Fixed

1.1.0 - 2026-11-06

The reference is now R 4.6.2 (until 1.0.0, R 4.5.2): every fixture was regenerated with oracle/Dockerfile.r46 (R 4.6.2, the same dated package snapshot, Ubuntu 26.04 with OpenBLAS 0.3.32), and the functions whose results R 4.6 changed follow it, except where R 4.6.2 is wrong (docs/differences-from-r.md). The fixture of fisherTest is still R 4.5.2’s (fisher.test is unchanged in R 4.6; its oracle needs nearly all of the Docker VM’s memory).

Changed

1.0.0 - 2026-11-05

The first stable version: from 1.0.0 the public API follows Semantic Versioning (see Versioning in the README), so breaking changes come only with a new major version. It adds the generalized linear mixed models of lme4’s glmer, with glmerSummary, glmerAnova and predictions for both mixed models (glmerPredict, lmerPredict), in the area @numero-uno-jpn/rstats/mixed, which stays out of the root export and of dist/rstats.js; and fixes lmer and lmerSummary for predictors on extreme scales.

Added

Fixed

0.17.0 - 2026-11-05

The API is cleaned up toward 1.0.0, which follows the mixed models of glmer: argument errors are a TypeError or a RangeError, a key of an options object that the function does not know is an error, and the results of the tests have a required warnings with R’s warnings, which setWarningHandler can also pass to a function.

Breaking

Added

Changed

Fixed

0.16.0 - 2026-11-04

Fixes from a numerical review and GitHub issues #8 to #513. Each case is described, with R’s value and rStats.js’s, in differences from R and in the review logs (docs/review-logs/review_fix_log_*.md). Where R itself is wrong, rStats.js now returns the mathematically right value; where R is right, the aim is R’s bits. The rules behind these changes are listed under “Design rules” in CONTRIBUTING.md.

Breaking

Added

Changed

Fixed

0.15.3 - 2026-10-29

Fixed

0.15.2 - 2026-10-28

Fixed

0.15.1 - 2026-10-27

Fixed

0.15.0 - 2026-10-27

Breaking

Fixed

0.14.0 - 2026-10-27

Added

0.13.0 - 2026-10-27

Breaking

Results change where they now follow R (details under Fixed):

Added

Fixed

Differences from R found by an external check of 0.11.1 against R (4057 cases) and confirmed with R 4.5.2:

0.12.0 - 2026-10-27

Added

Fixed

Six differences from R in the formula functions, found by an external check of 471 formula cases against R and confirmed with R 4.5.2:

Changed

0.11.1 - 2026-10-26

Documentation only; the code is the same as in 0.11.0.

Added

0.11.0 - 2026-10-26

Added

Changed

0.10.0 - 2026-10-26

Added

Fixed

0.9.0 - 2026-10-25

Added

0.8.0 - 2026-10-25

Added

Changed

Fixed

0.7.0 - 2026-10-25

Added

Changed

0.6.1 - 2026-10-24

The first release of the 0.6 series on npm. A v0.6.0 tag was pushed to GitHub earlier the same day but never published to npm and has been withdrawn; use 0.6.1.

Added

Changed

Fixed

0.5.0 - 2026-10-21

First public version.

Included

Conventions