CRAN release 0.6.0
nanonext 0.6.0
The nanonext 0.6 series incorporates significant advances in performance and stability over previous releases
New Features
- Implements
base64enc()
andbase64dec()
base64 encoding and decoding using the 'Mbed TLS' library. sha224()
,sha256()
,sha384()
andsha512()
functions gain an argument 'convert' to control whether to return a raw vector or character string.ncurl()
gains the argument 'follow' (default FALSE) to control whether redirects are automatically followed.
Updates
Please review the following potentially breaking changes, and only update when ready:
send()
now returns an integer exit code in all cases. The 'echo' argument has been replaced by '...', and specifying 'echo' no longer has any effect.recv()
,recv_aio()
andrequest()
now default to 'keep.raw' = FALSE to return only the sent object.ncurl()
argument 'request' renamed to 'response' for specifying response headers to return (to avoid confusion); new argument 'follow' (placed between 'convert' and 'method') controls whether redirects are followed, and there is no longer a user prompt in interactive environments.sha224()
,sha256()
,sha384()
andsha512()
functions no longer return 'nanoHash' objects, but a raw vector or character string depending on the new argument 'convert'.
Other changes:
socket()
andnano()
now accept non-missing NULL 'listen' and 'dial' arguments, allowing easier programmatic use.- Functions
send()
,recv()
,send_aio()
,recv_aio()
,setopt()
,subscribe()
,unsubscribe()
andsurvey_time()
are no longer S3 generics for enhanced performance. messenger()
uses longer SHA-512 hash for authentication; fixes errors creating a connnection not being shown.- The source code of 'libnng' v1.6.0 pre-release (722bf46) and 'libmbedtls' v3.2.1 now comes bundled rather than downloaded - this is much more efficient as unused portions have been stripped out.
- Detects and uses system installations of 'libnng' >= 1.6.0 pre-release 722bf46 and 'libmbedtls' >= 2 where available, only compiling from source when required.
- R >= 4.2 on Windows now performs source compilation of the bundled 'libnng' and 'libmbedtls' using the rtools42 toolchain. Installation falls back to pre-compiled libraries for older R releases.
- Supported R version amended to >= 2.5, when the current
new.env()
interface was implemented. - Internal performance enhancements.