@colbymchenry/codegraph 0.5.1 → 0.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/codegraph.js +66 -34
- package/dist/bin/codegraph.js.map +1 -1
- package/dist/db/index.d.ts +3 -2
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +6 -7
- package/dist/db/index.js.map +1 -1
- package/dist/db/migrations.d.ts +7 -7
- package/dist/db/migrations.d.ts.map +1 -1
- package/dist/db/migrations.js.map +1 -1
- package/dist/db/queries.d.ts +7 -2
- package/dist/db/queries.d.ts.map +1 -1
- package/dist/db/queries.js +22 -0
- package/dist/db/queries.js.map +1 -1
- package/dist/db/sqlite-adapter.d.ts +33 -0
- package/dist/db/sqlite-adapter.d.ts.map +1 -0
- package/dist/db/sqlite-adapter.js +197 -0
- package/dist/db/sqlite-adapter.js.map +1 -0
- package/dist/extraction/grammars.d.ts +15 -4
- package/dist/extraction/grammars.d.ts.map +1 -1
- package/dist/extraction/grammars.js +64 -110
- package/dist/extraction/grammars.js.map +1 -1
- package/dist/extraction/index.d.ts +11 -4
- package/dist/extraction/index.d.ts.map +1 -1
- package/dist/extraction/index.js +213 -66
- package/dist/extraction/index.js.map +1 -1
- package/dist/extraction/tree-sitter.d.ts.map +1 -1
- package/dist/extraction/tree-sitter.js +10 -3
- package/dist/extraction/tree-sitter.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -4
- package/dist/index.js.map +1 -1
- package/dist/installer/banner.d.ts +1 -1
- package/dist/installer/banner.d.ts.map +1 -1
- package/dist/installer/banner.js +3 -2
- package/dist/installer/banner.js.map +1 -1
- package/dist/installer/config-writer.d.ts +1 -0
- package/dist/installer/config-writer.d.ts.map +1 -1
- package/dist/installer/config-writer.js +14 -4
- package/dist/installer/config-writer.js.map +1 -1
- package/dist/installer/index.d.ts.map +1 -1
- package/dist/installer/index.js +57 -9
- package/dist/installer/index.js.map +1 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +4 -0
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/tools.d.ts +0 -4
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +5 -7
- package/dist/mcp/tools.js.map +1 -1
- package/dist/resolution/import-resolver.js +1 -1
- package/dist/resolution/import-resolver.js.map +1 -1
- package/dist/vectors/manager.d.ts +3 -3
- package/dist/vectors/manager.d.ts.map +1 -1
- package/dist/vectors/manager.js.map +1 -1
- package/dist/vectors/search.d.ts +3 -3
- package/dist/vectors/search.d.ts.map +1 -1
- package/dist/vectors/search.js +1 -0
- package/dist/vectors/search.js.map +1 -1
- package/package.json +6 -21
- package/scripts/postinstall.js +0 -3
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Grammar Loading and Caching
|
|
4
4
|
*
|
|
5
|
-
* Uses
|
|
6
|
-
*
|
|
5
|
+
* Uses web-tree-sitter (WASM) for universal cross-platform support.
|
|
6
|
+
* All grammars are pre-loaded asynchronously via initGrammars(), then
|
|
7
|
+
* getParser() returns synchronously from cache.
|
|
7
8
|
*/
|
|
8
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
|
-
};
|
|
11
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
10
|
exports.EXTENSION_MAP = void 0;
|
|
11
|
+
exports.initGrammars = initGrammars;
|
|
12
|
+
exports.isGrammarsInitialized = isGrammarsInitialized;
|
|
13
13
|
exports.getParser = getParser;
|
|
14
14
|
exports.detectLanguage = detectLanguage;
|
|
15
15
|
exports.isLanguageSupported = isLanguageSupported;
|
|
@@ -17,78 +17,28 @@ exports.getSupportedLanguages = getSupportedLanguages;
|
|
|
17
17
|
exports.clearParserCache = clearParserCache;
|
|
18
18
|
exports.getUnavailableGrammarErrors = getUnavailableGrammarErrors;
|
|
19
19
|
exports.getLanguageDisplayName = getLanguageDisplayName;
|
|
20
|
-
const
|
|
20
|
+
const web_tree_sitter_1 = require("web-tree-sitter");
|
|
21
21
|
/**
|
|
22
|
-
*
|
|
23
|
-
*
|
|
22
|
+
* WASM filename map — maps each language to its .wasm grammar file
|
|
23
|
+
* in the tree-sitter-wasms package.
|
|
24
24
|
*/
|
|
25
|
-
const
|
|
26
|
-
typescript:
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
python: () => {
|
|
43
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
44
|
-
return require('tree-sitter-python');
|
|
45
|
-
},
|
|
46
|
-
go: () => {
|
|
47
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
48
|
-
return require('tree-sitter-go');
|
|
49
|
-
},
|
|
50
|
-
rust: () => {
|
|
51
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
52
|
-
return require('tree-sitter-rust');
|
|
53
|
-
},
|
|
54
|
-
java: () => {
|
|
55
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
56
|
-
return require('tree-sitter-java');
|
|
57
|
-
},
|
|
58
|
-
c: () => {
|
|
59
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
60
|
-
return require('tree-sitter-c');
|
|
61
|
-
},
|
|
62
|
-
cpp: () => {
|
|
63
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
64
|
-
return require('tree-sitter-cpp');
|
|
65
|
-
},
|
|
66
|
-
csharp: () => {
|
|
67
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
68
|
-
return require('tree-sitter-c-sharp');
|
|
69
|
-
},
|
|
70
|
-
php: () => {
|
|
71
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
72
|
-
return require('tree-sitter-php').php;
|
|
73
|
-
},
|
|
74
|
-
ruby: () => {
|
|
75
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
76
|
-
return require('tree-sitter-ruby');
|
|
77
|
-
},
|
|
78
|
-
swift: () => {
|
|
79
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
80
|
-
return require('tree-sitter-swift');
|
|
81
|
-
},
|
|
82
|
-
kotlin: () => {
|
|
83
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
84
|
-
return require('tree-sitter-kotlin');
|
|
85
|
-
},
|
|
86
|
-
dart: () => {
|
|
87
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
88
|
-
return require('@sengac/tree-sitter-dart');
|
|
89
|
-
},
|
|
90
|
-
// Note: tree-sitter-liquid has ABI compatibility issues with tree-sitter 0.22+
|
|
91
|
-
// Liquid extraction is handled separately via regex in tree-sitter.ts
|
|
25
|
+
const WASM_GRAMMAR_FILES = {
|
|
26
|
+
typescript: 'tree-sitter-typescript.wasm',
|
|
27
|
+
tsx: 'tree-sitter-tsx.wasm',
|
|
28
|
+
javascript: 'tree-sitter-javascript.wasm',
|
|
29
|
+
jsx: 'tree-sitter-javascript.wasm',
|
|
30
|
+
python: 'tree-sitter-python.wasm',
|
|
31
|
+
go: 'tree-sitter-go.wasm',
|
|
32
|
+
rust: 'tree-sitter-rust.wasm',
|
|
33
|
+
java: 'tree-sitter-java.wasm',
|
|
34
|
+
c: 'tree-sitter-c.wasm',
|
|
35
|
+
cpp: 'tree-sitter-cpp.wasm',
|
|
36
|
+
csharp: 'tree-sitter-c_sharp.wasm',
|
|
37
|
+
php: 'tree-sitter-php.wasm',
|
|
38
|
+
ruby: 'tree-sitter-ruby.wasm',
|
|
39
|
+
swift: 'tree-sitter-swift.wasm',
|
|
40
|
+
kotlin: 'tree-sitter-kotlin.wasm',
|
|
41
|
+
dart: 'tree-sitter-dart.wasm',
|
|
92
42
|
};
|
|
93
43
|
/**
|
|
94
44
|
* File extension to Language mapping
|
|
@@ -127,50 +77,53 @@ exports.EXTENSION_MAP = {
|
|
|
127
77
|
* Caches for loaded grammars and parsers
|
|
128
78
|
*/
|
|
129
79
|
const parserCache = new Map();
|
|
130
|
-
const
|
|
80
|
+
const languageCache = new Map();
|
|
131
81
|
const unavailableGrammarErrors = new Map();
|
|
82
|
+
let grammarsInitialized = false;
|
|
132
83
|
/**
|
|
133
|
-
*
|
|
134
|
-
*
|
|
84
|
+
* Initialize all WASM grammars. Must be called before any parsing.
|
|
85
|
+
* Idempotent — safe to call multiple times.
|
|
135
86
|
*/
|
|
136
|
-
function
|
|
137
|
-
if (
|
|
138
|
-
return
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
if (!grammar) {
|
|
148
|
-
throw new Error(`Grammar loader returned empty value for ${language}`);
|
|
87
|
+
async function initGrammars() {
|
|
88
|
+
if (grammarsInitialized)
|
|
89
|
+
return;
|
|
90
|
+
await web_tree_sitter_1.Parser.init();
|
|
91
|
+
// Load all grammars in parallel
|
|
92
|
+
const entries = Object.entries(WASM_GRAMMAR_FILES);
|
|
93
|
+
await Promise.allSettled(entries.map(async ([lang, wasmFile]) => {
|
|
94
|
+
try {
|
|
95
|
+
const wasmPath = require.resolve(`tree-sitter-wasms/out/${wasmFile}`);
|
|
96
|
+
const language = await web_tree_sitter_1.Language.load(wasmPath);
|
|
97
|
+
languageCache.set(lang, language);
|
|
149
98
|
}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
99
|
+
catch (error) {
|
|
100
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
101
|
+
console.warn(`[CodeGraph] Failed to load ${lang} grammar — parsing will be unavailable: ${message}`);
|
|
102
|
+
unavailableGrammarErrors.set(lang, message);
|
|
103
|
+
}
|
|
104
|
+
}));
|
|
105
|
+
grammarsInitialized = true;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Check if grammars have been initialized
|
|
109
|
+
*/
|
|
110
|
+
function isGrammarsInitialized() {
|
|
111
|
+
return grammarsInitialized;
|
|
160
112
|
}
|
|
161
113
|
/**
|
|
162
|
-
* Get a parser for the specified language
|
|
114
|
+
* Get a parser for the specified language.
|
|
115
|
+
* Returns synchronously from pre-loaded cache.
|
|
163
116
|
*/
|
|
164
117
|
function getParser(language) {
|
|
165
118
|
if (parserCache.has(language)) {
|
|
166
119
|
return parserCache.get(language);
|
|
167
120
|
}
|
|
168
|
-
const
|
|
169
|
-
if (!
|
|
121
|
+
const lang = languageCache.get(language);
|
|
122
|
+
if (!lang) {
|
|
170
123
|
return null;
|
|
171
124
|
}
|
|
172
|
-
const parser = new
|
|
173
|
-
parser.setLanguage(
|
|
125
|
+
const parser = new web_tree_sitter_1.Parser();
|
|
126
|
+
parser.setLanguage(lang);
|
|
174
127
|
parserCache.set(language, parser);
|
|
175
128
|
return parser;
|
|
176
129
|
}
|
|
@@ -191,14 +144,14 @@ function isLanguageSupported(language) {
|
|
|
191
144
|
return true; // custom regex extractor
|
|
192
145
|
if (language === 'unknown')
|
|
193
146
|
return false;
|
|
194
|
-
return
|
|
147
|
+
return languageCache.has(language);
|
|
195
148
|
}
|
|
196
149
|
/**
|
|
197
150
|
* Get all currently supported languages.
|
|
198
151
|
*/
|
|
199
152
|
function getSupportedLanguages() {
|
|
200
|
-
const available = Object.keys(
|
|
201
|
-
.filter((language) =>
|
|
153
|
+
const available = Object.keys(WASM_GRAMMAR_FILES)
|
|
154
|
+
.filter((language) => languageCache.has(language));
|
|
202
155
|
return [...available, 'svelte', 'liquid'];
|
|
203
156
|
}
|
|
204
157
|
/**
|
|
@@ -206,7 +159,8 @@ function getSupportedLanguages() {
|
|
|
206
159
|
*/
|
|
207
160
|
function clearParserCache() {
|
|
208
161
|
parserCache.clear();
|
|
209
|
-
|
|
162
|
+
// Note: languageCache is NOT cleared — WASM languages persist.
|
|
163
|
+
// To fully re-init, set grammarsInitialized = false and call initGrammars() again.
|
|
210
164
|
unavailableGrammarErrors.clear();
|
|
211
165
|
}
|
|
212
166
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grammars.js","sourceRoot":"","sources":["../../src/extraction/grammars.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"grammars.js","sourceRoot":"","sources":["../../src/extraction/grammars.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,7 @@ export interface SyncResult {
|
|
|
37
37
|
filesRemoved: number;
|
|
38
38
|
nodesUpdated: number;
|
|
39
39
|
durationMs: number;
|
|
40
|
+
changedFilePaths?: string[];
|
|
40
41
|
}
|
|
41
42
|
/**
|
|
42
43
|
* Calculate SHA256 hash of file contents
|
|
@@ -47,7 +48,11 @@ export declare function hashContent(content: string): string;
|
|
|
47
48
|
*/
|
|
48
49
|
export declare function shouldIncludeFile(filePath: string, config: CodeGraphConfig): boolean;
|
|
49
50
|
/**
|
|
50
|
-
* Recursively scan directory for source files
|
|
51
|
+
* Recursively scan directory for source files.
|
|
52
|
+
*
|
|
53
|
+
* In git repos, uses `git ls-files` to get the file list (inherently
|
|
54
|
+
* respects .gitignore at all levels), then filters by config include patterns.
|
|
55
|
+
* Falls back to filesystem walk for non-git projects.
|
|
51
56
|
*/
|
|
52
57
|
export declare function scanDirectory(rootDir: string, config: CodeGraphConfig, onProgress?: (current: number, file: string) => void): string[];
|
|
53
58
|
/**
|
|
@@ -80,11 +85,13 @@ export declare class ExtractionOrchestrator {
|
|
|
80
85
|
*/
|
|
81
86
|
private storeExtractionResult;
|
|
82
87
|
/**
|
|
83
|
-
* Sync with current file state
|
|
88
|
+
* Sync with current file state.
|
|
89
|
+
* Uses git status as a fast path when available, falling back to full scan.
|
|
84
90
|
*/
|
|
85
91
|
sync(onProgress?: (progress: IndexProgress) => void): Promise<SyncResult>;
|
|
86
92
|
/**
|
|
87
|
-
* Get files that have changed since last index
|
|
93
|
+
* Get files that have changed since last index.
|
|
94
|
+
* Uses git status as a fast path when available, falling back to full scan.
|
|
88
95
|
*/
|
|
89
96
|
getChangedFiles(): {
|
|
90
97
|
added: string[];
|
|
@@ -93,5 +100,5 @@ export declare class ExtractionOrchestrator {
|
|
|
93
100
|
};
|
|
94
101
|
}
|
|
95
102
|
export { extractFromSource } from './tree-sitter';
|
|
96
|
-
export { detectLanguage, isLanguageSupported, getSupportedLanguages } from './grammars';
|
|
103
|
+
export { detectLanguage, isLanguageSupported, getSupportedLanguages, initGrammars } from './grammars';
|
|
97
104
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/extraction/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAKzB,OAAO,EAGL,gBAAgB,EAChB,eAAe,EACf,eAAe,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAc7C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/extraction/index.ts"],"names":[],"mappings":"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"}
|