Skip to content

Changelog

This document records the change history of statcppCLI.

This project follows Semantic Versioning.

[0.4.0] - 2026-09-09

Fixed

  • glm_cmd.hpplogistic / poisson odds ratio output: The odds ratio and incidence rate ratio loops indexed or_vals[j + 1] / irr[j + 1]. Because statcpp::odds_ratios() and statcpp::incidence_rate_ratios() return one value per predictor with the intercept already excluded, this shifted every label by one position and read one element past the end of the vector, printing an indeterminate value for the last predictor. Both loops now index [j].

Documentation

  • test-reference.md / test-reference-ja.md: Refreshed six example output blocks (test mann-whitney, anova posthoc-tukey, robust biweight, power prop, glm logistic, glm poisson) that had drifted from the actual command output. The drift predates this release; it was found by comparing all 132 documented examples against a live run.
  • cmake/statcpp.cmake: Corrected the statcpp function count in the header comment from 524 to 386, matching the count upstream published in statcpp 0.4.0.

Dependencies

  • statcpp: v0.3.0 -> v0.4.0.
  • norm_cdf and the p-values derived from it are now accurate in the far tail, and lilliefors_test returns a corrected p-value. Verified that neither changes any statcppCLI documented output, golden file, or test expectation: the ks subcommand (which calls lilliefors_test) has no recorded numeric output in the docs or golden files.

[0.3.0] - 2026-04-07

Added

  • Windows (MSVC) support: CMakeLists.txt and cmake/gflags.cmake updated for cross-platform compatibility.
  • Compiler flags split by CXX_COMPILER_ID: MSVC uses /O2 /W4 /Od /Zi, GCC/Clang keep existing flags.
  • Encoding flags split: MSVC uses /utf-8, GCC/Clang use -finput-charset=UTF-8 -fexec-charset=UTF-8.
  • gflags cache detection changed from libgflags.a (Unix-only) to gflags-config.cmake (cross-platform).
  • gflags sub-build now passes -G and -A to match the parent project's generator and platform.
  • CI: Windows build job: Added build-windows job (windows-latest / MSVC) to .github/workflows/ci.yml.

Documentation

  • Platform badge updated: macOS | LinuxmacOS | Linux | Windows.
  • Added subtitle Also runs on Windows (MSVC / MinGW) to README, index, and design docs.
  • Prerequisites updated to include MSVC 2019+.
  • Windows build and install instructions added to README.
  • E2E tests noted as macOS / Linux only (bash required); unit tests work on Windows.
  • Tested Environments updated to include Windows 11 ARM64 + MSVC 2022.

[0.2.0] - 2026-03-13

Changed

  • test_cmd.hppks subcommand: Updated internal call from statcpp::ks_test_normal() to statcpp::lilliefors_test() to follow the upstream rename in statcpp. The CLI subcommand name ks is unchanged.

Documentation

  • test_cmd.hpp: Updated Doxygen comments from "Kolmogorov-Smirnov test" to "Lilliefors test".
  • commands.md / commands-ja.md: Updated ks subcommand description from "Kolmogorov-Smirnov normality test" to "Lilliefors normality test".
  • test-reference.md / test-reference-ja.md: Rewrote ks section to clarify that the function performs a Lilliefors test (parameters estimated from data), not a standard KS test with known parameters.

Dependencies

  • statcpp: v0.2.0