1.2.0
- add `legend` argument to `(m)bgcnbd.PlotTrackingInc`, `(m)bgcnbd.PlotTrackingCum`, `mcmc.PlotTrackingCum`, and `mcmc.PlotTrackingInc`
- made vignette code compatible with BTYD 2.4.2
- deprecated inefficient alternative sampling method for Pareto/NBD MCMC
- updated referenced URLs (to HTTPs or redirected pages)

1.1.4
- `elog2cbs` handles now empty elogs gracefully (#58)

1.1.3
- limit simulated life length to 10k events in `xbgcnbd.GenerateData`

1.1.2
- fix `mcmc.ExpectedCumulativeTransactions` for Pareto/NBD (Abe) with covariates (#55)
- add ability to provide covariates to `abe.generateData`

1.1.1
- added `sales.x` to `elog2cbs` output, which sums over sales in calibration, but excludes initial transaction (thanks to msinjin for the suggestion)

1.1.0
- added `(m)bgcnbd.PlotFreqVsConditionalExpectedFrequency` methods
- added `(m)bgcnbd.PlotRecVsConditionalExpectedFrequency` methods

1.0.2
- speed up `xbgcnbd.EstimateParameters` by lowering lower bound of early stop to k=3

1.0.1
- reduce run time of tests and example code
- add source info to `groceryElog` dataset

1.0.0
- updated package Vignette
- bump in major version number to reflect intended first CRAN release

0.11.x
- bug fix in Pareto/GGG demo

0.11.3
- bug fix in MBG/CNBD-k demo which used a deprecated method name

0.11.2
- add option `date.zero` to specify start date for cohort in `*.GenerateData` methods

0.11.1
- hot fix for broken `elog2cbs` in `0.11.0` release

0.11.0
- rewrote `*.GenerateData` methods
   * generated event log now also contains `date` field
   * if `T.cal` varies, then customer's start date will also vary
   * use `elog2cbs` internally to convert generated event log to CBS format; this also adds `first` to CBS
   * `*.GenerateData` now always returns the event log -> argument `return.elog` has been removed
   * fix bug for `*.GenerateData` in case of with highly varying `T.cal` (fixes #42)
- fix top margin of `mcmc.plotPActiveDiagnostic`

0.10.2
- avoid internal C++ compile warning message
- R CMD CHECK now returns 0 errors and 0 warnings

0.10.1
- add lintr checks for adhering to consistent code style
- run spellcheck for docs

0.10.0
- add a package vignette
- add AppVeyor for automated build tests on Windows
- rename `plotSampledTimingPatterns` to `plotTimingPatterns`
- rename argument `per` to `units` for `elog2cbs` to be consistent with `difftime`
- fix `elog2cbs`: allow T.tot to be larger than max(elog$date)
- fix `elog2inc` and `elog2cum` to not report last week, if that is not complete
- only do bias correction for `mbgcnbd.ConditionalExpectedTransactions` when we can safely assume that the whole customer cohort is passed
- `abe.mcmc.DrawParameters` can now handle data.table's
- add ability to determine minimum number of transactions per customers to `estimateRegularity`

0.9.0
- add argument `first` to `elog2cum` and `elog2inc`
- bugfix for `elog2inc` and `elog2cum` for elogs where dates are missing
- add `groceryElog` dataset, and remove `cdnow.sample()`
- use `groceryElog` dataset for demos and examples
- `elog2cbs` prunes columns, if `elog$sales` or `T.cal` is not provided

0.8.3
- rewrite demos
- add `plotSampledTimingPatterns` for plotting samples of timing patterns
- add `mbgnbd.EstimateParameters` to estimate MBG/NBD model

0.8.2
- improve documentation
- remove MBG/NBD methods, as these are easily accessible via the MBG/CNBD-k methods
- allow `T.star` to be a vector in `*.GenerateData` methods for MCMC models

0.8.0
- add
   * `pnbd.GenerateData`
   * `mcmc.pmf`
   * `mcmc.Expectation`
   * `mcmc.mcmc.ExpectedCumulativeTransactions`
   * `mcmc.PlotTrackingCum`
   * `mcmc.PlotTrackingInc`
   * `mcmc.PlotFrequencyInCalibration`
- adapt `bgcnbd.pmf` to return matrix in case that both `t` and `x` are vectors
- dropp unnecessary `cal.cbs` argument from `mcmc.PAlive`
- allow flexible sample size in `mcmc.DrawFutureTransactions`
- removeGammaGompertz/NBD due to broken `ggnbd.ConditionalExpectedTransactions`

0.7.2
- add new methods: `elog2inc`, `elog2cum`, `cdnow.sample`
- improve documentation and demos

0.7.1
- `elog2cbs` now returns sum over sales for calibration and holdout period
- enhance CDNow demo with estimating of monetary component (i.e. CLV estimate)
- methods accepting `params` check for names, if named vectors are passed

0.7.0
- disable `ggnbd.ConditionalExpectedTransactions`
- (m)bgcnbd.ConditionalExpectedTransactions uses same h2f1 method as BTYD, if GSL is not present
- add Travis-CI
- format R code with `formatR::tidy_dir('R', indent=2)`

0.6.4
- (m)bgcnbd.GenerateData can now handle multiple holdout period lengths, and differing calibration periods for each customer
- fix bias in (m)bgcnbd.ConditionalExpectedTransactions by re-scaling via (m)bgcnbd.Expectation

0.6.3
- unconditional expectations for (M)BG/CNBD-k (`(m)bgcnbd.Expectation`) are now calculated `exact` by utilizing `(m)bgcnbd.pmf`

0.6.1
- add implementation of:
 (m)bgcnbd.Expectation
 (m)bgcnbd.PlotFrequencyInCalibration,
 (m)bgcnbd.ExpectedCumulativeTransactions,
 (m)bgcnbd.PlotTrackingCum,
 (m)bgcnbd.PlotTrackingInc

0.6.0
- add implementation of BG/CNBD-k model
- (m)bgcnbd.ConditionalExpectedTransactions uses original approximation again
- mbgcnbd.ConditionalExpectedTransactions can now handle customers with many (170+) transactions; thanks to Andrea Rumenjak for providing the patch;

0.5.0
- rename model from CBG/CNBD to MBG/CNBD - function prefixes changed from cbgcnbd to mbgcnbd accordingly
- improve approximation logic for mbgcnbd.ConditionalExpectedTransactions

0.4.0
- rename model from Pareto/CNBD to Pareto/GGG - function prefixes changed from pcnbd to pggg accordingly
- cust-column is assigned as names to list of level_1 CODA-objects returned by MCMC drawParameter methods - this makes it easier to access these via customer ID
- rename to cbgcnbd.EstimateRegularity() to estimateRegularity(), because the method is not bound to CBG/CNBD-k model - add tests and demo

0.3.3
- add mc.cores parameter to MCMC methods to explicitely set number of parallel cores to be used
- important bug-fix for pcnbd.mcmc.DrawParameters - draw_tau slice-samples now from correct log_posterior in churn case
- more realistic test case for P/NBD MCMC, plus minor change to handling numeric underflow
 resulting in more accurate parameter estimates
- pcnbd.GenerateData now correctly considers fixed parameter value for k
- pcnbd.GenerateData has minimum level of 0.1 for generated k's in order to avoid itt's if 0

0.3.2
- add mcmc.setBurnin method which cuts away (additional) initial burnin steps of MCMC chains
- `*.EstimateParameters` and `*.mcmc.DrawParameters` now also accept data.tables as input
- pcnbd.mcmc.plotRegularityRateHeterogeneity: add option to plot point estimates
- add mcmc.PActive and mcmc.plotPActiveDiagnostic

0.3.1
- deprecated `abe.mcmc.DrawFutureTransactions` and `pcnbd.mcmc.DrawFutureTransactions` in favor of newly add `mcmc.DrawFutureTransactions` method
- deprecated `abe.mcmc.PAlive` and `pcnbd.mcmc.PAlive` in favor of newly added `mcmc.PAlive` method
- `*.mcmc.DrawParameters` now all consistenly return sampled `z` values in their output