dotnet / dotnet/efcore

Microsoft.Data.Sqlite 10.0.11 breaks .NET Framework builds via SQLitePCLRaw.lib.e_sqlite3 2.1.12 missing win-arm native

Open
#38,803 4 comments 0 reactions 1 assignee Claimed by @AndriySvyryd View on GitHub
area-adonet-sqlite
Dominant language
C#
Stars
14.8k
Forks
3.4k
PR merge metrics
PR metrics pending

Description

## Description

`Microsoft.Data.Sqlite 10.0.11` pulls `SQLitePCLRaw.bundle_e_sqlite3 2.1.12`, which depends on `SQLitePCLRaw.lib.e_sqlite3 2.1.12`. That package has a bug where the `buildTransitive\net461\SQLitePCLRaw.lib.e_sqlite3.targets` file references `runtimes\win-arm\native\e_sqlite3.dll`, but the `win-arm` native binary was removed from the package contents in that version.

This breaks any multi-target project (e.g. `net472;net10.0`) that references `Microsoft.Data.Sqlite 10.0.11` during the .NET Framework build.

**Upstream issue:** https://github.com/ericsink/SQLitePCL.raw/issues/678

## Error

```
Could not copy the file "C:\Users\...\.nuget\packages\sqlitepclraw.lib.e_sqlite3\2.1.12\runtimes\win-arm\native\e_sqlite3.dll" because it was not found.
```

## Workaround

Pin `Microsoft.Data.Sqlite` to version `10.0.10`, which pulls `SQLitePCLRaw.lib.e_sqlite3 2.1.11` (where the file exists).

## Ask

Once the upstream fix is released (likely as `SQLitePCLRaw.lib.e_sqlite3 2.1.13`), please update `Microsoft.Data.Sqlite` to reference the corrected version in a servicing patch.

## Environment

- .NET SDK: 10.0
- Project target frameworks: `net472;net10.0`
- OS: Windows x64
- Microsoft.Data.Sqlite: 10.0.11 (broken), 10.0.10 (works)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.