Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
183 commits
Select commit Hold shift + click to select a range
cda6ed5
test: re-extract every golden corpus in the test suite
sunerpy Oct 10, 2026
755f83b
test(bench): add C#, Java, Swift, ObjC, PHP, Vue, Svelte, Python-base…
sunerpy Oct 10, 2026
e3202d9
test(bench): add router, server, mobile and synthesis corpora
sunerpy Oct 10, 2026
880ab84
feat(store): add schema 9 for synthesis inputs and move the extractio…
sunerpy Oct 10, 2026
a523ec0
test: add a real-pipeline probe harness
sunerpy Oct 10, 2026
86ee71c
test: add the cross-language sync-versus-fresh matrix
sunerpy Oct 10, 2026
b286744
test(ui): bound every step of the live-events test
sunerpy Oct 10, 2026
d2f3688
test(bench): add Rust A/B timing and graph diff
sunerpy Oct 10, 2026
9c02c24
docs(upstream): record the f4ddf508..b635dd46 audit
sunerpy Oct 10, 2026
150445f
test(cli): isolate the stale-WAL recovery tests from the user's MCP r…
sunerpy Oct 10, 2026
e8f5f3d
test(store): pin the extraction version the v0.54.0 release wrote
sunerpy Oct 10, 2026
3c6a4be
test(cli): open the upgraded index through a portable SQLite URI
sunerpy Oct 10, 2026
45d391f
test: keep regen-goldens.sh logs in its own scratch space
sunerpy Oct 10, 2026
6a02607
test(bench): seed the PHP, CommonJS and mobile corpora with the shape…
sunerpy Oct 10, 2026
9e877f2
docs(upstream): give every audit row its disposition and Rust target
sunerpy Oct 10, 2026
fc945b7
test: keep the mini transplant's init log in scratch space too
sunerpy Oct 10, 2026
fe3bb43
docs(upstream): give the not-needed audit rows every ledger column
sunerpy Oct 10, 2026
b2a6306
test: make the script tests fail the gate, and repair the ci-gate fix…
sunerpy Oct 10, 2026
42ad4bc
fix(serve): keep a cold-start MCP session attached to the daemon it s…
sunerpy Oct 10, 2026
f0461b9
fix(watch): rescan the project when the watcher may have lost events
sunerpy Oct 10, 2026
1d40dc7
fix(daemon): replace a daemon left by an older install
sunerpy Oct 10, 2026
cab3c42
feat(cli): report files needing reindex and files with parse errors
sunerpy Oct 10, 2026
31ccb09
fix(mcp): bound the startup sub-project scan
sunerpy Oct 10, 2026
9f834e7
fix(windows): hide the console window of every git call
sunerpy Oct 10, 2026
636e6b8
docs: correct references that disagree with the code
sunerpy Oct 10, 2026
9203e75
fix(scan): honor the repository's .git/info/exclude
sunerpy Oct 10, 2026
085ec78
fix(resolve): never offer import statements as name-match candidates
sunerpy Oct 10, 2026
68ce9d8
fix(resolve): a catch-all path alias never makes a package import local
sunerpy Oct 10, 2026
2a56bc1
fix(extract): store the sniffed language on the file row
sunerpy Oct 10, 2026
ce9f489
fix(daemon): find a Windows daemon by its pipe, not by a file
sunerpy Oct 10, 2026
a55ec18
fix(daemon): drain only the daemon a session classified as older
sunerpy Oct 10, 2026
7d5e318
fix(watch): report RECOVERING while a burst past 500 paths is reconciled
sunerpy Oct 10, 2026
be38d1b
test(sync): converge a file whose collapsed parse is fixed
sunerpy Oct 10, 2026
f6f93b0
ci: run the event-loss convergence test on macOS
sunerpy Oct 10, 2026
bbf4947
feat(extract): extract C# base lists
sunerpy Oct 10, 2026
09a93c4
feat(extract): emit instantiations for object creation and literal co…
sunerpy Oct 10, 2026
453219b
feat(extract): type-annotation references for Rust and Go
sunerpy Oct 10, 2026
224fb41
feat(extract): type-annotation references for Java, Kotlin and Scala
sunerpy Oct 10, 2026
fab5e47
feat(extract): type-annotation references for C#, Swift, Dart and PHP
sunerpy Oct 10, 2026
0c90bba
feat(extract): Objective-C message sends and interface supertypes
sunerpy Oct 10, 2026
21caaad
feat(extract): Python class bases
sunerpy Oct 10, 2026
49ce70c
feat(extract): PHP extends and implements
sunerpy Oct 10, 2026
4c54743
feat(extract): delegate Vue SFC scripts to the TypeScript extractor
sunerpy Oct 10, 2026
60abe81
fix(extract): fold SFC scripts into the component's file node
sunerpy Oct 10, 2026
3a02c22
feat(extract): Go struct and interface embedding
sunerpy Oct 10, 2026
68f5377
fix(extract): keep the receiver of Ruby method calls
sunerpy Oct 10, 2026
2b2cf96
feat(extract): Dart mixins, implements, mixin applications and member…
sunerpy Oct 10, 2026
a87073d
fix(extract): keep the scope of C++ qualified calls
sunerpy Oct 10, 2026
a951eeb
feat(extract): same-file value references for TypeScript, JavaScript,…
sunerpy Oct 10, 2026
1180a51
feat(extract): static member reads
sunerpy Oct 10, 2026
422ea45
feat(extract): same-file value references for PHP, Scala, Rust, Ruby,…
sunerpy Oct 10, 2026
ed4004c
style(extract): keep the C declarator helper above the test module
sunerpy Oct 10, 2026
1cc4aa3
feat(extract): same-file value references for Java, C#, Kotlin, Swift…
sunerpy Oct 10, 2026
00ccfd5
fix(extract): fold Astro frontmatter and scripts into the component's…
sunerpy Oct 11, 2026
eb9aab8
fix(extract): a Go value reads what its initializer names
sunerpy Oct 11, 2026
eea59c2
fix(extract): C++ scoped reads reference the type they read through
sunerpy Oct 11, 2026
a890e60
fix(extract): Kotlin and PHP property types are references
sunerpy Oct 11, 2026
4d08290
fix(sync): retry failed imports that an added file can satisfy
sunerpy Oct 11, 2026
16c5854
fix(resolve): an imports reference binds the file it names, never its…
sunerpy Oct 11, 2026
63227a5
fix(resolve): out-of-repo and namespace receivers never reach S2/S3
sunerpy Oct 11, 2026
4c4e8fb
fix(resolve): super, window-chain, expression and inheritance calls n…
sunerpy Oct 11, 2026
7acd108
fix(resolve): fuzzy matching ignores case only where the language does
sunerpy Oct 11, 2026
102543a
fix(resolve): receivers with no same-family project type stop name gu…
sunerpy Oct 11, 2026
bc8918f
fix(resolve): S1 walks declared supertypes; S3 skips dispatched handl…
sunerpy Oct 11, 2026
cacc459
fix(resolve): non-test code never name-matches into a test suite
sunerpy Oct 11, 2026
c9c4a53
feat(resolve): a call reaches the overload its arguments fit
sunerpy Oct 11, 2026
80425a0
fix(resolve): framework resolvers answer only references in their own…
sunerpy Oct 11, 2026
99653d6
fix(resolve): type parameters, local types and function values stay i…
sunerpy Oct 11, 2026
c22f9ae
feat(core): detect minified scripts by content and keep their symbols…
sunerpy Oct 11, 2026
d2ee4ea
test(extract): bind a module path import to its file in the local min…
sunerpy Oct 11, 2026
4cd62c2
fix(resolve): check minified scripts on name matches only, as upstrea…
sunerpy Oct 11, 2026
d2a3e8c
fix(resolve): read a C++ receiver's declared type as upstream does be…
sunerpy Oct 11, 2026
c0d0785
fix(resolve): a C# call on an outside type reaches the project's exte…
sunerpy Oct 11, 2026
ec5ebc8
fix(resolve): a C++ declared type that began above or names no type n…
sunerpy Oct 11, 2026
9c8187f
fix(resolve): a C# extension call picks its overload by C#'s normal-f…
sunerpy Oct 11, 2026
d20bf10
fix(sync): retry a qualified reference by its last segment when that …
sunerpy Oct 11, 2026
304e8bc
fix(resolve): only overloads extending the receiver's type compete fo…
sunerpy Oct 11, 2026
eb933c6
fix(resolve): C# extension overloads differing only in type parameter…
sunerpy Oct 11, 2026
af84d42
fix(resolve): a C# extension overload's where clauses are part of its…
sunerpy Oct 11, 2026
cf42309
fix(resolve): compare C# extension receivers and constraints token by…
sunerpy Oct 11, 2026
c762529
fix(resolve): blank C# extension declarations with the C# lexer
sunerpy Oct 11, 2026
b46fe55
fix(resolve): apply JavaScript-family rules to Vue, Svelte, Astro and…
sunerpy Oct 11, 2026
aa31c62
fix(resolve): keep unexported, SFC-instance and shadowed bindings out…
sunerpy Oct 11, 2026
701ca27
feat(resolve): follow functions destructured from call results
sunerpy Oct 11, 2026
a1bae98
fix(sync): keep same-file value references through a whole-file re-re…
sunerpy Oct 11, 2026
b17d24c
feat(extract): CommonJS requires import their files
sunerpy Oct 11, 2026
e8e20d8
feat(resolve): namespace re-exports, default aliases and $ identifiers
sunerpy Oct 11, 2026
b48dbfe
feat(extract): parse @flow files as TSX with Flow syntax blanked
sunerpy Oct 11, 2026
0c98c3c
feat(extract): every named object literal owns its members
sunerpy Oct 12, 2026
e00c5d9
fix(resolve): JSX tags bound to local names render no child
sunerpy Oct 12, 2026
e60d703
fix(extract): declare module and declare global bodies are export con…
sunerpy Oct 12, 2026
6839ed9
feat(extract): Vue Options API members and template calls
sunerpy Oct 12, 2026
cf4d85e
fix(resolve): fetch-body builtins need receiver evidence
sunerpy Oct 12, 2026
4bd0d8c
fix(resolve): Python bare calls stay functions, local and in scope
sunerpy Oct 12, 2026
b049bc2
feat(resolve): Python imports follow package re-exports and module me…
sunerpy Oct 12, 2026
1fcba39
feat(resolve): type module-global method values; self calls skip a sa…
sunerpy Oct 12, 2026
63a4bf8
feat(resolve): pytest fixtures type parameters; Django managers; keyw…
sunerpy Oct 12, 2026
efa520a
fix(resolve): JavaScript identifiers in local and default export aliases
sunerpy Oct 12, 2026
8e60d19
fix(sync): follow every changed fixture module a conftest pulls in
sunerpy Oct 12, 2026
296e729
fix(sync): JavaScript module surfaces converge under sync
sunerpy Oct 12, 2026
3272ba0
fix(sync): a barrel's targets cover every JavaScript-family resolutio…
sunerpy Oct 12, 2026
334f528
fix(extract): C++ attribute, access-specifier and #if macros in more …
sunerpy Oct 12, 2026
3a11577
feat(extract): brace-derived scopes on broken C++ trees
sunerpy Oct 12, 2026
f8f0a62
feat(extract): types defined in variable declarations
sunerpy Oct 12, 2026
080aaaf
feat(resolve): typedef and using-alias receivers
sunerpy Oct 12, 2026
6a6f71c
feat(resolve): base classes by C++ name lookup
sunerpy Oct 12, 2026
1596c67
fix(resolve): std receivers and nested template args stop name guessing
sunerpy Oct 12, 2026
e31880e
feat(resolve): macro-opened namespaces, overload fit and global-scope…
sunerpy Oct 12, 2026
f13f987
fix(resolve): calls from C files never land on methods
sunerpy Oct 12, 2026
f0a9af9
fix(resolve): bound the macro-visibility include walk
sunerpy Oct 12, 2026
d5c59cb
fix(extract): stop indexing phantom macro functions
sunerpy Oct 12, 2026
259410f
feat(extract): C preParse deferral round 2
sunerpy Oct 12, 2026
6514751
fix(resolve): Java bare calls, outside imports and type names by package
sunerpy Oct 12, 2026
22b062d
feat(extract): enum constant bodies
sunerpy Oct 12, 2026
7c25ed4
fix(resolve): Kotlin imports, top-level visibility, bare calls, std c…
sunerpy Oct 12, 2026
a0db386
feat(extract): Kotlin infix calls and newer syntax
sunerpy Oct 12, 2026
266dbbc
feat(extract): Lombok-synthesized members
sunerpy Oct 12, 2026
dd1a1af
fix(resolve): Scala bare calls, local vals, package objects, chain li…
sunerpy Oct 13, 2026
6a6ce8c
fix(resolve): C# type positions, namespace-scoped type names and bloc…
sunerpy Oct 13, 2026
3f3c6a8
fix(resolve): C# bare names through the enclosing type, bases and usi…
sunerpy Oct 13, 2026
516faa9
feat(resolve): calls through declared members use the member type
sunerpy Oct 13, 2026
00366b9
feat(extract): C# accessor bodies, initializers and target-typed new
sunerpy Oct 13, 2026
b76b50f
fix(deps): update quinn-proto to 0.11.19
sunerpy Oct 13, 2026
1c4707d
test(sync): converge macro visibility through a deep include graph
sunerpy Oct 13, 2026
94d4bc2
fix(resolve): Ruby receivers need a shared word; class-body bare call…
sunerpy Oct 13, 2026
e01f917
fix(resolve): CFML component bare calls and receiver relaxations
sunerpy Oct 13, 2026
43d3d28
feat(extract): CFML container tags, cfinterface, cfscript-in-tag re-p…
sunerpy Oct 13, 2026
5490e45
feat(resolve): Swift extensions are not their type; scoped nested nam…
sunerpy Oct 13, 2026
90b7b05
fix(resolve): Swift call shapes, type paths, typed properties and labels
sunerpy Oct 13, 2026
9eaae3a
fix(ui): entry points ignore #Preview calls
sunerpy Oct 13, 2026
899d5cd
fix(resolve): ObjC messages reach their hierarchy; super sends; names…
sunerpy Oct 13, 2026
fee0333
feat(resolve): Go lowercase receiver types, package-dir lookup and fi…
sunerpy Oct 14, 2026
cd99f37
feat(extract): Go type aliases, defined types and standalone doc comm…
sunerpy Oct 14, 2026
585e918
fix(resolve): Go call shapes, keywords, package names, local shadowin…
sunerpy Oct 14, 2026
2cc91ba
fix(resolve): Rust bare names see other files only through use or globs
sunerpy Oct 14, 2026
93f6357
feat(resolve): Rust variant paths reference their enum
sunerpy Oct 14, 2026
a126959
fix(resolve): Rust path receivers, Self types and inferred std receivers
sunerpy Oct 14, 2026
8f96cbf
fix(extract): fail a CFML file whose script or query body nests too deep
sunerpy Oct 14, 2026
d43ecb2
docs(equivalence): describe the CFML fixture as built
sunerpy Oct 14, 2026
5efb90a
fix(deps): update rustls to 0.23.46
sunerpy Oct 14, 2026
8e273b6
test(sync): converge when a CFML body nests past the depth limit
sunerpy Oct 14, 2026
0ea4147
fix(resolve): PHP $this, self, static and parent stay in the ancestor…
sunerpy Oct 15, 2026
b9f2e7c
fix(resolve): PHP bare calls are functions; namespace-qualified names…
sunerpy Oct 15, 2026
f1a81cd
fix(resolve): case-insensitive name prefilter for PHP, Pascal and CFML
sunerpy Oct 15, 2026
ca6d41a
fix(resolve): Lua locals stay file-local; bare calls never table meth…
sunerpy Oct 15, 2026
c4230ff
docs(architecture): record the case-folded sync lane and its marker
sunerpy Oct 15, 2026
7311dbe
fix(resolve): R test variables stay local; calls skip data bindings
sunerpy Oct 15, 2026
629b310
fix(resolve): Dart bare calls stay in the class hierarchy; extension …
sunerpy Oct 16, 2026
348865c
feat(resolve): Dart library visibility, import URIs and part directives
sunerpy Oct 16, 2026
9e346d1
feat(resolve): Dart getter reads, type positions and initializer calls
sunerpy Oct 16, 2026
27bc0cc
feat(resolve): type the later links of Dart call chains
sunerpy Oct 16, 2026
c221085
feat(resolve): Dart local scopes and const constructors
sunerpy Oct 17, 2026
992d14d
feat(resolve): Dart annotations and calls through import prefixes
sunerpy Oct 17, 2026
7a9a2c1
fix(resolve): Solidity bare calls follow the contract's is-chain
sunerpy Oct 17, 2026
6f67b61
docs(resolve): count OpenZeppelin's misattributed _msgSender calls as…
sunerpy Oct 17, 2026
90dac2f
fix(resolve): Erlang cross-module bare calls only through -import or …
sunerpy Oct 17, 2026
e2ca9f7
fix(extract): Shopify JSON is Liquid only inside a theme; references …
sunerpy Oct 17, 2026
e38fc8d
fix(extract): .inc files with Pascal shapes are Pascal
sunerpy Oct 17, 2026
6d4a2a3
perf(resolve): skip the regex work the JS shadow veto and receiver sc…
sunerpy Oct 18, 2026
67cb578
fix(bench): read an A/B run's own peak RSS on Linux
sunerpy Oct 18, 2026
1d572ae
docs(upstream): list the behavior kept different from colby on purpose
sunerpy Oct 18, 2026
0eed8f4
perf(resolve): read C++ declarators and JS bindings without per-name …
sunerpy Oct 18, 2026
11a2d11
fix(deps): update self_update to 1.3.1
sunerpy Oct 18, 2026
9853196
fix(bench): import the Linux RSS reader only where it is read
sunerpy Oct 18, 2026
c99e534
fix(resolve): a Dart value never calls a named constructor of its type
sunerpy Oct 18, 2026
bfdf7ab
docs(upstream): list the Dart value-call constructor rule as kept dif…
sunerpy Oct 18, 2026
0b00274
test(sync): a Liquid section or snippet links its file when it appear…
sunerpy Oct 18, 2026
04d5501
fix(sync): references through an import binding relink when the modul…
sunerpy Oct 18, 2026
33fff6d
fix(sync): retry a qualified reference when the module or mapper it n…
sunerpy Oct 18, 2026
1298c05
fix(sync): a call through a class name follows the supertypes its hea…
sunerpy Oct 18, 2026
f2d0700
fix(sync): re-resolve dependents when tsconfig paths, package.json de…
sunerpy Oct 19, 2026
0f58991
fix(sync): re-resolve Dart files when a pubspec changes
sunerpy Oct 19, 2026
3878d52
perf(resolve): keep name resolution linear when a repository repeats …
sunerpy Oct 19, 2026
aca3453
perf(sync): extract the dependent files of a sync in parallel
sunerpy Oct 19, 2026
0624b7c
perf(resolve): read a Lua require's candidate files once per pass
sunerpy Oct 19, 2026
890ff93
perf(store): read parked import keys before whole rows
sunerpy Oct 19, 2026
107d4b5
perf(cli): report a sync's changed files without reopening the index
sunerpy Oct 19, 2026
ab6e180
perf(store): keep resolved references so sync re-resolves dependents …
sunerpy Oct 19, 2026
4352730
perf(store): read the index into SQLite's buffer once when opening it…
sunerpy Oct 19, 2026
e18bf4b
style(cli): format the schema-9 fixture README
sunerpy Oct 19, 2026
56dda6c
perf(store): move resolved references in chunked set statements
sunerpy Oct 20, 2026
e3839db
fix(sync): compare a control file past 64 MiB by its whole text
sunerpy Oct 20, 2026
2b7c8e1
test(sync): add a matrix case for a control file past 64 MiB
sunerpy Oct 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 0 additions & 9 deletions .cargo/audit.toml

