PostgreSQL for Bjolang: bjosql over Npgsql, for bjoroutines

Every operation suspends its fiber while it waits for the server, and
the ambient cancellation token cancels the query. A Db is a pool; a
transaction holds one connection and hands its function a Db bound to
it, and a nested one is a savepoint. Each SqlValue is a typed parameter,
and a value is read back by the PostgreSQL type of its column. The
server's errors are DbError with its SQLSTATE, and a lost connection is
DbError 08000.

🤖 Generated with [ECA](https://eca.dev)

Co-Authored-By: eca-agent <git@eca.dev>
This commit is contained in:
Linus Björnstam 2026-10-12 19:20:19 +02:00
commit b7e9c8076f
8 changed files with 1391 additions and 0 deletions

29
packages.lock.json Normal file
View file

@ -0,0 +1,29 @@
{
"version": 1,
"dependencies": {
"net10.0": {
"Npgsql": {
"type": "Direct",
"requested": "[10.0.0, )",
"resolved": "10.0.0",
"contentHash": "xZAYhPOU2rUIFpV48xsqhCx9vXs6Y+0jX2LCoSEfDFYMw9jtAOUk3iQsCnDLrFIv9NT3JGMihn7nnuZsPKqJmA==",
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "10.0.0"
}
},
"Microsoft.Extensions.DependencyInjection.Abstractions": {
"type": "Transitive",
"resolved": "10.0.0",
"contentHash": "L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA=="
},
"Microsoft.Extensions.Logging.Abstractions": {
"type": "Transitive",
"resolved": "10.0.0",
"contentHash": "FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==",
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0"
}
}
}
}
}