Releases: r-lib/mirai
Releases · r-lib/mirai
CRAN release 0.7.0
daemons()
now takes 'n' and '.url' arguments. '.url' is an optional client URL allowing mirai tasks to be distributed across the network. Compatibility with existing interface is retained.- The server function
server()
is exported for creating daemon / ephemeral processes on network resources. - Mirai errors are formatted better and now print to stdout rather than stderr.
- Improvements to performance and stability requiring nanonext >= 0.6.0.
- Internal enhancements to error handling in a mirai / daemon process.
CRAN release 0.6.0
- Notice: older package versions will no longer be supported by 'nanonext' >= 0.6.0. Please ensure you are using the latest version of 'mirai' or else refrain from upgrading 'nanonext'.
- Internal enhancements to
daemons()
and%>>%
deferred evaluation pipe.
CRAN release 0.5.3
mirai()
gains a '.args' argument for passing a list of objects already in the calling environment, allowing for examplemirai(func(x, y, z), .args = list(x, y, z))
rather than having to specifymirai(func(x, y, z), x = x, y = y, z = z)
.- Errors from inside a mirai will now return the error message as a character string of class 'miraiError' and 'errorValue', rather than just a nul byte. Utility function
is_mirai_error()
should be used in place ofis_nul_byte()
, which is no longer re-exported. is_error_value()
can be used to test for all errors, including timeouts where the '.timeout' argument has been used.- All re-exports from 'nanonext' have been brought in-package for better documentation.
CRAN release 0.5.2
- Internal optimisations requiring nanonext >= 0.5.2.
CRAN release 0.5.0
- Implements the
%>>%
deferred evaluation pipe. - Adds '.timeout' argument to
mirai()
to ensure a mirai always resolves even if the child process crashes etc.
CRAN release 0.4.1
- Exits cleanly when daemons have not been explicitly zeroed prior to ending an R session.
- Fixes possible hang on Windows when shutting down daemons.
CRAN release 0.4.0
- Back to a pure R implementation thanks to enhanced internal design at nanonext.
- Adds auxiliary function
is_mirai()
to test if an object is a mirai. - Versioning system to synchronise with nanonext e.g. v0.4.x requires nanonext >= 0.4.0.
CRAN release 0.2.0
- The value of a mirai is now stored at
$data
to optimally align with the underlying implementation. - Package now contains C code (requires compilation), using weak references for simpler management of resources.
- Switch to abstract sockets on Linux.
CRAN release 0.1.1
mirai()
added as an alias foreval_mirai()
; supports evaluating arbitrary length expressions wrapped in{}
.- A mirai now resolves automatically without requiring
call_mirai()
. Access the$value
directly and an ‘unresolved’ logical NA will be returned if the async operation is yet to complete. stop_mirai()
added as a function to stop evaluation of an ongoing async operation.- Auxiliary functions
is_nul_byte()
andunresolved()
re-exported from {nanonext} to test for evaluation errors and resolution of a 'mirai' respectively. - New
daemons()
interface to set and manage persistent background processes for receiving 'mirai' requests.
CRAN release 0.1.0
- Initial release.