This file was deleted.

6 changes: 5 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,8 @@ jobs:

# FSEvents is the one native-recursive watcher backend no other job runs:
# Linux uses inotify and Windows ReadDirectoryChangesW. This job runs the
# symlink-following scan and watcher tests on macOS (#770).
# symlink-following scan and watcher tests on macOS (#770), and the burst
# that may drop or coalesce events (#1397).
macos-watcher:
name: macOS Watcher
needs: workspace-version
Expand Down Expand Up @@ -229,6 +230,9 @@ jobs:
cargo test -p codegraph-extract --locked --test scan_symlinks
cargo test -p codegraph-watch --locked symlink

- name: Run the event-loss convergence test
run: cargo test -p codegraph-watch --locked --test event_loss

ui:
name: UI
runs-on: ubuntu-24.04
Expand Down
75 changes: 33 additions & 42 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 6 additions & 6 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -75,12 +75,12 @@ indicatif = { version = "0.18", features = ["rayon"] }
jsonc-parser = { version = "0.34", features = ["cst", "serde"] }

# Self-update from GitHub Releases (mise-style `codegraph self-update`)
# self_update 0.43+ moved to quick-xml ^0.38 (fixes RUSTSEC-2026-0194/0195) and
# indicatif ^0.18; the builder API used by cmd_self_update is unchanged (no break
# until the 1.0.0-rc line). 0.44 also made the HTTP client optional: `reqwest` must
# be listed explicitly, and `rustls` gates on it (`reqwest?/rustls`), so keep both
# to get reqwest+rustls (no native-tls/OpenSSL) as before. Keep default-features=false.
self_update = { version = "0.44", default-features = false, features = ["reqwest", "rustls", "archive-tar", "archive-zip", "compression-flate2", "compression-zip-deflate"] }
# self_update 1.3.1 extracts zip archives through zip ^9 (RUSTSEC-2026-0367/0368/
# 0369 hit zip 6, which 0.44 required). Since 1.0 each backend, the progress bar
# and the tar.gz decoder are features of their own (`github`, `progress-bar`,
# `compression-tar-gz`), and quick-xml only comes with the `s3` backend. The HTTP
# client stays reqwest with rustls (no native-tls/OpenSSL). Keep default-features=false.
self_update = { version = "1.3.1", default-features = false, features = ["reqwest", "rustls", "github", "progress-bar", "archive-tar", "archive-zip", "compression-tar-gz", "compression-zip-deflate"] }

