# bivarhr 0.1.6

## CRAN compliance

* All packages listed under `Suggests` are now used conditionally, as
  required by "Writing R Extensions". Every function that relies on a
  suggested package (`bnlearn`, `sensemakr`, `CausalImpact`, `vars`,
  `RTransferEntropy`, `MASS`, `openxlsx`) now checks for it with
  `requireNamespace()` and raises an informative error if it is missing.
* All `\donttest` examples that exercise a suggested package are now
  wrapped in `if (requireNamespace(<pkg>, quietly = TRUE))` (or, for the
  Stan-based functions, `if (interactive() && requireNamespace("cmdstanr"))`),
  so they are skipped under `_R_CHECK_DEPENDS_ONLY_=true` instead of
  failing. This resolves the CRAN check failure in the `run_hmm` example.
* `run_hmm()` no longer depends on `depmixS4` (which was archived from
  CRAN on 2026-07-04). The bivariate Poisson HMM is now fitted by a
  self-contained base-R implementation of the Baum-Welch (EM) algorithm
  with a numerically stable log-space forward-backward pass, multi-start
  restarts, and Viterbi decoding. `depmixS4` has been dropped from
  `Suggests`.

## Robustness improvements

* Output directories are now explicit function arguments
  (`dir_csv`, `dir_out`, `dir_figs`) instead of global variables read
  from the caller's environment. They default to `NULL`, in which case
  the functions no longer write to disk. Affected functions: `run_hmm()`,
  `run_dbn()`, `run_varx()`, `run_sensemakr()`, `run_synth_bsts()`,
  `run_transfer_entropy()`, `run_eba()`, `rolling_oos()`.
* `run_eba()` now takes `control_combos` as an explicit argument instead
  of reading it from the global environment.
* `run_hmm()` now calls `depmixS4::fit()` explicitly, so it works without
  attaching `depmixS4` to the search path.
* `run_varx()` now coerces its input to a `data.table` internally, so it
  accepts a plain `data.frame`.
* Fixed a latent bug in `smoketest_floor_elpd_invariance()` that called a
  non-existent `fit_one_internal()`; it now calls `fit_one()`.
* Removed a duplicate definition of `export_results_xlsx()` that shadowed
  the fully featured implementation.
* Dropped unused `ggplot2` and `bayesplot` entries from `Suggests`.

# bivarhr 0.1.0

* Initial package release.
* Bivariate hurdle model implementation.
* Time-series analysis functions.
