SQLite backends for the moondark framework
///|
async test {
@async.with_task_group(group => {
let (db, executor) = @sqlite_database.open_db("app.db")
group.spawn_bg(no_wait=true, () => executor.run())
db.ready()
defer db.close()
let row = db.query_one("SELECT ? + 1 AS n", params=[41])
assert_eq((row.get_name("n") : Int32), 42)
})
}| Package | Core Interface | Public API |
|---|---|---|
| KKKIIO/moondark_sqlite/database | database/driver | open_db, Driver |
| KKKIIO/moondark_sqlite/sessions | sessions.SessionStore | SqliteSessionStore |
| KKKIIO/moondark_sqlite/tasks | tasks.DBTaskBackend, tasks.TaskStore | SqliteTaskBackend |
| KKKIIO/moondark_sqlite/files | files.Catalog, files.FileStore | SqliteCatalog, new_file_store |
| KKKIIO/moondark_sqlite/auth | auth.CredentialStore | SqliteCredentialStore |
CREATE TABLE IF NOT EXISTS sessions (
session_key VARCHAR(64) PRIMARY KEY,
session_data TEXT NOT NULL,
expires_at BIGINT NOT NULL
);let store = @sqlite_sessions.SqliteSessionStore(db)
app.add_middleware(@sessions.middleware(store))