v0.9.7
Graphify-Labs/graphifyv0.9.7Jul 6, 2026by safishamsi
AI Summary
Enhancements to Ruby extraction, extraction of extensionless shebangs, new rationale/comment nodes for JS/TS, and fixes for incremental detection and Windows path handling.
Key Highlights
- Ruby `include`/`extend`/`prepend` now emits `mixes_in` edges.
- Extensionless shebang CLIs (e.g., `devctl`) are now extracted.
- JS/TS rationale comments and ADR citations become `rationale`/`doc_ref` nodes.
- Word counts are cached against file stat signatures to avoid re-parsing unchanged PDFs.
New Features
- Ruby mixin edges for concerns and modules.
- Extraction of extensionless shebang scripts.
- Conversion of comments to rationale nodes.
- Filtering of Java standard-library type noise.
- Incremental detection for Word/Excel files.
- Windows long path (>260 chars) support.
Full Release Notes
graphify 0.9.7 — 17 fixes and features since 0.9.6. ## Ruby - `include`/`extend`/`prepend <Module>` now emits `mixes_in` edges (#1668), so Rails concern composition is visible to `affected`. - `affected <Class>` reaches callers that bind to a class's method nodes (#1669), seeding the reverse walk from the root's members (one method/contains hop). ## Extraction - Extensionless shebang CLIs (`devctl`, `manage`) are now extracted instead of silently dropped (#1683, @Stashub). - JS/TS rationale comments (`// NOTE:`) and ADR/RFC citations become `rationale`/`doc_ref` nodes, matching Python (#1599, @niltonmourafilho-arch). - Java standard-library types (`String`, `List`, `Optional`, ...) no longer emitted as `references` noise (#1603, @NydiaChung). - New `pascal` optional extra for AST-quality Delphi extraction (#1616, @vinicius-l-machado). - JS/TS calls with no local definition and no import no longer bind to a same-named export in an unrelated package (#1659, @leonaburime-ucla). - Case-insensitive file-extension dispatch, so `App.PY`/`script.JS` are no longer skipped (#1671, @raman118). ## Incremental / detect - A modified `.docx`/`.xlsx` now re-enters `--update` (#1649, @Ns2384-star). - Windows long paths (>260 chars) are now hashed (#1655, @Ns2384-star). - Word counts are cached against each file's stat signature, so unchanged PDFs/docx are not re-parsed on every run (#1656, @Ns2384-star). - An extractable source file that produces zero nodes is no longer cached and is surfaced with a warning (#1666, @krishnateja7). ## Windows / reports / misc - Windows skill declares `name: graphify` (folder-name rule) (#1635, @ray8875); OpenCode plugin uses `;` not `&&` for PowerShell 5.1 (#1646, @gonaik); `GRAPH_REPORT.md` Import Cycles section only shown for code corpora (#1657, @Ns2384-star). - Virtual PostgreSQL URI no longer backslash-mangled on Windows (#1672, @raman118); deferred `import()` no longer reported as a file cycle (#1241, @Synvoya). See the [CHANGELOG](https://github.com/Graphify-Labs/graphify/blob/v8/CHANGELOG.md) for full detail. Thanks to everyone who filed issues and sent PRs.