fslaborg / Deedle

Easy to use .NET library for data and time series manipulation and for scientific programming
http://fslab.org/Deedle/
BSD 2-Clause "Simplified" License
924 stars 196 forks source link

Prepare releasing of Deedle.RPlugin 2.5.0 #541

Closed zyzhu closed 2 years ago

zyzhu commented 2 years ago
  1. Referenced RProvider 2.0.2
  2. Removed core target from build script as RProvider works again!
zyzhu commented 2 years ago

@AndrewIOM, I've changed Ubuntu R environment script as your suggested. It passed the stage of R package installation. But it failed in the build stage of RPlugin.

error FS3053 : The type provider 'RProvider.RProvider' reported an error : The type provider constructor has thrown an exception: Permission denied [/home/runner/work/Deedle/Deedle/src/Deedle.RProvider.Plugin/Deedle.RProvider.Plugin.fsproj]

Could you take a look to see what could have gone wrong? Your pull request on 2.0.1-beta2 passed on Ubuntu. Nothing substantial should have been changed here except referencing 2.0.2 instead.

zyzhu commented 2 years ago

I've tested different versions. Ubuntu passed build on 2.0.1-beta2 but started to fail after 2.0.1-beta3.

AndrewIOM commented 2 years ago

Thanks for checking the different versions. I think I know where the 'Permission denied' error is coming from - a change made 6 days ago for linux and mac to fix the file name within an existing chmod command in RProvider:

https://github.com/fslaborg/RProvider/commit/49a67970832da73df8005dd43009d479d3be7484#diff-23398f45742dfd48ab50d7bd04b4cb22296fc605daeb7831f8de2a806d28a006

Not sure why it shows here but not on the RProvider CI. I will look into this over the next day!

AndrewIOM commented 2 years ago

A quick update. I've found a workaround but not the cause of the issue. I was not able to replicate this error locally on mac or ubuntu, but only by manually changing the owner of the server executable in the RProvider nuget package to root owner, which results in the Permission Denied error. My own library bristlecone had the same issue on Github Actions on update to RProvider 2.0.2 - I've now got this running Github Actions fine on ubuntu, macos, and windows.

I found that adding a tiny fsi script before the .NET install step removes the 'Permission Denied' error and allows the CI to work on ubuntu / macos runners. If it is added after the .NET install step, the error still exists. You can see the PR to my library at AndrewIOM/bristlecone#8 for this workaround. This error appears in standard out when running the script, which may explain the cause (the file does exist though):

chmod: '/Users/runner/.nuget/packages/rprovider/2.0.2/lib/net5.0/server/osx-x64/RProvider.Server': No such file or directory

I've opened an issue in RProvider: fslaborg/RProvider#247

zyzhu commented 2 years ago

@AndrewIOM, This seems to be a CI issue as your test on local Linux environment works ok. I'll merge this and release Deedle.RPlugin 2.5.0 first and fix CI in the future.

zyzhu commented 2 years ago

BTW, @AndrewIOM, are you interested in becoming a co-maintainer of Deedle, especially focusing on the experience of R interop? I bet you have much more experience with that. This will help you iterate faster. My bandwidth is quite limited these days.

AndrewIOM commented 2 years ago

Hi @zyzhu thanks for the offer. I am happy to be a co-maintainer on Deedle with a primary focus on the R integration but can also try and contribute where needed elsewhere depending on time constraints.

zyzhu commented 2 years ago

That's great! I have added you as maintainer of this repo and Nuget packages. Welcome aboard!