Commit Graph

18 Commits

Author SHA1 Message Date
Pekka Enberg
c34f9de4ea serverless: Add URL validation on Connection constructor 2025-07-29 16:09:49 +03:00
Pekka Enberg
f48b22a52f Merge 'Javascript API improvements' from Pekka Enberg
Various improvements:
- Make promise API the default for `@tursodatabase/turso`
- Add a compatibility test suite for database, serverless, and better-
sqlite3
- Improve serverless driver a bit to be more compatible.

Closes #2322
2025-07-29 15:55:53 +03:00
Pekka Enberg
ee58a0bf32 serverless: Implement Connection.pragma() 2025-07-29 15:00:23 +03:00
Pekka Enberg
4841bfd78a serverless: Fix Connection.exec()
We need to use sequence requests to handle multiple SQL statements for exec():

```
  DatabaseError {
    message: 'SQL string contains more than one statement',
  }
```
2025-07-29 14:56:14 +03:00
Pekka Enberg
43fd44aa1a serverless: Rename execute() to exec()
Let's follow the main JavaScript API convention. Note that libSQL compatibility stays the same.
2025-07-29 14:39:16 +03:00
Nikita Sivukhin
4d6fe905b8 fix clippy 2025-07-29 14:42:10 +04:00
Nikita Sivukhin
4b893d1631 small fixes 2025-07-29 14:42:09 +04:00
Nikita Sivukhin
4dc217c41a fix clippy 2025-07-29 14:41:35 +04:00
Nikita Sivukhin
134d5e8e2e add simple readme 2025-07-29 14:41:35 +04:00
Nikita Sivukhin
58134052e6 cleanup cargo.toml 2025-07-29 14:41:35 +04:00
Nikita Sivukhin
ea2f9faa13 fix build 2025-07-29 14:41:10 +04:00
Nikita Sivukhin
40ded34ef6 add internal DatabaseTape types 2025-07-29 14:40:14 +04:00
Nikita Sivukhin
b27bc05c7d introduce turso-sync package with simple implementation of DatabaseTape 2025-07-29 14:40:14 +04:00
Pekka Enberg
308f20a5cf turso-serverless: Fix wrong error import
```
  Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/Users/penberg/src/tursodatabase/turso/packages/turso-serverless/dist/error' imported from /Users/penberg/src/tursodatabase/turso/packages/turso-serverless/dist/protocol.js

  Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/Users/penberg/src/tursodatabase/turso/packages/turso-serverless/dist/error' imported from /Users/penberg/src/tursodatabase/turso/packages/turso-serverless/dist/protocol.js
      at finalizeResolution (node:internal/modules/esm/resolve:275:11)
      at moduleResolve (node:internal/modules/esm/resolve:860:10)
      at defaultResolve (node:internal/modules/esm/resolve:984:11)
      at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:780:12)
      at #cachedDefaultResolve (node:internal/modules/esm/loader:704:25)
      at ModuleLoader.resolve (node:internal/modules/esm/loader:687:38)
      at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:305:38)
      at ModuleJob._link (node:internal/modules/esm/module_job:137:49)

  ✘ integration-tests/serverless.test.mjs exited with a non-zero exit code: 1
```
2025-07-25 17:11:13 +03:00
Pekka Enberg
ced6fba624 serverless: Add DatabasError type
Add an explicit error type so application can actually do error handling...
2025-07-24 16:10:18 +03:00
Pekka Enberg
2e0161a1d5 serverless: 0.1.1 2025-07-24 14:29:12 +03:00
Pekka Enberg
099dba4ba9 serverless: Add Statement.run() method 2025-07-24 13:50:09 +03:00
Pekka Enberg
7765bafb13 Add @tursodatabase/serverless package
This package is for serverless access to the Turso Cloud using SQL over
HTTP protocol. The purpose of this package is to provide the same
interface as `@tursodatabase/turso`, but for serverless environments
that cannot host the database engine.

The package also provides a `@libsql/client` compatibility layer in the
`@tursodatabase/serverless/compat` module for drop-in replacement for
existing clients.
2025-07-21 22:03:43 +03:00