Changelog
Source:NEWS.md
fastcpd 0.9.8
 Preliminary support for ARMA(p, q) model with parameter
order = c(p, q)
and family"arma"
.  Add
fastcpd.arma
/fastcpd_arma
for ARMA(p, q) model.  Add adaptive increasing
beta
values.
fastcpd 0.9.7
 Add
lower
andupper
parameters to denote the lower and upper bounds of the parameters.  Add line search.
 Add hardcoded ARMA(3, 2).
fastcpd 0.9.6
 Add
bitcoin
andwell_log
data.  Add residual calculation for mean family.
 Add plots for bitcoin data.
 Fix residual calculation for time series data when the seegments are too small.
 Handle variance estimation errors.
fastcpd 0.9.5
 Add wrapper functions of AR(p) family:
fastcpd.ar
/fastcpd_ar
, ARIMA(p, d, q) family:fastcpd.arima
/fastcpd_arima
, GARCH(p, q) family:fastcpd.garch
/fastcpd_garch
, linear regression family:fastcpd.lm
/fastcpd_lm
, logistic regression family:fastcpd.binomial
/fastcpd_binomial
, poisson regression family:fastcpd.poisson
/fastcpd_poisson
, penalized linear regression family:fastcpd.lasso
/fastcpd_lasso
, MA(q) model:fastcpd.ma
/fastcpd_ma
, mean change:fastcpd.mean
/fastcpd_mean
, variance change:fastcpd.variance
/fastcpd_variance
, mean or variance change:fastcpd.meanvariance
/fastcpd_meanvariance
/fastcpd.mv
/fastcpd_mv
.  Replace
"gaussian"
family with"lm"
.  Add progress bar.
 Fix design matrix from formula bug.
fastcpd 0.9.4
 Fix sanity check.
 Add small AR(1) data in gallery.
 Fix VAR(p) model bug.
 Add VAR(2) example in Gallery.
 Remove commented code.
fastcpd 0.9.3
 Deprecate “vanilla” family by
vanilla_percentage
parameter.  Add check utility functions.
 Add MA(4) example.
 Fix the bug when
beta
is updated but the oldbeta
is still in use.  Remove tests estimating the variance in the “gaussian” family dynamically.
 Merge
beta
updating intoget_segment_statistics
.
fastcpd 0.9.2
 Add gallery to vignettes.
 Remove cheatsheets pdf from the package.
 Use
forecast
package for ARIMA model.  Use
fGarch
package for GARCH model.
fastcpd 0.9.1
 Wrap
&&
around
by parentheses.  Add ma(4) example using custom cost function.
 Add full support for AR(p), MA(q) and ARIMA(p, d, q) models.
fastcpd 0.8.4
 Add cheatsheets.
 Refactor code and utilize the
cost_function_wrapper
.  Optimize warm start.
fastcpd 0.8.3
 Add
fastcpd.ts
/fastcpd_ts
for time series data.  Fix pre segmengation bug for
lasso
.  Fix bug related to
vanilla_percentage
parameter forlasso
.  Add tests with invalid family for
fastcpd.ts
.  Remove the
cp_only = TRUE
default when the family is “custom”.  Improved plotting for “ar” and “var” families.
 Add test coverage for
cp_only = TRUE
andfastcpd_ts
.  Increase test coverage.
 Provide user selection when
ggplot2
is not installed.
fastcpd 0.8.1
 Add new “ar” family for autoregressive models.
 Add new “var” family for vector autoregressive models.
fastcpd 0.8.0

Deal with the following:
`glmnet` between R and C++, Due to the excessive calls to `fastcpd` for lasso. it is better to use the R implementation of
Separate the use of internal C++ cost functions and userdefined R cost functions.
Add Codecov Icicle plot in README.
Remove
cost_optim
andcost_update
fromRcppExports.R
.Estimate the variance in the “gaussian” family dynamically.
fastcpd 0.7.6
 Move default cost functions definition inside the
fastcpd
definition.  Define constant unordered set to store the family sets.
 Avoid using
length(formals(cost))
to check the number of arguments ofcost
function.  Introduce an internal family “vanilla”.
fastcpd 0.7.5
 Add variance estimation example in linear regression.
 Update reference page.
 Add validation for
family
.  Add user selection when
ggplot2
is not installed.  Add AR(1) using
forecast
example in the tests.
fastcpd 0.7.2
CRAN release: 20230923
Add suggested package checking in tests.

Try to solve the amazing clangASAN error on CRAN:
in dyn.load(file, DLLpath = DLLpath, ...) : Error '/data/gannet/ripley/R/testclang/mvtnorm/libs/mvtnorm.so': unable to load shared object /data/gannet/ripley/R/testclang/mvtnorm/libs/mvtnorm.so: undefined symbol: _ZNK7Fortran7runtime10Terminator5CrashEPKcz : <Anonymous> ... asNamespace > loadNamespace > library.dynam > dyn.load Calls
fastcpd 0.7.0
CRAN release: 20230921
 Remove C++ unit tests using catch and commented out the code since the new version of development version of Rcpp is not yet available on CRAN. Related pull request: https://github.com/RcppCore/Rcpp/pull/1274.
 Add more documentation for
fastcpd
method.
fastcpd 0.6.4
 Check warning messages in tests.
 Further encapsulation of all FastcpdParameters members.
fastcpd 0.5.5
 Add example and test for multivariate mean shift.
 Add example and test for multivariate variance change.
 Add example and test for multivariate mean and variance change.
 Add test for linear regression with multidimensional responses.
fastcpd 0.5.3
 Add more experiments but commented out for the sake of test time without affecting the test coverage.
 Add examples in README.
 Add CRAN manual using
R CMD Rd2pdf . output=man/figures/manual.pdf force nopreview
from stackoverflow.  Add example for multiple epochs using custom cost functions.
 Add table of contents to README.
fastcpd 0.5.0
 Rewrite the whole package in C++ except LASSO due to the excessive calls between R and C++ of
glmnet
.
fastcpd 0.3.3
 Merge the implementation of vanilla PELT and SeN.
 Encapsulate the implementation of binding new coefficients into the previous coefficients.
 Rewrite
fastcpd
parameters updating in C++.
fastcpd 0.3.2
 Integrate initialization and update for
theta_hat
,theta_sum
andhessian
.  Combine theta estimation into a single function.
 Add a parameter
vanilla_percentage
to denote the method switching between vanilla PETL and SeN.  Add more documentation to
cp_only
parameter.  Add preparation for merging vanilla PELT with SeN.
fastcpd 0.3.1
 Add examples as tests for
fastcpd
.  Rearrange C++ functions.
 Add more precondition check.
fastcpd 0.2.7
 Fix mean change example bug.
 Update documentation to redirect README to
pkgdown
generated webpage.  Add contact methods and ways to file a ticket.
fastcpd 0.2.6
 Add C++ sanity check for Logistic regression data, i.e. binomial family.
 Add examples as tests for
fastcpd
.  Rename C++ source files to follow Unix convention.
 Update documentation link in README.
fastcpd 0.2.4
 Add column name for
thetas
slot infastcpd
class.  Fix plot where residuals and responses appear in the same plot.
 Default
cp_only
toFALSE
.  Remove residuals from
summary
method.