CodeSampleX

サンプル

bun 1.3.14: Use SQLite from Bun with the built-in bun:sqlite module, with no npm package and no native build

検証済みサンプル — npm bun 1.3.14: Use SQLite from Bun with the built-in bun:sqlite module, with no npm package and no native build. bun 1 · linux alpine/x64 …

sha256:6aa79cb39a2ca09b9f9be36d65c6b5ee6b822c96560fc9dee9d80d1840830d1c

このネットワークが提供するのは一つだけです。ビルドされるサンプル。サンドボックスで実行し、署名済みの受領証を保管します。等級はつけず、何も保証しません — 同じコードがあなたの環境でビルドされるかは測定していません。 合格した契約受領証を提出した異なる署名鍵の数です。1 なら作者だけ、2 以上なら他の誰かもビルドしています。鍵は自己生成で背後に登録された身元がないため、数えているのは人ではなく鍵です。 MIT-0

実行証拠

宣言された環境と署名済みの実行を分けてあります。このサンプルが何をどこで実行したかをそのまま確認できます。

証拠の基準
署名済みコントラクト合格
検証レシート
2
ビルドした署名鍵
2
宣言された環境 bun 1 linux x64 bun 1 javascript bun

検証実行環境

環境 コントラクト ステージ 実行日
bun 1 · linux alpine/x64 · docker ed25519:a2ec939a4c60e243 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · npm@1
2026-08-14
bun 1 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · npm@1
2026-08-18

ケース

HOW
ゴール
Use SQLite from Bun with the built-in bun:sqlite module, with no npm package and no native build
パッケージ
シンボル
  • bun:sqlite.Database
  • Database.query
  • Database.prepare
  • Statement.get
  • Statement.all
  • Statement.run
  • Statement.safeIntegers
  • SQLiteError
環境
bun 1
作成日
2026-08-14T12:07:16Z

コントラクト

  1. open ':memory:' and assert each connection is a private database
  2. assert new Database(path, {}) raises SQLITE_MISUSE while new Database(path) works, because an options object resets the open flags, and that only a true access mode or a strict/safeIntegers key restores one, so { create: false } raises the same way
  3. assert .get() returns a plain row object, and null rather than undefined when nothing matches
  4. assert .all() returns an array, and an empty array when nothing matches
  5. assert .run() returns changes and lastInsertRowid and never rows, and that lastInsertRowid is the connection's last insert rather than this statement's
  6. assert ? binding is counted, so a wrong number of values raises
  7. assert $name binding needs the sigil on the key by default, where a bare key silently binds NULL
  8. assert strict: true inverts that, binding bare keys and raising Missing parameter for the $ key
  9. assert binding is real escaping by storing a value that closes a quote and drops the table
  10. assert db.query() returns one cached statement per SQL string while db.prepare() returns a new one, so safeIntegers set on a query() statement leaks to later callers
  11. assert an integer past Number.MAX_SAFE_INTEGER is stored losslessly but read back rounded, and is exact only with safeIntegers, as a BigInt
  12. assert safeIntegers as a constructor option makes every read on the connection exact, including lastInsertRowid, while changes stays a number, and that there is no Database-level safeIntegers toggle
  13. assert a unique constraint raises SQLiteError carrying SQLite's extended result code
  14. assert bun:sqlite is a builtin of the Bun runtime rather than an npm package: the Bun global is present, node:sqlite is not, and the project resolves no dependencies

ファイル

  • csx.json
  • package.json
  • src/ledger.mjs
  • test/contract.mjs

ソースアーティファクトをダウンロード (tar.gz)

オリジンシーダー

anonymous