Method Piecemeal$autorun(), wrapping
Piecemeal$run() to only run when in an interactive session
and not sourced from another file. This allows the simulation to be
specified in fewer files when run on a shared cluster. See the
examples directory for an example set up.
Method Piecemeal$debug() to run the specified erred
configuration on the local system.
Method Piecemeal$test() to (re-)run the specified
configuration on the local system.
To facilitate debugging, {piecemeal} is now much more careful about setting up the local (non-cluster) run environment to be closer to what would have happened on a cluster with the same settings. For example, just because a variable was present in the environment when the worker function was defined does not mean that the function will be able to see it, unless it is exported first.
The package now keeps track of the last successful run and the
last time a consolidation was performed, accessible via
Piecemeal$last_OK() and
Piecemeal$last_consolidated(), respectively.
Piecemeal$status() now distinguishes consolidated
from unconsolidated results and prints last successful completion and
consolidation times.
Package {cli} is now used for better-looking messages.
The vignette now demonstrates more of the package’s features.
The result .rds file format has changed. Old
simulation results should still work for now.
The flag to clean erred result files at the start of a run is now also set if the simulation is reinitialised.
Random seeds set over the course of a simulation are now ephemeral.
is_locked() would sometimes return a
list containing logical rather than a
logical.
A database connection leak has been fixed.
ETA calculation is now skipped if there are too few completed runs, and an informative message is printed.
Time-consuming interactive commands now show progress bars via {cli}.
Calling Piecemeal$status() also includes the ETA,
since there is no additional cost.
New method, Piecemeal$consolidate(), to consolidate
successful run results into an SQLite database, which other methods can
access transparently. Among other things, it helps prevent inode
exhaustion and significantly speeds up Piecemeal$status()
and Piecemeal$eta(). Consolidation can take place while the
simulation is running.
Default cluster settings now allow for a longer timeout.
A file descriptor leak in {filelock} has been mitigated.
Documentation improvements.