Repository navigation
v0.1.3
v0.1.3: The Performance & Dependency Injection Update ⚡
This is a massive update for Graphyn that brings up to a 20x performance increase for large repositories, first-class support for Dependency Injection (DI) frameworks (like NestJS/Angular), and critical stability fixes for Windows users.
✨ Highlights
- Parallel Parsing: Dropped analysis time for 1,000+ file projects from ~10 minutes to under 30 seconds.
- DI & Decorator Tracking: Graphyn now perfectly tracks
this.service.method()property accesses originating from constructor-injected dependencies. - Rock-solid Windows Support: Fixed RocksDB path crashes and glob pattern matching on Windows machines.
- Agent Setup Pack: Added pre-built
.mdrule files for Cursor, Claude, Copilot, and Gemini.
🚀 New Features
- Constructor Injection Tracking: Graphyn now parses constructor parameters (e.g.,
constructor(private userRepo: UserRepository)) and accurately mapsthis.userRepo.findById()calls to the underlying class. This eliminates blind spots in DI-heavy TypeScript codebases. - Decorator Support: AST extraction now parses
@Module({ providers: [...], controllers: [...] })arrays, automatically creatingUsesTypedependency edges for framework wiring. - Method-Level Tracking: Queries like
blast-radiusanddepsnow accurately traverse individual method-level relationships instead of just falling back to the parent class. - Agent Setup Pack: Added the
agent-configs/directory containing out-of-the-box system instructions (AGENTS.md,.cursorrules,CLAUDE.md, etc.) to instantly teach your AI agents how to query Graphyn via MCP.
⚡ Performance
- Parallel AST Parsing: Replaced sequential loops with
rayon, maxing out all CPU cores to parse files simultaneously. - Zero-Syscall Probing: Replaced hundreds of thousands of expensive disk syscalls (
.is_file()) with anO(1)memory lookup (HashSet), dramatically speeding up local import resolution. - Eager Barrel Expansion: Pre-computes and caches
export *paths upfront, eliminating exponential lookup loops when resolving imports across massive barrel files.
🐛 Bug Fixes
- Windows RocksDB Crash (CRITICAL): Safely strips
\\?\and\\?\UNC\extended-path prefixes from Windows paths before they hit RocksDB, preventing mixed-separator crashes when writing to the DBLOGfile. - Glob
--includeFilters (CRITICAL): Fixed an issue where the directory walker failed to descend into matching paths on Windows, resulting in0 files parsed. - Zero-File Warnings:
graphyn analyzenow exits gracefully with a helpful warning and troubleshooting tip if your--include/--excludefilters result in 0 files. - Cleaned CLI Output: Removed ugly UNC path prefixes from terminal output on Windows.
- Ambiguous Symbol UX: Improved error messages to explicitly suggest querying by
ClassNameif a method name query is ambiguous. - Intel Mac Installer: Updated the install script to clearly direct
x86_64macOS users to thecargo installfallback.
📦 How to Upgrade
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/JeelGajera/graphyn/master/install.sh | bashWindows (PowerShell):
irm https://raw.githubusercontent.com/JeelGajera/graphyn/master/install.ps1 | iexCargo:
cargo install graphyn-cli --git https://github.com/JeelGajera/graphyn --forceFull Changelog: v0.1.2...v0.1.3