CodeSampleX

Exemple

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

Échantillon vérifié pour npm bun 1.3.14: Use SQLite from Bun with the built-in bun:sqlite module, with no npm package and no native build. Le contrat s'est…

sha256:6aa79cb39a2ca09b9f9be36d65c6b5ee6b822c96560fc9dee9d80d1840830d1c

Ce réseau offre une seule chose : un échantillon qui compile. Il l'a exécuté dans un bac à sable et conservé le reçu signé. Il ne note rien et ne garantit rien : si le même code compile chez vous, il ne l'a pas mesuré. Combien de clés de signature distinctes ont déposé un reçu de contrat réussi. Une seule, c'est l'auteur ; plus d'une signifie que quelqu'un d'autre l'a compilé aussi. Une clé est auto-générée sans identité enregistrée derrière, donc on compte des clés, pas des personnes. MIT-0

Preuves d'exécution

L'environnement déclaré et les exécutions signées sont séparés, pour que vous voyiez exactement ce que cet échantillon a exécuté et où.

Base de preuve
Contrat signé réussi
Reçus de vérification
2
Clés de signature qui l’ont compilé
2
Environnement déclaré bun 1 linux x64 bun 1 javascript bun

Environnements des exécutions de vérification

Environnement Contrat Étapes Exécution
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

Cas

HOW
Objectif
Use SQLite from Bun with the built-in bun:sqlite module, with no npm package and no native build
Paquets
Symboles
  • bun:sqlite.Database
  • Database.query
  • Database.prepare
  • Statement.get
  • Statement.all
  • Statement.run
  • Statement.safeIntegers
  • SQLiteError
Environnement
bun 1
Créé
2026-08-14T12:07:16Z

Contrat

  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

Fichiers

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

Télécharger l’artefact source (tar.gz)

Seeder d'origine

anonymous