|
@@ -9,7 +9,37 @@ and adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
|
|
|
|
## [Unreleased]
|
|
## [Unreleased]
|
|
|
|
|
|
|
|
|
|
+### 🎉 Self-contained: CodeGraph bundles its own runtime — install anywhere, on any Node (or none)
|
|
|
|
|
+
|
|
|
|
|
+**No more `database is locked`. No more native build failures. No more "WASM fallback active."**
|
|
|
|
|
+
|
|
|
|
|
+CodeGraph used to need `better-sqlite3`, a native module compiled against your exact
|
|
|
|
|
+Node version. When that build failed (common on Windows and locked-down machines) it
|
|
|
|
|
+silently dropped to a slow WASM SQLite build with **no WAL** — the root cause of the
|
|
|
|
|
+intermittent `database is locked` errors on concurrent MCP tool calls
|
|
|
|
|
+([#238](https://github.com/colbymchenry/codegraph/issues/238)). That entire class of
|
|
|
|
|
+problem is **gone**: CodeGraph now ships a self-contained Node runtime and uses Node's
|
|
|
|
|
+built-in `node:sqlite` (real SQLite, full WAL + FTS5).
|
|
|
|
|
+
|
|
|
|
|
+- ✅ **Zero native compilation** — nothing to build, ever; nothing to rebuild when Node changes.
|
|
|
|
|
+- ✅ **Runs on any Node version — or with no Node at all.** Install via the standalone installers with no Node present, or keep using `npm`/`npx` on any version (your Node only launches the bundled runtime).
|
|
|
|
|
+- ✅ **`database is locked` fixed at the root** — real WAL means readers never block on a writer.
|
|
|
|
|
+- ⚡ **5–10× faster** than the old WASM fallback for anyone who was stuck on it.
|
|
|
|
|
+
|
|
|
|
|
+```bash
|
|
|
|
|
+# macOS / Linux — no Node required
|
|
|
|
|
+curl -fsSL https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.sh | sh
|
|
|
|
|
+# Windows (PowerShell) — no Node required
|
|
|
|
|
+irm https://raw.githubusercontent.com/colbymchenry/codegraph/main/install.ps1 | iex
|
|
|
|
|
+# or, if you have Node (any version):
|
|
|
|
|
+npm i -g @colbymchenry/codegraph
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
### Added
|
|
### Added
|
|
|
|
|
+- **Standalone installers** — one-line install with no Node.js required:
|
|
|
|
|
+ `curl -fsSL .../install.sh | sh` (macOS/Linux) and `irm .../install.ps1 | iex`
|
|
|
|
|
+ (Windows). They fetch the matching self-contained bundle from GitHub Releases
|
|
|
|
|
+ and put `codegraph` on your PATH.
|
|
|
- **Lua**: CodeGraph now indexes Lua (`.lua`) — functions, methods (table `t.f`
|
|
- **Lua**: CodeGraph now indexes Lua (`.lua`) — functions, methods (table `t.f`
|
|
|
and `t:m` definitions become methods with a `t::f` receiver-qualified name),
|
|
and `t:m` definitions become methods with a `t::f` receiver-qualified name),
|
|
|
local variables, `require(...)` imports, and the call edges between them.
|
|
local variables, `require(...)` imports, and the call edges between them.
|
|
@@ -21,6 +51,23 @@ and adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
signatures, generics, and Roblox instance-path `require(script.Parent.X)`
|
|
signatures, generics, and Roblox instance-path `require(script.Parent.X)`
|
|
|
imports.
|
|
imports.
|
|
|
|
|
|
|
|
|
|
+### Changed
|
|
|
|
|
+- **SQLite backend is now Node's built-in `node:sqlite`** (real SQLite, WAL +
|
|
|
|
|
+ FTS5), shipped inside a bundled Node runtime. This fixes the concurrent-read
|
|
|
|
|
+ `database is locked` errors ([#238](https://github.com/colbymchenry/codegraph/issues/238))
|
|
|
|
|
+ at the root and removes the native build step entirely.
|
|
|
|
|
+- **`npm i -g` / `npx` now install a self-contained bundle.** The main package is
|
|
|
|
|
+ a tiny shim; the runtime ships as per-platform `optionalDependencies`, so the
|
|
|
|
|
+ install works on any Node version (your Node only launches the bundle).
|
|
|
|
|
+- **`codegraph status`** now reports the effective journal mode (`wal` vs not),
|
|
|
|
|
+ so a `database is locked` report is triageable at a glance.
|
|
|
|
|
+
|
|
|
|
|
+### Removed
|
|
|
|
|
+- **`better-sqlite3`** (optional native dependency) and **`node-sqlite3-wasm`**
|
|
|
|
|
+ (WASM fallback) — along with the native-build banner, the WASM fallback path,
|
|
|
|
|
+ and the no-WAL lock retries they required. The dependency tree now has zero
|
|
|
|
|
+ native addons.
|
|
|
|
|
+
|
|
|
### Fixed
|
|
### Fixed
|
|
|
- **Installer**: re-running `codegraph install` now removes the broken
|
|
- **Installer**: re-running `codegraph install` now removes the broken
|
|
|
auto-sync hooks that pre-0.8 versions wrote to Claude Code's
|
|
auto-sync hooks that pre-0.8 versions wrote to Claude Code's
|