Skip to content

v1.9.0: Sharpen Every Edge

Choose a tag to compare

@Anandb71 Anandb71 released this 12 Apr 17:03
· 165 commits to main since this release
0304988

Arbor v1.9.0 is a major hardening release focused on correcting structural assumptions, securing deployments, and preventing graph metadata corruption. This closes multiple critical execution bugs while adding multi-core indexing optimizations for significantly faster operation on massive repos.

Critical Safety & Correctness

  • Graph Integrity: Addressed a critical flaw where node removals silently invalidated internal petgraph indices within file_index, name_index, and id_index. Incremental updates are now structurally sound and panic-safe.
  • Sync Server Security: Hardened the WebSocket server in headless mode (0.0.0.0). Server metadata now enforces strict access scopes, blocking unauthorized external polling.
  • Impact Analysis: Modified get_dependents() to utilize true Breadth-First Search (VecDeque::pop_front), finally guaranteeing that dependency hop-distance reporting is 100% accurate.
  • Expanded Edges: Callers and callees impact pipelines no longer arbitrarily drop Imports, Extends, Implements, or UsesType mapping edges.
  • Complete Exports: Graph JSON exports now properly package routing edges.

Performance & Mechanics

  • Parser Convergence: Fully mitigated legacy parser path divergences. C# no longer silently drops, ensuring parity with the high-performance parser_v2.
  • Parallel Indexing: The arbor-watcher tree-sitter ingestion path now spins up rayon threaded parsing, slicing large-repo ingestion times in half.
  • Metadata & Tooling: Ripped out hardcoded language scopes across API capabilities entirely, swapping to central runtime derivations for GUI and HTTP/MCP capability syncs.

CI / CD Enhancements

  • Fixed widespread version tracking discrepancies across manifests, package registries, Homebrew/Scoop, and Cargo.toml.
  • Hardcoded runtime configurations ("Arbor v1.5") completely scrubbed out of the primary binaries.
  • Prevented peter-evans/create-pull-request@v7 and actions/github-script@v8 syntax anomalies from triggering silent CI dropouts.

🤖 Arbor MCP Quick Install

Use Arbor as a local MCP server in your AI client:

Claude Code (project-scoped)

claude mcp add --transport stdio --scope project arbor -- arbor bridge
claude mcp list

In Claude Code, run:

/mcp

Cursor MCP config (.cursor/mcp.json)

{
  "mcpServers": {
    "arbor": {
      "command": "arbor",
      "args": ["bridge"]
    }
  }
}

VS Code MCP config (.vscode/mcp.json)

{
  "servers": {
    "arbor": {
      "type": "stdio",
      "command": "arbor",
      "args": ["bridge"]
    }
  },
  "inputs": []
}

MCP Directories

Arbor v1.9.0

Installation

# Cargo
cargo install arbor-graph-cli --version 1.9.0

# Homebrew (macOS/Linux)
brew install Anandb71/tap/arbor

# Scoop (Windows)
scoop bucket add arbor https://github.com/Anandb71/arbor
scoop install arbor

# npm
npx @anandb71/arbor-cli

# Docker
docker pull ghcr.io/anandb71/arbor:v1.9.0

Assets

Platform Architecture File
Linux x86_64 arbor-linux-x86_64.tar.gz
Linux aarch64 arbor-linux-aarch64.tar.gz
macOS x86_64 arbor-macos-x86_64.tar.gz
macOS Apple Silicon arbor-macos-aarch64.tar.gz
Windows x86_64 arbor-windows-x86_64.zip

What's Changed

Full Changelog: v1.8.0.1...v1.9.0