graphitesql 0.0.14

A pure, safe, no_std Rust re-implementation of SQLite, compatible with the SQLite 3 file format.
Documentation
[package]
name = "graphitesql"
version = "0.0.14"
edition = "2021"
rust-version = "1.88"
description = "A pure, safe, no_std Rust re-implementation of SQLite, compatible with the SQLite 3 file format."
# Public domain, with the SQLite "blessing" in place of a legal notice.
# "blessing" is the SPDX identifier for the SQLite Blessing. See LICENSE.
license = "blessing"
repository = "https://github.com/KarpelesLab/graphitesql"
readme = "README.md"
keywords = ["sqlite", "database", "sql", "no_std", "wasm"]
categories = ["database-implementations", "no-std", "wasm"]
# Keep the published crate small: the reference/ tree is dev-only and git-ignored.
exclude = ["/reference", "/.github"]

[[bin]]
name = "graphitesql"
path = "src/bin/graphitesql.rs"
required-features = ["std"]

[features]
# `std` is on by default and brings the std-backed VFS (real files) plus
# std::error::Error impls. Turn it off for no_std targets (wasm, embedded);
# graphitesql then runs entirely in-memory unless you supply your own Vfs.
default = ["std", "fts5"]
std = []
# `fts5` registers the built-in FTS5 full-text-search virtual table (the
# `MATCH` query language, `bm25()`/`rank` ranking, and `highlight()`). On by
# default; disable it to drop full-text search and shrink the build.
fts5 = []
# `unicode` switches the case-folding functions (`upper()` / `lower()`) from
# stock sqlite3's ASCII-only fold to full Unicode case-folding (`café` → `CAFÉ`),
# like a sqlite3 built with the ICU extension. Off by default so the default
# build stays behavior-identical to stock sqlite3; turn it on for Unicode text.
unicode = []

[dependencies]
# Intentionally none. graphitesql is pure Rust over `core` + `alloc` only.

[profile.release]
opt-level = 3
lto = true
panic = "abort"

[lints.rust]
# The whole point of the project: no `unsafe` anywhere in the crate.
unsafe_code = "forbid"
missing_docs = "warn"