Bug: SQLitePCLRaw stubs sqlite3_load_extension on .NET Framework, so vec0 cannot load
Ya se ha fusionado un pull request relacionado.
- #63 de @adamsitnik — fusionado
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
Línea de trabajo
Start by checking the SQLitePCLRaw provider assets for net471 and netstandard2.0 and comparing them with net8.0; the issue identifies the stubbed sqlite3_load_extension behavior. Then decide whether to pursue the upstream feature-flag change, add a provider fallback, or drop net462 support. Done means .NET Framework targets can load vec0, or those targets are intentionally no longer supported; the issue also notes a separate win-x86 conformance-test limitation.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Currently every SQLitePCLRaw 2.1.x and 3.0.x release compiles sqlite3_load_extension to a stub in the provider assets used before .NET 5: the net471 asset used on .NET Framework on Windows, and the netstandard2.0 asset used elsewhere. The stub stores a null error message and returns SQLITE_ERROR (1). Loading vec0 through Microsoft.Data.Sqlite or SQLitePCLRaw on .NET Framework therefore fails with SQLite Error 1: '', no matter which package versions are in use.
I noticed this as it blocks running the net472 conformance tests but it must also break the shipped package: the net462 and netstandard2.0 targets cannot load vec0 at all. net8.0 and net10.0 resolve the net8.0 SQLitePCLRaw asset, which does not have the stub and so works correctly.
Options
- File an upstream issue against ericsink/SQLitePCL.raw asking for FEATURE_LOADEXTENSION to be enabled for the prenet5 variants. The maintainer's own comment in https://github.com/ericsink/SQLitePCL.raw/issues/523 says there is no good reason for the flag to be off.
- Decide the package story for .NET Framework: either ship a fallback in the provider that calls
sqlite3_load_extensionthrough a local[DllImport("e_sqlite3")]after enabling extension loading through SQLitePCLRaw, or drop net462 fromTargetFrameworksif .NET Framework support is not a commitment.
Side issue: net472 SqliteVec conformance tests cannot pass regardless as the tests build with win-x86, and the sqlite-vec package ships no win-x86 build.
- Lenguaje dominante
- C#
- Estrellas
- 8
- Forks
- 8
- Merge medio
- 2 d 14 h
- PR fusionados (30 d)
- 5
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de CommunityToolkit/AI
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
CommunityToolkit/AI#19 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
CommunityToolkit/AI#61 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
CommunityToolkit/AI#59 ·
-
Report all Cosmos DB emulator issuesQuizá libre de nuevo @adamsitnik la tomó hace 95 días y no hay ningún pull request abierto. Abierto
CommunityToolkit/AI#23 · 1 asignado ·
-
Make Azure SQL tests conditionalAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
CommunityToolkit/AI#20 ·
Todos los issues de CommunityToolkit/AI
Issues similares
-
再現済み 要トリアージ 誤判定
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
yksr-melt/Meltype#421 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
Facepunch/sbox-public#12063 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
facioquo/stock-indicators-dotnet#2316 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
lostindark/DriverStoreExplorer#477 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
eriknihlen/OpenAC#219 ·
Los mantenedores suelen responder en 1 día