Skip to contents

fmrireg 0.1.1

Bug Fixes

  • Fixed glm_lss() tests that incorrectly expected specific Cholesky decomposition errors.
  • Fixed convolution test with non-strictly-increasing onsets within blocks.
  • Fixed testthat API usage (expect_lt/expect_gt no longer use deprecated info argument).
  • Fixed latent_dataset API usage: now uses get_latent_scores() instead of deprecated get_data().
  • Changed glm_lss() use_cpp parameter default from TRUE to FALSE (C++ implementation retired; fmrilss package now used).
  • Added fmrireg.suppress_deprecation option check to all deprecated functions for cleaner test output.
  • Added tests/testthat/setup.R to suppress expected deprecation warnings during testing.
  • Suppressed expected kmeans convergence warnings in landmark SRHT tests.

Internal

  • Test warnings reduced from 129 to 31 (remaining warnings are from external packages).

fmrireg 0.1.0

Breaking Changes

  • Design Matrix Column Naming: The naming scheme for columns in design matrices generated by event_model() has been completely revised for consistency and clarity.
    • All column names now strictly follow the format: term_tag + _ + condition_tag + [_b## basis suffix].
    • term_tag: Automatically generated from variable names (e.g., var1_var2) or user-provided id= in hrf(), sanitized (dots become underscores), and made unique with # suffix if needed (e.g., cond, cond#1).
    • condition_tag: Represents factor levels (e.g., Factor.Level), continuous basis columns (e.g., poly_RT_01, z_RT), or interactions joined by _ (e.g., Factor.Level_poly_RT_01).
    • _b##: Optional suffix added only when the HRF has multiple basis functions (e.g., _b01, _b02).
    • The previous style argument ("compact", "qualified", "uid") in design_matrix() is removed. Only the single canonical format is produced.
    • Scripts or analyses that relied on matching previous column name formats (e.g., using Var[Level], Var:Level, :basis[]) will need to be updated to use the new term_tag_Condition.Tag_b## format.

Major Changes

  • Regressor System Refactoring:
    • Introduced a new internal S3 class Reg for representing regressors.
    • The main regressor() function now uses Reg internally but maintains backward compatibility (returns class c("regressor", "Reg", "list")).
    • Deprecated single_trial_regressor() and null_regressor() in favour of using regressor() directly.
    • Unified regressor evaluation under the evaluate.Reg S3 method, supporting different calculation methods (“fft”, “conv”, “loop”, “Rconv”).
    • Evaluation methods now consistently use the refactored evaluate.HRF for HRF sampling.
    • Refactored C++ evaluation code into a single wrapper (evaluate_regressor_cpp).
    • Removed redundant internal helper functions (fastevalreg, fastevalreg2, conform_len, dots).
    • Implemented autoplot.Reg (ggplot2) and print.Reg (cli) methods, deprecating older plot.regressor and print.regressor.
    • Improved input validation and recycling for regressor() arguments using vctrs.
    • Added optional sparse matrix output to evaluate.Reg.
    • Added memoization for HRF sampling within evaluation.

fmrireg 0.0.1

  • Initial CRAN release.