fsprojects / Rezoom.SQL

Statically typechecks a common SQL dialect and translates it to various RDBMS backends
MIT License
670 stars 26 forks source link

issue using nuget package from FSI #44

Open smoothdeveloper opened 5 years ago

smoothdeveloper commented 5 years ago

Thanks for this awesome library!

I'm having some trouble using it from FSI, or even in a project with recent tooling (vs2019, but I assume same issue happens in vs2017):

tp vs2019

it either throws internal error in Config type initializer, or complains about fparsec-cs not being loaded (not sure if it was a binding redirect issue, but should work from fsi at least)

Interestingly, when I'm referencing the build from my PR rather than published nuget, it fixes the issue.

I've not figured if this is an issue in paket generated script, but I'd first like to check if using new sdk to target .net 45 binaries for the TP assemblies is what fixes the issue in my case.

Have you encountered the errors above?

edit: #43

rkosafo commented 5 years ago

I'm unable to reproduce the error with a normal project in VS2017. Not using paket though. Which versions of the libraries are you using?

I tried the following

There are problems using the most recent version of the library.

For the paket version, how did you set it up so I try reproducing this?

rkosafo commented 5 years ago

image

Above are the libraries installed in my test .net project. Please do confirm yours.

smoothdeveloper commented 5 years ago

paket.dependencies

source https://www.nuget.org/api/v2
storage: none
redirects: on
generate_load_scripts: on

framework: >= net45 , >= netstandard2.0

nuget Auto9G
nuget FSharp.Core redirects: force
nuget LicenseToCIL = 0.3.0
nuget Rezoom.SQL.Provider.SQLite
nuget Rezoom.SQL.Provider.TSQL
nuget Rezoom.SQL.Provider.Postgres

paket.lock (relevant snippets):

    FParsec (1.0.3)
    FParsec-Pipes (1.1.1)
    FSharp.Core (4.6.2) - redirects: force
    LicenseToCIL (0.3)
    Npgsql (4.0.5)
    Rezoom (1.0)
    Rezoom.SQL.Provider (0.7.2.40976)
    Rezoom.SQL.Provider.Postgres (0.7)
    Rezoom.SQL.Provider.SQLite (0.7)
    Rezoom.SQL.Provider.TSQL (0.7)

after paket install it will generate the files under .paket/load/* that makes it easy to pull all the dependencies from scripting environment.

I'm anyways able to work around, and expect things to get sorted out with recent dotnet SDK and TP SDK.