Harden SQLite provider release behavior

This commit is contained in:
sergeych committed 2026-04-15 23:11:50 +03:00
1 parent f9bbdd56bf
commit 14dc73db3e
4 files changed
+370 -1

No files matched your search

+16
View File
@@ -8,6 +8,22 @@ import lyng.io.db
Importing this module registers the `sqlite:` URL scheme for
`openDatabase(...)`.
Accepted generic URL forms:
- `sqlite::memory:`
- `sqlite:relative/path.db`
- `sqlite:/absolute/path.db`
Provider-specific `openDatabase(..., extraParams)` options:
- `readOnly: Bool`
- `createIfMissing: Bool`
- `foreignKeys: Bool`
- `busyTimeoutMillis: Int`
Open-time URL/config validation failures should surface as
`IllegalArgumentException`.
Runtime SQLite open failures such as opening a missing file with
`createIfMissing = false` should surface as `DatabaseException`.
SQLite provider defaults:
- `Bool` is written as `0` / `1`
- `Decimal` is written as canonical text