simulist v0.5.0

new-release
Author

The Epiverse-TRACE development team

Published

March 26, 2025

We are very excited to announce the release of a new simulist version v0.5.0. Here is an automatically generated summary of the changes in this version.

This minor version release expands the scope of simulist to include two new post-processing functions: truncate_linelist() and messy_linelist(). Both of these functions modify a line list <data.frame> from sim_linelist() or sim_outbreak(), the line list now also includes a $date_reporting column.

This release has also focused on making the package interface more consistent and contains bugs fixes.

New features

External

  • The messy_linelist() function is added. This takes a simulated line list and creates a “messy” line list with inconsistencies, irregularities and missingness found in empirical outbreak data (#187 & #196 & #199)

  • A reporting delay argument (reporting_delay) is now included in sim_linelist() and sim_outbreak() to simulate reporting delays from the date of symptom onset ($date_onset) to date of reporting ($date_reporting) (#179).

  • The truncate_linelist() function is added. This takes a simulated line list and can create outbreak snapshots and right-truncation of real-time outbreak data (#179 & #193 & #201 & #211).

  • A new vignette, reporting_delays-truncation.Rmd, on reporting delays and right-truncation for line list data has been added (#179 & #201).

  • Alt text is added to all vignette figures (#214).

Internal

  • {english} is added as a package dependency for messy_linelist() (#187).

  • R CMD check CI is now run on R v4.1, the minimum required R version for the package (#180).

  • {epiparameter} is no longer used in testing (#177).

  • .check_linelist() is added for input checking in post-processing functions (#179).

  • .check_age_df() and .check_risk_df() have been merged into .check_df() thanks to the standardisation of the structure of <data.frame> objects required by sim_*() function arguments (#200).

Breaking changes

  • create_config() has been updated to accepted functions instead of a distribution name and a vector of parameters. This now matches the design of arguments that accept a function in sim_*() functions (#202).

  • The structure of the age-structured population <data.frame> input into sim_*() functions has been standardised with the age-stratified risk <data.frame>s by using an $age_limit column instead of an $age_range character column (#200).

  • The line list <data.frame> output by sim_linelist() and sim_outbreak() now contains a $date_reporting column (#179).

  • Outcome date ($date_outcome) is now conditioned to be after hospitalisation date ($date_admission) using the new internal .sample_outcome_time() function. This is a breaking change as previously hospitalisation times could be before outcome times, sim_linelist() can now through an error if an outcome time cannot be sampled to be after the hospitalisation time (#178).

  • The date of first contact is now sampled as the number of days before infection time (equal to symptom onset in the model) rather than days before date of last contact, as this could lead to the infection time before the first contact (#206).

  • The minimum required R version for simulist is increased to v4.1.0 from v3.6.0 due to package dependencies (#180).

  • The minimum required version of {incidence2} (suggested dependency) is now v2.3.0 (#214).

Minor changes

  • Explicitly state function output breaking changes policy in design-principles.Rmd vignette (#208).

Bug fixes

  • Date of symptom onset can no longer occur before date of first contact (#206).

  • Outcome date can no longer occur before hospitalisation date (#178).

Deprecated and defunct

  • None

Acknowledgements

Thanks to those that contributed towards this release, either through opening issues, reviewing pull requests or discussing package developments.

@avallecam @Bisaloo @CarmenTamayo @Degoot-AM @jamesmbaazam @joshwlambert @Karim-Mane @sbfnk

Reuse

Citation

BibTeX citation:
@online{epiverse-trace_development_team2025,
  author = {Epiverse-TRACE development team, The},
  title = {Simulist V0.5.0},
  date = {2025-03-26},
  url = {https://epiverse-trace.github.io/posts/simulist_v0.5.0/},
  langid = {en}
}
For attribution, please cite this work as:
Epiverse-TRACE development team, The. 2025. “Simulist V0.5.0.” March 26, 2025. https://epiverse-trace.github.io/posts/simulist_v0.5.0/.