Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for .Net Core #40

Closed
saravan23 opened this issue Jul 21, 2016 · 14 comments
Closed

Support for .Net Core #40

saravan23 opened this issue Jul 21, 2016 · 14 comments

Comments

@saravan23
Copy link

Is there any plan to support this package for .Net Core?

@wonea
Copy link

wonea commented Aug 30, 2017

There was an effort to port to NET Core 2.0 but came across permission troubles.

https://stackoverflow.com/questions/43939463/using-r-net-community-in-net-core-2-0-preview-1

Could not load file or assembly 'System.Security.Permissions, Version=0.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. The system cannot find the file specified.

On a personal note, I would really appreciate NETSTANDARD support.

@philcontrolf1
Copy link

(I am the poster of the Stack Overflow question for what it's worth)

For what it's worth, that wasn't an attempt to "port" it at all, it was just a test to see if it ran under .NET Core 2.0 - and when it didn't, trying to understand if why it wasn't running was something I could fix, or whether it was a Hard Problem(tm). My current thinking is that it's a Hard Problem(tm) but I'd be more than happy to be proved wrong.

@buybackoff
Copy link

Recently I tried to migrate to 1.6 but paused because many missing stuff was going to be added in .Net Standard 2.0. Updating to 2.0 was an easy problem, but I have not tested properly it yet. However, the library is just a convenience wrapper for P/Invoke over R C API, so there is nothing that could stop it from working in .Net Standard.

In my fork I also have some optimizations to reduce memory allocations and copying.

https://github.com/Spreads/Spreads.R
https://www.nuget.org/packages/Spreads.R/1.0.0-alpha2

@jmp75
Copy link
Collaborator

jmp75 commented Aug 31, 2017

@buybackoff I will attempt a merge of your work on a branch, as a dry run to start with, but clearly contributions such as some of the native interop memory efficiencies and framework targets are welcome.
At a first glance there are potentially many conflicts, but could be dealt with.
I am not familiar with Spreads in terms of scope, but I wonder whether there is a way to design a couple of nuget packages where Spreads.R depends on R.NET and the related FSharp utilities.

@jmp75 jmp75 closed this as completed Aug 31, 2017
@jmp75 jmp75 reopened this Aug 31, 2017
@buybackoff
Copy link

buybackoff commented Aug 31, 2017

The simplest thing for you is just to copy a new empty .csproj file from a new .NET Standard lib and adjust it as needed. This is how I migrated most of my former full-.NET libs. The project file is very simple https://github.com/Spreads/Spreads.R/blob/spreads/R.NET/Spreads.R.csproj

I wonder whether there is a way to design a couple of nuget packages where Spreads.R depends on R.NET and the related FSharp utilities

This issue Spreads#3 explain why I decided to go with a fork. Strong name was enough a reason. Then many dependencies that are much better as a source. Initially I thought (Spreads#2) that I will need access to internals, but later realized that I do not need them. However, this repo looked dead for two years, and the code looked stable enough (or R C API is stable enough) so that a fork where I could do anything I want didn't look like a pain to sync with the upstream.

And please no F#. Even though I love it as a language, I love things being done fast much more... F#-specific APIs is a wrong direction, there should be just a common .NET API that could be easily consumed from F# (chaining.dots.like.in.LINQ is not worse and even |> better |> than |> using |> pipes). And VS F# tooling will probably remain unusable for couple of more years if not forever. So I wanted to remove all unneeded stuff and keep only clean native R interop in .NET Standard and C#.

contributions such as some of the native interop memory efficiencies and framework targets are welcome.

I have many performance utils in Spreads.Core project, it would have been required as a dependency

@tanekim88
Copy link

I have been waiting for R.Net's Asp.net Core support for over a year. Any plan for support?
Thanks in advance!

@erisonliang
Copy link

Compile R.NET to target on .NET Framework 4.6.2 or later will be work. I've tested it with ASP.NET MVC Core 2 and works.

@jhaytaslim
Copy link

Can someone please guide me on how to make the R.Net work with asp dotnet core 2.0, I have tried all possibilities that I understand but none is working

@tim-lukacik
Copy link

I got System.Security.Permissions (4.5.0) from Nuget and am able to run the hello world example just fine. This is in a empty new 2.1 console application.

@zetroot
Copy link

zetroot commented Mar 4, 2019

Is there any working solution? I dont like handling my own build of the lib on the 4.6.2, it seems bad

@Noppey
Copy link

Noppey commented Mar 28, 2019

Is there anyone who can provide a proper update on what the status is of this issue?

@jmp75
Copy link
Collaborator

jmp75 commented Mar 28, 2019

@Nopey @zeroot you can try 1.8.0-alpha1 which has been migrated to target netstandard2.0 and R 3.5.

@Nopey
Copy link

Nopey commented May 15, 2019

Wrong Nopey, @jmp75 ;)
@Noppey

@jmp75
Copy link
Collaborator

jmp75 commented May 15, 2019

R.NET 1.8.1 released, including running on .NET core 2.0.

@jmp75 jmp75 closed this as completed May 15, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests