R.NET Changelog

What's new in R.NET 1.5.13 Beta

May 22, 2014
  • Changed the nuget packaging to distribute via nuget.org at R.NET Community and R.NET FSharp Utility. Without entering into details, this was necessary to facilitate the distribution of the packages. You are strongly encouraged to use nuget to manage the dependency of your work on R.NET, rather than the binaries available via this page.

New in R.NET 1.5.12 Beta (May 9, 2014)

  • The C stack limit was not disabled on Windows. For reasons possibly peculiar to R, this means that non-concurrent access to R from multiple threads was not stable. This is now fixed, with the fix validated with a unit test. Thanks to Odugen, skyguy94, and previously others (evolvedmicrobe, tomasp) for help on this front. Do note that concurrent access from multiple threads is still not supported, and it cannot be.
  • Complex number conversion had a bug for vectors with multiple elements. Fixed by skyguy94.
  • Minor improvements to API method names, and some error reporting.

New in R.NET 1.5.11 (Apr 24, 2014)

  • 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.

New in R.NET 1.5.10 (Apr 23, 2014)

  • 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

New in R.NET 1.5 (Jul 30, 2013)

  • Initialize method must be called before using R. Settings should be passed to the method
  • EagerEvaluate method renamed to Evaluate (use Defer method when you want old version of Evaluate)