mirror of
https://github.com/tursodatabase/libsql.git
synced 2025-06-05 15:11:53 +00:00
.cargo
.github
bindings
bottomless
bottomless-cli
docker-compose
docs
libsql
libsql-ffi
libsql-hrana
libsql-replication
libsql-server
libsql-shell
libsql-sqlite3
art
autoconf
contrib
crates
doc
ext
async
crr
expert
fts3
fts5
icu
jni
libsql-wasi
lsm1
misc
rbu
recover
repair
rtree
session
udf
userauth
vwal
vwal.c
wasi
wasm
README.md
mptest
src
test
tool
vsixtest
.gitignore
Dockerfile-wasm-udf
LIBSQL_VERSION
LICENSE.md
Makefile.in
Makefile.linux-gcc
Makefile.msc
README-SQLite.md
VERSION
aclocal.m4
config.guess
config.sub
configure
configure.ac
install-sh
libsql.pc.in
ltmain.sh
magic.txt
main.mk
manifest
manifest.uuid
spec.template
sqlite.pc.in
sqlite3.1
sqlite3.pc.in
sqlite_cfg.h.in
libsql-sys
tools
vendored
xtask
.dockerignore
.env
.gitignore
.gitmodules
CODE_OF_CONDUCT.md
Cargo.lock
Cargo.toml
Dockerfile
Dockerfile.dev
LICENSE.md
README-libsql.md
README.md
docker-entrypoint.sh
fly.toml
rust-toolchain.toml
Refactor of the virtual wal API. Drop global wals in favor of passing the wal implementation as an argument to libsql_open. The WAL interface is split in two sets of virtual methods: - `create_wal` is passed when opening a sqlite connection. It's role is to instantiate a wal. - `libql_wal` is the wal itself, created by the `create_wal`. The sqlite3_wal and `sqlite3_create_wal` implementation are completely decoupled from the wal implementation. They are the default implementation when using the traditional open methods, and sqlite3_create_wal is exposed as a global variable, and can be composed with other wal implementations.