Skip to content

Releases: r-simmer/simmer

simmer 4.4.6.4

28 Nov 19:39
Compare
Choose a tag to compare

New features

  • Add support for activity tags via tag argument (as part of #287).
  • Add support for named rollbacks via tags. The amount argument is deprecated
    in favor of the more generic name target. The former will still work, but
    raises a warning (#287 addressing #197).
  • Switch to C++17, drop Boost usage (#297).

Minor changes and fixes

  • Fix call identification on error (#286).
  • Make tests less verbose by default.
  • Fix deprecated functionality in vignette.
  • Fix vignette to feed character input to numeric_version.
  • Fixes for Apple Clang 10.
  • Fix format-security warning.
  • Fix pandoc error in JSS vignette.

simmer 4.4.5

25 Jun 21:21
Compare
Choose a tag to compare

New features

  • Add arithmetic support for schedule objects (#272).
  • New get_batch_size() getter allows a batch to retrieve its size (#263).
  • New get_activity_time() and get_activity_time_selected() getters allow an
    arrival to retrieve the amount of activity time spent in resources (#186).

Minor changes and fixes

  • Apply magrittr workaround and avoid copying simmer and monitor objects in
    function environments for generators too (#279).
  • Fix file removal on object destruction for file-backed monitors (#277).
  • Remove cap on the number of nested branches for trajectory printing (#262).
  • Fix duplicate time-based batch trigger (as part of #263).
  • Fix typo and trajectory in bank vignettes (#283).
  • Fix clone synchronization with wait=FALSE, i.e., arrivals don't need to
    trigger the same synchronize() activity to be in sync (#275).

simmer 4.4.4

07 Feb 21:49
Compare
Choose a tag to compare

Minor changes and fixes

  • Fix memory issues ("not previously seized" error) when reneging from multiple
    resources (#268).
  • Use 'given' instead of 'middle' in CITATION (#273).

simmer 4.4.3

11 Aug 12:44
Compare
Choose a tag to compare

New features

  • Add support for functions in when_activated() (#250).
  • Add support for dynamic batch sizes (#258 addressing #245).

Minor changes and fixes

  • Fix multiple reporting of ongoing arrivals (#240).
  • Set package namespace as parent of simmer and wrap environments (#241).
  • Fix arrival restart after queue drops (#257).
  • Fix segfault printing activities with empty vectors (#253).
  • Fix source behaviour with missing values, which now stop arrival generation
    in the same way as negative values do (#256).
  • Fix deactivate(), which now unschedules future arrivals (#249).

simmer 4.4.2

06 Jun 19:42
Compare
Choose a tag to compare
  • Fix memory issues in trap(), synchronize() and rollback(). These are
    stateful activities that require storing information about passing arrivals to
    manage clones or redirections. These activities were not properly cleaning
    their storage when arrivals were rejected at some point in the trajectory. As
    a result, certain simulations with these activities involved may show random
    improper behaviour depending on how memory reuse happens. This patch unifies
    storage management for stateful activities, adds a new interface to register
    these activities and another interface for arrivals to notify their
    termination, so that the stored information is properly cleaned up (#231).
  • Fix state sharing in round-robin policy operation in select() (#233).

simmer 4.4.1

11 Apr 18:31
Compare
Choose a tag to compare

Minor changes and fixes

  • Fix pause status of reneging arrivals that are kicked from a resource queue
    (#228 addressing #227).
  • Set the minimum execution priority for the timeout() activity. This makes
    possible to set a null timeout so that the next event is processed in the last
    place if several more events happen at the same time (#229).
  • Extend the Queueing Systems vignette with a section about custom service
    policies (as part of #229).

simmer 4.4.0

09 Dec 20:54
Compare
Choose a tag to compare

New features

  • Add out and keep_seized parameters to leave() with the same behaviour as
    in renege_in() and renege_if(). Code and documentation of these functions
    are now integrated under help(renege) (#208, #217).
  • Convenience functions from, to and from_to accept dynamic parameters
    for arguments start_time, stop_time and every (#219).
  • Activities to interact with sources have been vectorised to modify multiple
    sources at once (#222).
  • Several generators or resources with the same parameters can be added with a
    single call to add_generator() and add_resource() respectively if a vector
    of names is provided (#221).

Minor changes and fixes:

  • Fix get_mon_*() dispatch for named lists (#210).
  • Get/put the RNG state when random numbers are required in the backend (#218).
  • Fix convenience functions from, to and from_to to preserve the
    environment of the supplied functions (as part of #219).
  • Documentation improvements (#212, #220).
  • Fix queueing in multiple resources after preemption (#224 addressing #206).

simmer 4.3.0

31 Jul 10:54
Compare
Choose a tag to compare

New features

  • Add ability to keep_seized resources after reneging (#204 addressing #200).
  • Add ability to define a range of arrival priorities that are allowed to access
    a resource's queue if there is no room in the server (#205 addressing #202).

Minor changes and fixes:

  • Drop R6 as a dependency (#193 addressing #190).
  • Small fix in from and from_to + documentation update (75a9569).
  • Move activity usage examples to help pages (#194).
  • Fix shortest-queue selection policies (#196).
  • Fix batch triggering (#203).
  • Update JSS paper, CITATION, references and DOI.

simmer 4.2.2

15 Mar 16:22
Compare
Choose a tag to compare

Minor changes and fixes:

  • Fix batches with an infinite timeout (#184).
  • Fix preemption for arrivals previously stopped by a signal (#187).
  • Fix handler loop for two consecutive signals (#188).
  • Fix incorrect handler linking (#189).

simmer 4.2.1

09 Jan 18:23
Compare
Choose a tag to compare

New features:

  • New handle_unfinished() activity sets a drop-out trajectory for unfinished
    arrivals, i.e., those dropped from a resource (due to preemption, resource
    shrinkage or a rejected seize) or those that leave a trajectory (#178
    addressing #177).
  • New release_all() and release_selected_all() activities automatically
    retrieve the amount of resources seized and release it (#180 addressing #25).
  • New get_seized() and get_seized_selected() getters allow an arrival to
    retrieve the amount of resources seized (#180 addressing #179).
  • New stop_if() activity sets a conditional breakpoint (#181 addressing #100).

Minor changes and fixes:

  • Fix performance issues in data sources (#176).
  • Update CITATION.
  • Fix monitored activity for preempted arrivals (as part of #178).
  • Fix seizes/releases with a null amount (as part of #180).
  • Rename internal status codes (as part of #181).
  • Provide more context on error or warning (as part of #181).
  • Extend the Queueing Systems vignette with a section about state-dependent
    service rates.
  • Fix performance issues in getters (#183).
  • 4.2.0 (untagged) -> 4.2.1: Fix memtest notes on CRAN (e741686).