Port bug fixes and stability improvements from PR #15

- Fix Float32Array embedder bug: was creating zero-filled array instead
  of copying data from TypedArray-like objects
- Fix VSS search query: use subquery pattern so LIMIT applies before JOIN
- Pin tree-sitter versions: remove caret ranges for ABI stability, add
  overrides to lock tree-sitter core at 0.22.4
- Lazy grammar loading: load native bindings on first use per language
  instead of all at startup, so one missing grammar doesn't affect others
- Remove stale src/extraction/queries copy from copy-assets script

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Colby McHenry
2026-02-09 23:40:37 -06:00
co-authored by Claude Opus 4.6
parent 082513b566
commit e07250ed60
4 changed files with 159 additions and 99 deletions
+19 -16
View File
@@ -15,7 +15,7 @@
"scripts": {
"build": "tsc && npm run copy-assets",
"postinstall": "node scripts/postinstall.js",
"copy-assets": "node -e \"const fs=require('fs'),p=require('path');function cpR(s,d){if(!fs.existsSync(s))return;fs.mkdirSync(d,{recursive:true});for(const f of fs.readdirSync(s)){const sp=p.join(s,f),dp=p.join(d,f);fs.statSync(sp).isDirectory()?cpR(sp,dp):fs.copyFileSync(sp,dp)}}cpR('src/extraction/queries','dist/extraction/queries');fs.mkdirSync('dist/db',{recursive:true});fs.copyFileSync('src/db/schema.sql','dist/db/schema.sql')\"",
"copy-assets": "node -e \"const fs=require('fs');fs.mkdirSync('dist/db',{recursive:true});fs.copyFileSync('src/db/schema.sql','dist/db/schema.sql')\"",
"dev": "tsc --watch",
"cli": "npm run build && node dist/bin/codegraph.js",
"test": "vitest run",
@@ -38,22 +38,22 @@
"commander": "^14.0.2",
"figlet": "^1.8.0",
"sqlite-vss": "^0.1.2",
"tree-sitter": "^0.22.4",
"tree-sitter-c": "^0.23.4",
"tree-sitter-c-sharp": "^0.23.1",
"tree-sitter-cpp": "^0.23.4",
"@sengac/tree-sitter-dart": "^1.1.6",
"tree-sitter-go": "^0.23.4",
"tree-sitter-java": "^0.23.5",
"tree-sitter-javascript": "^0.23.1",
"tree-sitter-kotlin": "^0.3.8",
"tree-sitter": "0.22.4",
"tree-sitter-c": "0.23.4",
"tree-sitter-c-sharp": "0.23.1",
"tree-sitter-cpp": "0.23.4",
"@sengac/tree-sitter-dart": "1.1.6",
"tree-sitter-go": "0.23.4",
"tree-sitter-java": "0.23.5",
"tree-sitter-javascript": "0.23.1",
"tree-sitter-kotlin": "0.3.8",
"tree-sitter-liquid": "github:hankthetank27/tree-sitter-liquid",
"tree-sitter-php": "^0.23.11",
"tree-sitter-python": "^0.23.6",
"tree-sitter-ruby": "^0.23.1",
"tree-sitter-rust": "^0.23.2",
"tree-sitter-swift": "^0.7.1",
"tree-sitter-typescript": "^0.23.2"
"tree-sitter-php": "0.23.11",
"tree-sitter-python": "0.23.6",
"tree-sitter-ruby": "0.23.1",
"tree-sitter-rust": "0.23.2",
"tree-sitter-swift": "0.7.1",
"tree-sitter-typescript": "0.23.2"
},
"devDependencies": {
"@types/better-sqlite3": "^7.6.0",
@@ -64,5 +64,8 @@
},
"engines": {
"node": ">=18.0.0"
},
"overrides": {
"tree-sitter": "0.22.4"
}
}