github abhigyanpatwari/GitNexus v1.6.11

3 hours ago

GitNexus v1.6.11

The live-index release. Zig is a first-class language, analyze --watch and gitnexus auto-sync keep an index current without a restart, and every human-facing surface now tells you when a newer version exists — while Spring modeling grows destinations, Kotlin routes and Lombok accessors, and group gains AsyncAPI, GraphQL and generated-client contract surfaces. 64 commits since v1.6.10.

✨ Highlights

  • Zig is a supported language — functions, methods, structs/enums/unions, @import / build.zig modules / build.zig.zon path deps, and receiver-bound CALLS. comptime-false branches mark CALLS as staticGated. The grammar is an optional dependency, so a missing native binding skips .zig files instead of failing install. (#1432, #3161)
  • 🔔 Update notifications — cache-first npm latest check with one stderr line on interactive CLI, a doctor line, one MCP process log, and a dismissible web banner from /api/info. Silent for npx, dev checkouts and Docker; opt out with GITNEXUS_NO_UPDATE_NOTIFIER. gitnexus update installs the latest globally. (#3175)
  • 👀 Two watch modes, namedanalyze --watch keeps a local Git repository index current with debounce and last-good graph on failure; gitnexus auto-sync clones/pulls remotes on a schedule from GITNEXUS_HOME/watch_config.yml. Bare gitnexus watch prints the split and starts neither. (#3072, #2493)
  • 🍃 Spring / JVM modeling goes further — vendor-suffix mapping annotations, messaging destinations, Kotlin decorator routes and config consumers, optional Actuator runtime import, SpringContextUtil.getBeans dynamic lookups, Lombok and Kotlin accessor synthesis, and Java static-wildcard / Kotlin star-import folding for route constants. (#2883, #3132, #3133, #3126, #3107, #2886, #2885, #3110, #3059)
  • 🧭 More contract and route surfaces — AsyncAPI 3.x Destination nodes, wrapped-client HTTP consumers, GraphQL cross-repo contracts, PHP generated-client Request(method, host + resourcePath) consumers, and a wiki grok local CLI provider. (#3140, #3111, #3070, #3079, #3069)
  • 🛡️ Reliability — incremental analyze reuses derived layers it can, impact File risk is comparable via shared axes, group degraded links and UID-only impact actually work, grep honors regex / fileFilter / caseSensitive, and the serve MCP route accepts optional bearer auth. (#3016, #3102, #3075, #3082, #3113, #3109, #3100)

🚀 Added

  • Zig is a supported language — functions, methods, structs/enums/unions, relative and build.zig / build.zig.zon imports, and CALLS including receiver-bound dispatch. comptime-false branches mark CALLS as staticGated. The grammar is an optional dependency, so a missing native binding skips .zig files instead of failing install (#1432, #3161)
  • Update notifications — cache-first npm latest check with one stderr line on interactive CLI, a doctor line, one MCP process log, and a dismissible web banner from /api/info. Silent for npx, dev checkouts, and Docker; opt out with GITNEXUS_NO_UPDATE_NOTIFIER (#3175)
  • gitnexus auto-sync — scheduled SSH clone/pull and analyze from GITNEXUS_HOME/watch_config.yml. gitnexus watch is reserved and prints the split with analyze --watch (#2493)
  • analyze --watch — local incremental re-index with debounce, serialized writers, and last-good graph on failure (#3072)
  • --no-parse-cache forces a cold parser rebuild on analyze (#3153)
  • Spring / JVM modeling — vendor-suffix mapping annotations (#2883), messaging destinations (#3132), handler annotation arguments and template publishes (#3128), Kotlin decorator routes and config consumers (#3133, #3126), optional Actuator runtime import (#3107), SpringContextUtil.getBeans dynamic lookups (#2886), Lombok and Kotlin accessor synthesis (#2885), and Java static-wildcard / Kotlin star-import folding for route constants (#3110, #3059)
  • More contract and route surfaces — AsyncAPI 3.x Destination nodes (#3140), wrapped-client HTTP consumers with leading-prefix template stripping (#3111), GraphQL cross-repo contracts (#3070), and PHP generated-client Request(method, host + resourcePath) consumers (#3079)
  • Wiki grok local CLI provider (#3069)
  • Optional bearer auth on the serve MCP route (#3100)

🐛 Fixed

  • Web UI is built from prepack, not on every npm ci (#3166)
  • analyze --watch no longer drops events across a gitignore reload (#3159)
  • detect_changes does not call a zero-symbol result a clean tree (#3138)
  • includeTests is honored for C#, Java, Swift and PHP test paths (#2866)
  • Decorator routes connect to their handler function (#2865)
  • Analyze no longer clobbers customized GitNexus skills (#3124)
  • Generated agent block requires graph tools on structural reads (#3125)
  • group degraded links, sync warnings and UID-only impact actually work (#3113); Maven child coordinates parse independently of parent POMs (#3108); ambiguous sync names fail closed and analyze --name is honored (#3094)
  • Grep tool honors regex, fileFilter, and caseSensitive in serve and the web UI (#3109)
  • Razor ViewComponent names bind to in-repo classes (#3104)
  • Incremental analyze skips derived layers it can reuse (#3016, #3102)
  • Parse-cache chunks are stable and ParsedFile loads are cheaper (#3093)
  • MCP omitted repo resolves from cwd (#3085)
  • status judges freshness by covered files, not a dirty working tree (#3083)
  • impact File risk is comparable via shared axes (#3075, #3082), repo-relative paths resolve through filePath (#3074, #3084), and scope-extraction omissions are reported (#3071)
  • Cursor hooks preserve quoted shell search patterns (#2938)

🔧 Changed

  • gitnexus watch is reserved — it prints the split between analyze --watch (local) and gitnexus auto-sync (remote) and starts neither (#2493, #3072)
  • Web UI assets are built from prepack, not as a side effect of every npm ci (#3166)

⚡ Performance

  • Six equivalent redundancies dropped on the Java-scale emit path (#3129)
  • V8 sidecars plus hardlinked ParsedFile restore (#3099)
📦 Chore / Dependencies — ~20 dependency & CI-action bumps

📥 Upgrade

npm install -g gitnexus@1.6.11

Or, on an existing global install: gitnexus update.

Then re-index — this release adds Zig, Spring destinations, Kotlin decorator routes and new contract surfaces, so an existing index will not carry those edges:

gitnexus analyze

There are no breaking changes relative to v1.6.10. The Node floor stays ^22.18.0 || >=24.11.0.

Full changelog: v1.6.10...v1.6.11

Don't miss a new GitNexus release

NewReleases is sending notifications on new releases.