v0.9.73
cloudflare/pingorav0.9.73Sep 30, 2026by safishamsi
Upgrading?
AI Summary
The release includes improvements to enum extraction across multiple languages, fixes Java inheritance resolution, and enhances parsing for Solidity and Astro files, along with performance optimizations.
Key Highlights
- Enum extraction expanded to Rust, Zig, C++, and Scala 3
- Java calls to inherited methods now resolve correctly
- Solidity file-level free functions are extracted
- Performance improvements for Neo4j/FalkorDB
- Astro files parsed correctly
New Features
- Enum extraction (Rust, Zig, C++, Scala 3)
- Solidity free functions
- Java inheritance resolution fix
Full Release Notes
- Feature: enum members are now extracted as nodes with `case_of` edges in four more languages — **Rust** enum variants (#3938), **Zig** enum members (#3940), **C++** `enum`/`enum class` enumerators including nested enums (#3939), and **Scala 3** enum cases plus their methods (#3937) — all thanks @rajatnagda45. - Fix: Java calls to inherited methods and `super.method()` now resolve to the declaring ancestor (walking the `inherits` chain, nearest declaration wins), instead of dangling; an unknown/external or ambiguous ancestor fails closed (#3932, thanks @janwaleed09). - Fix: semantic extraction warns once when a file exceeds the 20,000-character cap and is truncated, instead of silently dropping the tail (#3923, #3773, thanks @AK-Lmn). - Feature: Solidity file-level free functions (Solidity 0.7+, declared outside any contract) and their calls are now extracted (#3906, thanks @rajatnagda45). - Fix: VB.NET type/module-qualified calls (`MyModule.DoThing()`, `MyClass.SharedMethod()`) resolve to the target method; value-receiver and `MyBase.` calls fail closed (#3909, thanks @rajatnagda45). - Fix: Astro files are parsed correctly — only the frontmatter and `<script>` blocks are fed to the AST pass (the HTML template no longer produces parse errors), with line numbers preserved (#3902, thanks @Bosken85). - Fix: the "surprising connections" cross-repo/directory bonus now matches the reason it prints — two files at the scan root no longer falsely score as crossing repos (#3934, thanks @neo1777). - Fix: under `--exclude-hubs`, a node whose only neighbours are excluded hubs is kept with its hub's community instead of being severed into a singleton; the default path is unchanged (#3933, thanks @neo1777). - Perf: the Neo4j/FalkorDB `--push` path creates a per-label id index before the node upsert loop, fixing the throughput collapse on large graphs (#3957, thanks @Yi-111-a). - Fix: community labeling keeps the labels it already named when a nested retry fails to parse, instead of discarding the whole batch (#3956, thanks @Vikram-Lex). - Fix: `graphify hook status` reports hooks written by an older release as out of date (run `graphify hook install` to refresh) (#3951, #3771, thanks @bercedev). - Fix: a Rust virtual-workspace-root `Cargo.toml` (only `[workspace]`, no `[package]`) is treated as skipped-by-design rather than warned as zero-node (#3930, #3910, thanks @Adityakk9031). - Fix: when the instructions file (`CLAUDE.md` etc.) is a symlink, install reports the real target it wrote to, and uninstall keeps the symlink (strips only the graphify section) instead of deleting the link (#3950, #3953, #3805, thanks @bercedev).
Related Repositories
A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io
An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.
Build smaller, faster, and more secure desktop and mobile applications with a web frontend.
π RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection — all without a single pixel of video.
Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one