R.NET 1.5.11 is a release towards R.NET 1.6. You are encouraged to use 1.5.11 now and give feedback: much testing has already been performed. This release has few but possibly important changes compared to 1.5.10, released a few days ago.
There are many major improvements compared to 1.5.5, many addressing issues reported repeatedly via the discussion forums.
See the documentation
for setup and usage instructions.
Main changes for R.NET 1.5.11:
- By default REngine.EnableLock is now true; this prevents many if not all concurrency issues, and is a safer default. It can have significant runtime penalty, but if you pass few but large vectors, this is likely still negligible. Credits to gchapman for proposing this.
- On some Linux platforms (Debian at least) programs threw an exception on exit. This has now been rectified. Many program should work on Linux, however stress-testing still leads to some crashes. Enabling REngine.EnableLock is likely to improve things.
- There is now some support for S4 objects. It was not a goal for R.NET 1.6, but seems enough to be included in this release.
For reference, Highlights for the previous recent release 1.5.10 were:
- R.NET binaries are now platform independent (Windows, Linux, MacOS)
- The REngine API has changed. While this will require existing users to adapt the engine initialisation in their code, this will prevent a lot of pitfalls for new users.
- Easier R engine initialization by default: R.NET tries to discover machine settings and R paths.
- Performance improvement in passing large arrays/vectors (up to 100 to 1000x faster for numeric/integer vectors)
- Improved error reporting and detailed error messages.
- Many bug fixes such as memory leaks, R startup parameters, calling generic functions, etc.
- Enhanced API for R function calls (.Invoke() methods) including support for named arguments.
- Limit the cases of faulty multi-threaded accesses to the R engine
The complete list of changes cannot fit here; browse the issues tab with the advanced filter options
Contributors, directly or indirectly, to the code for this release are jperraud, kos59125, evolvedmicrobe, Daniel Collins, gchapman, sukru, nakagawa_hiroyuki, JoeJoe