ericsink / SQLitePCL.raw

A Portable Class Library (PCL) for low-level (raw) access to SQLite
Apache License 2.0
512 stars 106 forks source link

Not working on macos since upgrading from v1 to v2 #386

Closed pellet closed 3 years ago

pellet commented 3 years ago

Since upgrading from v1.1.11 to v2.0.2 I'm getting this error now: System.MissingMethodException Method not found: 'Int32 SQLitePCL.raw.sqlite3_create_collation(SQLitePCL.sqlite3, System.String, System.Object, SQLitePCL.delegate_collation)'. at SQLitePCL.pretty.SQLiteDatabaseConnectionBuilder.Build() at SQLitePCL.pretty.SQLite3.OpenInMemory() The target/host is netcoreapp3.0 running on Mac OSX 10.15.7. Any ideas on how to work around this issue?

ericsink commented 3 years ago

Check the release notes for 2.0: https://github.com/ericsink/SQLitePCL.raw/blob/master/v2.md

Make sure you don't have any 1.x packages still involved.

pellet commented 3 years ago

Spot on @ericsink, I went through my target's project.assets.json and tracked down all the SQLitePCLRaw v1 implicit dependencies. Issue was SQLitePCL.pretty still references SQLitePCLRaw v1 but I replaced it with an upgraded fork called SQLitePCL.pretty.netstandard which references SQLitePCLRaw v2, now I no longer get the error. Cheers!