Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Interested in any of the bompus/codegraph fork's work?

Aperta
#2,332 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
15/100
Tipo di issue
Funzionalità
Chiarezza
Da chiarire
Stato di attività
Attiva
Stack tecnologico
bun, node.js, rust
Ambito
tooling

Direzione di ricerca

Start with the fork’s README sections “About this fork” and “What the fork adds,” then read docs/benchmarks/fork-vs-upstream-node-bun-2026-10-03.md for the comparison details. The issue asks which changes the maintainer would consider, not for a defined implementation; wait for a decision before choosing work, since there is no concrete completion criterion yet.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Hi Colby,

I maintain bompus/codegraph, a fork that tracks main (merged through 6560052a, 1.6.2). Small fixes from it go to you as PRs, and thanks for carrying #2097 onto main as #2284. The rest has grown to about 530 commits, which is too much to send as PRs without asking first. So I'm asking: is any of it something you'd want, and in what shape? "None of it" is a fine answer, and the fork will keep going either way.

The fork's README has a section comparing it with main: About this fork. The short version:

No WebAssembly. Every language is parsed in the Rust kernel, and the WebAssembly parser and its fallback are gone. A file with syntax errors is extracted from the native parser's error recovery instead of being handed to a second parser. Name resolution for TypeScript/JavaScript, Python, Go, Java, Kotlin, PHP, C, C++, Rust and ArkTS also runs in the kernel. The cost: a platform without a prebuilt kernel needs a Rust toolchain. Details: Parsing, resolution and languages.

Newer Node.js and Bun. The fork runs on Node.js 22.13 and newer, including 25 and 26, and on Bun 1.4. main refuses Node 25 and newer, and refuses Bun because Bun reports itself as Node 26. The full test suite passes on Node 24.21.0, and passed on Node 26.10.0 and Bun 1.4.2 when last run on all three (2026-09-28). The floor is 22.13 because that is the first release with node:sqlite unflagged, so Node 20 and early 22 releases no longer work.

Speed and memory. These numbers are from the README's Measured results, measured 2026-10-03 against main at 6560052 (1.6.2) on a 16-vCPU WSL2 host. Index times are the median of two runs, sync times the median of four.

main, Node 24 fork, Node 24 fork, Bun 1.4
Full index, n8n (24,434 files) 168.9 s, 9.45 GiB peak 78.4 s, 6.33 GiB 79.1 s, 5.76 GiB
Full index, CPython (3,708 files) 94.7 s, 8.34 GiB 45.5 s, 6.41 GiB 45.1 s, 5.73 GiB
One-file sync, n8n 13.2 s 4.38 s 4.06 s
One-file sync, CPython 8.30 s 4.67 s 4.97 s
MCP server at idle, n8n 4.77 GiB 2.07 GiB 1.22 GiB
codegraph explore from the CLI, gin 224 ms 121 ms 99 ms

On Bun, peak index memory is 8 to 27% lower than on Node and the idle MCP server holds 37 to 41% less. Eight concurrent explores on n8n take 12% longer on Bun; contention between worker threads reading through Bun's SQLite is the suspected cause (oven-sh/bun#44084). A new git worktree is ready to query in 0.8 to 0.9 s, seeded from a sibling worktree's index, against 5.8 to 6.1 s for a full index. On 120 hand-graded call links from repowise, 73% of the links the fork keeps are correct (52 of 71), against 56% for main (48 of 85); most of that comes from declining uncertain links, not from resolving more. The method and scripts are in docs/benchmarks/fork-vs-upstream-node-bun-2026-10-03.md.

Python indexing got slower between 290e03f and 1.6.2. On the same host, main at 290e03f indexed pretix in 8.81 s and 9.13 s, and at 6560052 in 19.88 s and 19.86 s, with 104,109 edges against 81,229. CPython went from 35.6 s to 94.7 s across the two benchmark runs, though I only checked pretix on one host. I haven't bisected the 194 commits in between; I can if that helps.

Features main doesn't have. The README's What the fork adds lists them. They are session search over earlier agent transcripts (codegraph sessions, codegraph_sessions), markdown indexing, near-duplicate functions, change questions answered from a diff, worktree seeding, external HTTP endpoints, dispatch links for C function pointers, Drupal hooks, NgRx effects, React Native native modules and window.postMessage, and a Devin install target.

Questions

  1. Would you consider dropping the WebAssembly parser, or running resolution in Rust? If not, would you want the gains ported into your kernel's current structure instead?
  2. Would you take the Node.js 25+ and Bun support on its own?
  3. Which of the features, if any, interest you?
  4. Would you rather get work as small PRs you re-land, as you've been doing, or as a branch you pick commits from?
  5. I'm closing my open PRs that are too big to review unasked or that main has since covered, and pointing them here. Of those still open, the smallest are #2306 (a follow-up to your #2283), #1764, #1972, #1983 and #1989, each under 100 lines.

Happy to re-run the benchmarks against current main, or answer anything here.

Lingua principale
C
Stelle
73.2k
Fork
4.7k
Merge medio
2h 16m
PR unite (30g)
423

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di colbymchenry/codegraph

Tutte le issue di colbymchenry/codegraph

Issue simili

Altre issue su C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.