# Benchmarking
criterion = "0.8"
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ guardrail:

script-tests:
@for test_script in scripts/tests/*.test.sh; do \
echo "Running $$test_script"; bash "$$test_script"; \
echo "Running $$test_script"; bash "$$test_script" || exit 1; \
done

# Keep all supported local/CI entry points byte-for-byte equivalent in ordering.
Expand Down
1 change: 1 addition & 0 deletions crates/codegraph-bench/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ serde_json = { workspace = true }
anyhow = { workspace = true }
clap = { workspace = true }
rusqlite = { workspace = true }
sha2 = { workspace = true }
codegraph-core = { path = "../codegraph-core" }
codegraph-extract = { path = "../codegraph-extract" }

Expand Down
5 changes: 5 additions & 0 deletions crates/codegraph-bench/fixtures/commonjs/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
'use strict';

const app = require('./lib/app');

module.exports = app;
15 changes: 15 additions & 0 deletions crates/codegraph-bench/fixtures/commonjs/lib/app.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
'use strict';

const { default: Service } = require('./service');
const util = require('./util'),
format = require('./format');

function createApp() {
const service = new Service();
return util.wrap(format.title(service.name()));
}

module.exports = createApp;
module.exports.setCharset = function setCharset(value) {
return format.title(value);
};
7 changes: 7 additions & 0 deletions crates/codegraph-bench/fixtures/commonjs/lib/chain.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
'use strict';

const wrap = require('./util').wrap;

module.exports = function chain(value) {
return require('./format').title(wrap(value));
};
7 changes: 7 additions & 0 deletions crates/codegraph-bench/fixtures/commonjs/lib/format.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
'use strict';

function title(value) {
return String(value).toUpperCase();
}

module.exports = { title };
9 changes: 9 additions & 0 deletions crates/codegraph-bench/fixtures/commonjs/lib/service.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
'use strict';

class Service {
name() {
return 'service';
}
}

exports.default = Service;
5 changes: 5 additions & 0 deletions crates/codegraph-bench/fixtures/commonjs/lib/util.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
'use strict';

exports.wrap = function wrap(value) {
return '[' + value + ']';
};
8 changes: 8 additions & 0 deletions crates/codegraph-bench/fixtures/commonjs/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"name": "commonjs-fixture",
"private": true,
"main": "index.js",
"dependencies": {
"supertest": "6.3.0"
}
}
12 changes: 12 additions & 0 deletions crates/codegraph-bench/fixtures/commonjs/test/app.test.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
'use strict';

const request = require('supertest');
const createApp = require('../');
const { setCharset } = require('../lib/app');

describe('app', () => {
it('builds', () => {
request(createApp());
setCharset('utf-8');
});
});
26 changes: 26 additions & 0 deletions crates/codegraph-bench/fixtures/csharp/src/App/Nested.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
namespace Outer
{
namespace Inner
{
public class Deep
{
public void Dive() { Surface(); }
public void Surface() { }
}
}

public class Shallow
{
public void Call() { new Inner.Deep().Dive(); }
}
}

namespace JetBrains.Annotations
{
public class Guard { }
}

namespace Second
{
public class Two { }
}
12 changes: 12 additions & 0 deletions crates/codegraph-bench/fixtures/csharp/src/App/Partial.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
namespace App
{
public partial class Report
{
public void Render() { Header(); }
}

public partial class Report
{
private void Header() { }
}
}
Loading
Loading