CRAN release 0.10.0
nanonext 0.10.0
New Features
ncurl_aio()
has been separated into a dedicated function for async http requests.- Receive functions add
mode = 'string'
as a faster alternative to 'character' when receiving a scalar value.
Updates
Please review the following potentially breaking changes, and only update when ready:
ncurl()
argument 'async' is retired. Please usencurl_aio()
for asynchronous requests.ncurl()
now always returns the response message body at$data
whether convert is TRUE or FALSE.- The argument 'keep.raw' for all receive functions (previously-deprecated) is removed.
cv_reset()
andcv_signal()
now both return invisible zero rather than NULL.- Function
device()
is removed partially due to its non-interruptible blocking behaviour.
Other changes:
- Improvements to recv (mode = 'serial') and
ncurl()
:- Failure to unserialize, or convert to character, automatically saves the data as a raw vector for recovery, generating a warning instead of an error (as was the case prior to v0.9.2).
- Improvements to vector send/recv (mode = 'raw'):
- Higher performance sending of vector data.
- Permits sending of NULL, in which case an empty vector of the corresponding mode is received.
- Character vectors containing empty characters in the middle are now received correctly.
- For character vectors, respects original encoding and no longer performs automatic conversion to UTF8.
- Base64 and SHA hash functions now always use big-endian representation for serialization (where this is performed) to ensure consistency across all systems (fixes #14, a regression in nanonext 0.9.2).
- Package installation now succeeds in certain environments where 'cmake' failed to make 'libmbedtls' detectable after building (thanks @kendonB #13).
- Source bundles for 'libmbedtls' and 'libnng' slimmed down for smaller package and installed sizes.
- Configures bundled 'libmbedtls' v3.4.0 for higher performance.
- Supported 'libmbedtls' version increased to >= 2.5.