@nithin554/code-crawler 0.1.64 → 0.1.66
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/.claude-plugin/marketplace.json +16 -0
- package/.claude-plugin/plugin.json +20 -0
- package/README.md +48 -4
- package/dist/config.d.ts +12 -0
- package/dist/config.js +5 -1
- package/dist/config.js.map +1 -1
- package/dist/graph/store.js +3 -0
- package/dist/graph/store.js.map +1 -1
- package/dist/index.js +31 -3
- package/dist/index.js.map +1 -1
- package/dist/parser/frameworks/aspectj.d.ts +3 -0
- package/dist/parser/frameworks/aspectj.js +15 -0
- package/dist/parser/frameworks/aspectj.js.map +1 -0
- package/dist/parser/frameworks/celery.d.ts +3 -0
- package/dist/parser/frameworks/celery.js +15 -0
- package/dist/parser/frameworks/celery.js.map +1 -0
- package/dist/parser/frameworks/dependencyInjector.d.ts +3 -0
- package/dist/parser/frameworks/dependencyInjector.js +8 -0
- package/dist/parser/frameworks/dependencyInjector.js.map +1 -0
- package/dist/parser/frameworks/events.d.ts +3 -0
- package/dist/parser/frameworks/events.js +13 -0
- package/dist/parser/frameworks/events.js.map +1 -0
- package/dist/parser/frameworks/express.d.ts +6 -0
- package/dist/parser/frameworks/express.js +9 -0
- package/dist/parser/frameworks/express.js.map +1 -0
- package/dist/parser/frameworks/fastapi.d.ts +3 -0
- package/dist/parser/frameworks/fastapi.js +17 -0
- package/dist/parser/frameworks/fastapi.js.map +1 -0
- package/dist/parser/frameworks/fastify.d.ts +3 -0
- package/dist/parser/frameworks/fastify.js +6 -0
- package/dist/parser/frameworks/fastify.js.map +1 -0
- package/dist/parser/frameworks/flask.d.ts +3 -0
- package/dist/parser/frameworks/flask.js +12 -0
- package/dist/parser/frameworks/flask.js.map +1 -0
- package/dist/parser/frameworks/index.d.ts +38 -0
- package/dist/parser/frameworks/index.js +167 -0
- package/dist/parser/frameworks/index.js.map +1 -0
- package/dist/parser/frameworks/jakarta.d.ts +3 -0
- package/dist/parser/frameworks/jakarta.js +7 -0
- package/dist/parser/frameworks/jakarta.js.map +1 -0
- package/dist/parser/frameworks/jest.d.ts +3 -0
- package/dist/parser/frameworks/jest.js +10 -0
- package/dist/parser/frameworks/jest.js.map +1 -0
- package/dist/parser/frameworks/junit.d.ts +3 -0
- package/dist/parser/frameworks/junit.js +11 -0
- package/dist/parser/frameworks/junit.js.map +1 -0
- package/dist/parser/frameworks/nestjs.d.ts +7 -0
- package/dist/parser/frameworks/nestjs.js +49 -0
- package/dist/parser/frameworks/nestjs.js.map +1 -0
- package/dist/parser/frameworks/nestjsParam.d.ts +3 -0
- package/dist/parser/frameworks/nestjsParam.js +19 -0
- package/dist/parser/frameworks/nestjsParam.js.map +1 -0
- package/dist/parser/frameworks/pytest.d.ts +3 -0
- package/dist/parser/frameworks/pytest.js +11 -0
- package/dist/parser/frameworks/pytest.js.map +1 -0
- package/dist/parser/frameworks/spring.d.ts +3 -0
- package/dist/parser/frameworks/spring.js +23 -0
- package/dist/parser/frameworks/spring.js.map +1 -0
- package/dist/parser/frameworks/tsDi.d.ts +6 -0
- package/dist/parser/frameworks/tsDi.js +9 -0
- package/dist/parser/frameworks/tsDi.js.map +1 -0
- package/dist/parser/frameworks/types.d.ts +52 -0
- package/dist/parser/frameworks/types.js +2 -0
- package/dist/parser/frameworks/types.js.map +1 -0
- package/dist/parser/languages/java.js +33 -70
- package/dist/parser/languages/java.js.map +1 -1
- package/dist/parser/languages/python.js +27 -21
- package/dist/parser/languages/python.js.map +1 -1
- package/dist/parser/languages/typescript.js +46 -66
- package/dist/parser/languages/typescript.js.map +1 -1
- package/dist/projects.d.ts +112 -0
- package/dist/projects.js +273 -0
- package/dist/projects.js.map +1 -0
- package/dist/server.d.ts +6 -2
- package/dist/server.js +37 -5
- package/dist/server.js.map +1 -1
- package/mcp.json +15 -0
- package/package.json +5 -2
- package/plugin.json +20 -0
- package/skills/code-crawler/SKILL.md +18 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "code-crawler",
|
|
3
|
+
"owner": {
|
|
4
|
+
"name": "nithin554"
|
|
5
|
+
},
|
|
6
|
+
"metadata": {
|
|
7
|
+
"description": "Agent plugin packaging for Code Crawler"
|
|
8
|
+
},
|
|
9
|
+
"plugins": [
|
|
10
|
+
{
|
|
11
|
+
"name": "code-crawler",
|
|
12
|
+
"source": "./",
|
|
13
|
+
"description": "Static and dynamic call tracing MCP server backed by a SQLite property graph of your codebase"
|
|
14
|
+
}
|
|
15
|
+
]
|
|
16
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "code-crawler",
|
|
3
|
+
"displayName": "Code Crawler",
|
|
4
|
+
"description": "Static and dynamic call tracing MCP server backed by a SQLite property graph of your codebase",
|
|
5
|
+
"author": {
|
|
6
|
+
"name": "nithin554",
|
|
7
|
+
"url": "https://github.com/nithin554"
|
|
8
|
+
},
|
|
9
|
+
"homepage": "https://nithin554.github.io/code-crawler/",
|
|
10
|
+
"repository": "https://github.com/nithin554/code-crawler",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"keywords": [
|
|
13
|
+
"code-analysis",
|
|
14
|
+
"call-graph",
|
|
15
|
+
"static-analysis",
|
|
16
|
+
"mcp",
|
|
17
|
+
"dead-code",
|
|
18
|
+
"impact-analysis"
|
|
19
|
+
]
|
|
20
|
+
}
|
package/README.md
CHANGED
|
@@ -138,6 +138,9 @@ Environment variables:
|
|
|
138
138
|
| `CODECRAWLER_MAX_FILE_BYTES` | `1000000` | Files larger than this are skipped, not parsed |
|
|
139
139
|
| `CODECRAWLER_RESPECT_GITIGNORE` | `true` | Honor the project's `.gitignore` during discovery |
|
|
140
140
|
| `CODECRAWLER_HELPFUL_ERRORS` | `true` | Fuzzy suggestions on symbol misses |
|
|
141
|
+
| `CODECRAWLER_PLUGIN` | unset | Plugin mode: resolve one database per project at call time instead of opening one file at startup |
|
|
142
|
+
| `CODECRAWLER_PLUGIN_ROOT` | unset | Plugin install directory, never indexed as a project |
|
|
143
|
+
| `CODECRAWLER_PLUGIN_DATA` | temp dir | Writable directory for the no-project fallback database |
|
|
141
144
|
|
|
142
145
|
Invalid values never crash the server: booleans fall back to their default and
|
|
143
146
|
integers are clamped to their documented range, each with a one-line warning on
|
|
@@ -256,6 +259,30 @@ if green, **auto-releases**:
|
|
|
256
259
|
|
|
257
260
|
## Using as an MCP server
|
|
258
261
|
|
|
262
|
+
### Install as an agent plugin
|
|
263
|
+
|
|
264
|
+
The repository is also an agent plugin, so Claude Code and Copilot CLI can install the
|
|
265
|
+
server and the skill together:
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
# Claude Code
|
|
269
|
+
/plugin marketplace add nithin554/code-crawler
|
|
270
|
+
/plugin install code-crawler@code-crawler
|
|
271
|
+
|
|
272
|
+
# Copilot CLI
|
|
273
|
+
copilot plugin marketplace add nithin554/code-crawler
|
|
274
|
+
copilot plugin install code-crawler@code-crawler
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
The plugin runs `npx -y @nithin554/code-crawler serve`. Agent Plugins clients start a
|
|
278
|
+
plugin's stdio servers inside the plugin directory, so the server does not treat that
|
|
279
|
+
directory as your checkout: it resolves a project from `crawl_project`, the client's
|
|
280
|
+
workspace roots, or the project this session already selected, and keeps that graph in
|
|
281
|
+
`<project>/.code-crawler/index.db` — one database per repository, the same layout the CLI
|
|
282
|
+
uses. `CODECRAWLER_DB` still pins a single file when you want one.
|
|
283
|
+
|
|
284
|
+
The same skill is published to [ClawHub](https://clawhub.ai) as `code-crawler`.
|
|
285
|
+
|
|
259
286
|
### One command
|
|
260
287
|
|
|
261
288
|
[`add-mcp`](https://github.com/neon-solutions/add-mcp) registers the server in whichever
|
|
@@ -278,10 +305,13 @@ with your checkout as its working directory: with `-g` and an unrelated working
|
|
|
278
305
|
|
|
279
306
|
### One server per project
|
|
280
307
|
|
|
281
|
-
|
|
282
|
-
the model is one registration per repository — which is what the
|
|
283
|
-
gives you.
|
|
284
|
-
|
|
308
|
+
Outside plugin mode a server process opens one database at startup and a database holds
|
|
309
|
+
exactly one project, so the model is one registration per repository — which is what the
|
|
310
|
+
per-project config above gives you. The plugin install instead resolves a database per
|
|
311
|
+
project at call time, so one plugin serves every repository you open. Re-crawling a repository reuses its existing file and only re-parses what changed;
|
|
312
|
+
two repositories never share a file, so they cannot clash. Only a few project databases stay
|
|
313
|
+
open at once (idle ones are closed), and every handle is released when the client
|
|
314
|
+
disconnects.
|
|
285
315
|
|
|
286
316
|
### MCP Registry / `npx`
|
|
287
317
|
|
|
@@ -611,6 +641,16 @@ Adding a language requires:
|
|
|
611
641
|
4. Optionally a resolver in `src/resolver/` exposed through `src/resolver/registry.ts`;
|
|
612
642
|
most languages work with the shared `module` resolver and only override
|
|
613
643
|
language-specific builtins.
|
|
644
|
+
5. Any framework it should recognise that is not registered yet — a module in
|
|
645
|
+
`src/parser/frameworks/` declaring its entry points, injections and markers. That is
|
|
646
|
+
a data change: no parser is edited.
|
|
647
|
+
|
|
648
|
+
Frameworks are resolved per file by import evidence, then by the descriptor's
|
|
649
|
+
`frameworks` order, then by every registered module. A file that imports
|
|
650
|
+
`dependency_injector` attributes its `@inject` there, while a Java file with no such
|
|
651
|
+
import still falls back to the registry rather than losing the annotation. Parsers keep
|
|
652
|
+
what is genuinely syntactic: receiver names for call-style routes, path joining, and the
|
|
653
|
+
text recorded as an entry point's detail.
|
|
614
654
|
|
|
615
655
|
No existing language module needs editing: dispatch in `src/crawler.ts` reads the
|
|
616
656
|
descriptor's `resolver`, so a language never appears in a conditional.
|
|
@@ -669,6 +709,10 @@ src/
|
|
|
669
709
|
│ ├── controlFlow.ts enclosing branch/loop/try/catch + guard text
|
|
670
710
|
│ ├── moduleId.ts import-aware module id derivation
|
|
671
711
|
│ ├── methodId.ts method id scheme (overload signatures, constructor ids)
|
|
712
|
+
│ ├── frameworks/
|
|
713
|
+
│ │ ├── types.ts FrameworkModule / FrameworkScope contracts
|
|
714
|
+
│ │ ├── index.ts registry + scope/entry-point/injection lookups
|
|
715
|
+
│ │ └── <framework>.ts one module per framework (spring, nestjs, fastapi, …)
|
|
672
716
|
│ └── languages/
|
|
673
717
|
│ ├── index.ts descriptor table + per-file language detection
|
|
674
718
|
│ ├── java.ts Java structural extraction
|
package/dist/config.d.ts
CHANGED
|
@@ -12,6 +12,18 @@ export declare const DB_FILE_NAME = "index.db";
|
|
|
12
12
|
export declare function databasePathFor(projectRoot: string): string;
|
|
13
13
|
/** The database used when no project can be determined, so each caller still gets a file. */
|
|
14
14
|
export declare function userDatabasePath(): string;
|
|
15
|
+
/** Project root that owns `start`, or `undefined` when no marker or database is found. */
|
|
16
|
+
export declare function findProjectRoot(start: string): string | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Nearest directory at or above `start` that either already owns a database or looks like a
|
|
19
|
+
* project root. `undefined` when the walk reaches the filesystem root with neither.
|
|
20
|
+
*
|
|
21
|
+
* The user's home directory never answers for the directories beneath it. It is the fallback
|
|
22
|
+
* location, not a project: an unmarked folder under `~` that inherited `~/.code-crawler`
|
|
23
|
+
* would share one file with every other unmarked folder, and a crawl there would collide
|
|
24
|
+
* with whatever the fallback file held last.
|
|
25
|
+
*/
|
|
26
|
+
export declare function nearestDatabaseRoot(start: string): string | undefined;
|
|
15
27
|
/**
|
|
16
28
|
* Database for the project that encloses `start`. Used when the caller knows what is being
|
|
17
29
|
* indexed, so a crawl of `repo/src` shares the database of `repo` rather than growing a
|
package/dist/config.js
CHANGED
|
@@ -35,6 +35,10 @@ export function databasePathFor(projectRoot) {
|
|
|
35
35
|
export function userDatabasePath() {
|
|
36
36
|
return path.join(os.homedir(), DB_DIR_NAME, DB_FILE_NAME);
|
|
37
37
|
}
|
|
38
|
+
/** Project root that owns `start`, or `undefined` when no marker or database is found. */
|
|
39
|
+
export function findProjectRoot(start) {
|
|
40
|
+
return nearestDatabaseRoot(start);
|
|
41
|
+
}
|
|
38
42
|
/**
|
|
39
43
|
* Nearest directory at or above `start` that either already owns a database or looks like a
|
|
40
44
|
* project root. `undefined` when the walk reaches the filesystem root with neither.
|
|
@@ -44,7 +48,7 @@ export function userDatabasePath() {
|
|
|
44
48
|
* would share one file with every other unmarked folder, and a crawl there would collide
|
|
45
49
|
* with whatever the fallback file held last.
|
|
46
50
|
*/
|
|
47
|
-
function nearestDatabaseRoot(start) {
|
|
51
|
+
export function nearestDatabaseRoot(start) {
|
|
48
52
|
const home = path.resolve(os.homedir());
|
|
49
53
|
let dir = path.resolve(start);
|
|
50
54
|
for (;;) {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B;;;;;GAKG;AAEH,+DAA+D;AAC/D,MAAM,CAAC,MAAM,WAAW,GAAG,eAAe,CAAC;AAC3C,gDAAgD;AAChD,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AAEvC;;;GAGG;AACH,MAAM,eAAe,GAAG;IACtB,MAAM;IACN,cAAc;IACd,SAAS;IACT,cAAc;IACd,kBAAkB;IAClB,gBAAgB;IAChB,UAAU;IACV,kBAAkB;IAClB,QAAQ;IACR,YAAY;CACb,CAAC;AAEF,wFAAwF;AACxF,MAAM,UAAU,eAAe,CAAC,WAAmB;IACjD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;AACzE,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,gBAAgB;IAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;GAQG;AACH,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/graph/store.js
CHANGED
|
@@ -159,6 +159,9 @@ export class GraphStore {
|
|
|
159
159
|
if (dir && dir !== ".")
|
|
160
160
|
fs.mkdirSync(dir, { recursive: true });
|
|
161
161
|
this.db = new Database(dbPath);
|
|
162
|
+
// A project database can be shared by the CLI and a plugin server: wait for
|
|
163
|
+
// the write lock instead of failing the call with SQLITE_BUSY.
|
|
164
|
+
this.db.pragma("busy_timeout = 5000");
|
|
162
165
|
this.db.pragma("journal_mode = WAL");
|
|
163
166
|
this.db.pragma("foreign_keys = ON");
|
|
164
167
|
this.db.exec(SCHEMA);
|
package/dist/graph/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/graph/store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/graph/store.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -6,6 +6,7 @@ import { loadConfig } from "./config.js";
|
|
|
6
6
|
import { crawlProject } from "./crawler.js";
|
|
7
7
|
import { searchSymbols } from "./graph/queries.js";
|
|
8
8
|
import { GraphStore } from "./graph/store.js";
|
|
9
|
+
import { PluginProjects, pluginDataDir, pluginModeFromEnv, pluginRootFromEnv, } from "./projects.js";
|
|
9
10
|
import { createServer } from "./server.js";
|
|
10
11
|
/**
|
|
11
12
|
* code-crawler CLI:
|
|
@@ -32,6 +33,9 @@ Environment:
|
|
|
32
33
|
CODECRAWLER_MAX_DEPTH Traversal depth cap
|
|
33
34
|
CODECRAWLER_MAX_FILE_BYTES Skip source files larger than this (default 1000000)
|
|
34
35
|
CODECRAWLER_RESPECT_GITIGNORE Honor .gitignore during crawl (default true)
|
|
36
|
+
CODECRAWLER_PLUGIN Plugin mode: one database per project (set by plugin manifests)
|
|
37
|
+
CODECRAWLER_PLUGIN_ROOT Plugin install directory, never indexed as a project
|
|
38
|
+
CODECRAWLER_PLUGIN_DATA Writable plugin directory for the fallback database
|
|
35
39
|
`);
|
|
36
40
|
}
|
|
37
41
|
function makeStore(config) {
|
|
@@ -46,10 +50,34 @@ export async function main(argv = process.argv.slice(2)) {
|
|
|
46
50
|
case undefined:
|
|
47
51
|
case "serve": {
|
|
48
52
|
const config = loadConfig();
|
|
49
|
-
|
|
50
|
-
|
|
53
|
+
// A plugin client starts the server inside the plugin directory. Pick one
|
|
54
|
+
// database per project instead of binding to that directory. An explicit
|
|
55
|
+
// CODECRAWLER_DB still wins and keeps the CLI's fixed-file behavior.
|
|
56
|
+
const pluginRoot = pluginModeFromEnv() ? pluginRootFromEnv() : undefined;
|
|
57
|
+
const projects = pluginModeFromEnv()
|
|
58
|
+
? new PluginProjects({
|
|
59
|
+
config,
|
|
60
|
+
pluginRoot,
|
|
61
|
+
dataDir: pluginDataDir(pluginRoot),
|
|
62
|
+
makeStore,
|
|
63
|
+
log: (message) => console.error(`code-crawler: ${message}`),
|
|
64
|
+
})
|
|
65
|
+
: undefined;
|
|
66
|
+
const storeConfig = projects ? { ...config, dbPath: projects.fallbackDatabasePath } : config;
|
|
67
|
+
// Plugin mode opens the fallback database only when no project is ever
|
|
68
|
+
// detected, so merely starting the server writes no database file.
|
|
69
|
+
const store = projects ? () => projects.fallbackStore() : makeStore(storeConfig);
|
|
70
|
+
const server = createServer(store, storeConfig, { projects });
|
|
51
71
|
const transport = new StdioServerTransport();
|
|
52
|
-
|
|
72
|
+
// Release SQLite handles (and checkpoint their WAL files) on the way out.
|
|
73
|
+
// `exit` is synchronous and does not suppress the default signal behavior
|
|
74
|
+
// the way a SIGINT/SIGTERM listener would.
|
|
75
|
+
transport.onclose = () => projects?.close();
|
|
76
|
+
if (projects)
|
|
77
|
+
process.once("exit", () => projects.close());
|
|
78
|
+
console.error(projects
|
|
79
|
+
? "code-crawler: MCP server ready (plugin mode: one database per project)"
|
|
80
|
+
: `code-crawler: MCP server ready (db: ${config.dbPath})`);
|
|
53
81
|
await server.connect(transport);
|
|
54
82
|
break;
|
|
55
83
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAe,UAAU,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C;;;;;;GAMG;AAEH,SAAS,KAAK;IACZ,OAAO,CAAC,GAAG,CAAC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** AspectJ: advice annotations and the `@Aspect` class marker. */
|
|
2
|
+
export const aspectj = {
|
|
3
|
+
name: "aspectj",
|
|
4
|
+
evidence: ["org.aspectj"],
|
|
5
|
+
aspects: ["Aspect"],
|
|
6
|
+
advice: {
|
|
7
|
+
Before: "before",
|
|
8
|
+
After: "after",
|
|
9
|
+
Around: "around",
|
|
10
|
+
AfterReturning: "afterReturning",
|
|
11
|
+
AfterThrowing: "afterThrowing",
|
|
12
|
+
Pointcut: "pointcut",
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=aspectj.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aspectj.js","sourceRoot":"","sources":["../../../src/parser/frameworks/aspectj.ts"],"names":[],"mappings":"AAEA,kEAAkE;AAClE,MAAM,CAAC,MAAM,OAAO,GAAoB;IACtC,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,CAAC,aAAa,CAAC;IACzB,OAAO,EAAE,CAAC,QAAQ,CAAC;IACnB,MAAM,EAAE;QACN,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,QAAQ;QAChB,cAAc,EAAE,gBAAgB;QAChC,aAAa,EAAE,eAAe;QAC9B,QAAQ,EAAE,UAAU;KACrB;CACF,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Celery (and celery-beat) task and schedule decorators. */
|
|
2
|
+
export const celery = {
|
|
3
|
+
name: "celery",
|
|
4
|
+
evidence: ["celery"],
|
|
5
|
+
entryPoints: {
|
|
6
|
+
task: { kind: "messaging" },
|
|
7
|
+
shared_task: { kind: "messaging" },
|
|
8
|
+
celery_task: { kind: "messaging" },
|
|
9
|
+
periodic_task: { kind: "messaging" },
|
|
10
|
+
scheduled: { kind: "scheduler" },
|
|
11
|
+
cron: { kind: "scheduler" },
|
|
12
|
+
interval: { kind: "scheduler" },
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=celery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"celery.js","sourceRoot":"","sources":["../../../src/parser/frameworks/celery.ts"],"names":[],"mappings":"AAEA,6DAA6D;AAC7D,MAAM,CAAC,MAAM,MAAM,GAAoB;IACrC,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,CAAC,QAAQ,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QAC3B,WAAW,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QAClC,WAAW,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QAClC,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QACpC,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QAChC,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;QAC3B,QAAQ,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;KAChC;CACF,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** dependency-injector: `@inject` / `@injectable` markers and `Inject(...)` parameters. */
|
|
2
|
+
export const dependencyInjector = {
|
|
3
|
+
name: "dependency-injector",
|
|
4
|
+
evidence: ["dependency_injector"],
|
|
5
|
+
injections: { inject: true, injectable: true, autowired: true, provide: true },
|
|
6
|
+
paramMarkers: { "Inject(": "dependency-injector" },
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=dependencyInjector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dependencyInjector.js","sourceRoot":"","sources":["../../../src/parser/frameworks/dependencyInjector.ts"],"names":[],"mappings":"AAEA,2FAA2F;AAC3F,MAAM,CAAC,MAAM,kBAAkB,GAAoB;IACjD,IAAI,EAAE,qBAAqB;IAC3B,QAAQ,EAAE,CAAC,qBAAqB,CAAC;IACjC,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;IAC9E,YAAY,EAAE,EAAE,SAAS,EAAE,qBAAqB,EAAE;CACnD,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** Generic event-listener decorators with no single owning library. */
|
|
2
|
+
export const events = {
|
|
3
|
+
name: "events",
|
|
4
|
+
entryPoints: {
|
|
5
|
+
on_event: { kind: "event" },
|
|
6
|
+
listener: { kind: "event" },
|
|
7
|
+
receiver: { kind: "event" },
|
|
8
|
+
on_message: { kind: "event" },
|
|
9
|
+
subscribe: { kind: "event" },
|
|
10
|
+
handler: { kind: "event" },
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/parser/frameworks/events.ts"],"names":[],"mappings":"AAEA,uEAAuE;AACvE,MAAM,CAAC,MAAM,MAAM,GAAoB;IACrC,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE;QACX,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC3B,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC3B,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC3B,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC7B,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;QAC5B,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;KAC3B;CACF,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Express declares evidence only: route registration is detected from call
|
|
3
|
+
* receivers (`app.get(...)`), which is a syntactic heuristic the parser owns.
|
|
4
|
+
*/
|
|
5
|
+
export const express = {
|
|
6
|
+
name: "express",
|
|
7
|
+
evidence: ["express"],
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=express.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"express.js","sourceRoot":"","sources":["../../../src/parser/frameworks/express.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAoB;IACtC,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,CAAC,SAAS,CAAC;CACtB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** FastAPI: verb decorators register routes, `Depends` injects a parameter. */
|
|
2
|
+
export const fastapi = {
|
|
3
|
+
name: "fastapi",
|
|
4
|
+
evidence: ["fastapi"],
|
|
5
|
+
entryPoints: {
|
|
6
|
+
get: { kind: "http", httpMethod: "GET" },
|
|
7
|
+
post: { kind: "http", httpMethod: "POST" },
|
|
8
|
+
put: { kind: "http", httpMethod: "PUT" },
|
|
9
|
+
delete: { kind: "http", httpMethod: "DELETE" },
|
|
10
|
+
patch: { kind: "http", httpMethod: "PATCH" },
|
|
11
|
+
head: { kind: "http", httpMethod: "HEAD" },
|
|
12
|
+
options: { kind: "http", httpMethod: "OPTIONS" },
|
|
13
|
+
trace: { kind: "http", httpMethod: "TRACE" },
|
|
14
|
+
},
|
|
15
|
+
paramMarkers: { "Depends(": "fastapi" },
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=fastapi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fastapi.js","sourceRoot":"","sources":["../../../src/parser/frameworks/fastapi.ts"],"names":[],"mappings":"AAEA,+EAA+E;AAC/E,MAAM,CAAC,MAAM,OAAO,GAAoB;IACtC,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,CAAC,SAAS,CAAC;IACrB,WAAW,EAAE;QACX,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE;QACxC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE;QAC1C,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE;QACxC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE;QAC9C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE;QAC5C,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE;QAC1C,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE;QAChD,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE;KAC7C;IACD,YAAY,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;CACxC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fastify.js","sourceRoot":"","sources":["../../../src/parser/frameworks/fastify.ts"],"names":[],"mappings":"AAEA,kFAAkF;AAClF,MAAM,CAAC,MAAM,OAAO,GAAoB;IACtC,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,CAAC,SAAS,CAAC;CACtB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Flask: route decorators that accept any verb, plus `add_url_rule`. */
|
|
2
|
+
export const flask = {
|
|
3
|
+
name: "flask",
|
|
4
|
+
evidence: ["flask"],
|
|
5
|
+
entryPoints: {
|
|
6
|
+
route: { kind: "http", httpMethod: "ANY" },
|
|
7
|
+
api_route: { kind: "http", httpMethod: "ANY" },
|
|
8
|
+
websocket: { kind: "http", httpMethod: "ANY" },
|
|
9
|
+
websocket_route: { kind: "http", httpMethod: "ANY" },
|
|
10
|
+
},
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=flask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flask.js","sourceRoot":"","sources":["../../../src/parser/frameworks/flask.ts"],"names":[],"mappings":"AAEA,yEAAyE;AACzE,MAAM,CAAC,MAAM,KAAK,GAAoB;IACpC,IAAI,EAAE,OAAO;IACb,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,WAAW,EAAE;QACX,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE;QAC1C,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE;QAC9C,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE;QAC9C,eAAe,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE;KACrD;CACF,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { ImportInfo } from "../language.js";
|
|
2
|
+
import type { EntryPointSpec, FrameworkModule, FrameworkScope } from "./types.js";
|
|
3
|
+
export type { EntryPointSpec, FrameworkModule, FrameworkScope } from "./types.js";
|
|
4
|
+
/** Every registered framework, in precedence order. */
|
|
5
|
+
export declare function listFrameworks(): FrameworkModule[];
|
|
6
|
+
/** Registered framework names, in precedence order. */
|
|
7
|
+
export declare function frameworkNames(): string[];
|
|
8
|
+
export declare function frameworkNamed(name: string): FrameworkModule | undefined;
|
|
9
|
+
/**
|
|
10
|
+
* Build the conventions a file is judged against. Imports come first so a
|
|
11
|
+
* project that evidences `dependency_injector` attributes `@inject` there,
|
|
12
|
+
* while a Java file with no such import still falls back to the registry.
|
|
13
|
+
*/
|
|
14
|
+
export declare function frameworkScope(imports?: ImportInfo[], preferred?: string[], caseInsensitive?: boolean): FrameworkScope;
|
|
15
|
+
export interface EntryPointMatch {
|
|
16
|
+
module: FrameworkModule;
|
|
17
|
+
spec: EntryPointSpec;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* What an annotation means, if anything. `accept` lets a language keep its own
|
|
21
|
+
* extra condition (Python only treats a verb decorator as HTTP when a receiver
|
|
22
|
+
* or the `route` name is present).
|
|
23
|
+
*/
|
|
24
|
+
export declare function entryPointIn(scope: FrameworkScope, name: string, qualified?: string, accept?: (spec: EntryPointSpec) => boolean): EntryPointMatch | undefined;
|
|
25
|
+
/** Framework label an annotation attributes an injection to. */
|
|
26
|
+
export declare function injectionIn(scope: FrameworkScope, name: string): string | undefined;
|
|
27
|
+
/** Whether an annotation marks a class as container-managed. */
|
|
28
|
+
export declare function injectableIn(scope: FrameworkScope, name: string): boolean;
|
|
29
|
+
/** Whether an annotation marks an aspect class. */
|
|
30
|
+
export declare function aspectIn(scope: FrameworkScope, name: string): boolean;
|
|
31
|
+
export interface AdviceMatch {
|
|
32
|
+
module: FrameworkModule;
|
|
33
|
+
kind: string;
|
|
34
|
+
}
|
|
35
|
+
/** Advice kind an annotation implies (`before`, `around`, ...). */
|
|
36
|
+
export declare function adviceIn(scope: FrameworkScope, name: string): AdviceMatch | undefined;
|
|
37
|
+
/** Injection label implied by a raw marker in a parameter list, e.g. `Depends(`. */
|
|
38
|
+
export declare function paramMarkerIn(scope: FrameworkScope, text: string): string | undefined;
|