Commit Graph
334 Commits
Author SHA1 Message Date
safishamsiandClaude Opus 4.8 6996bcd338 chore(release): 0.9.90
Fourteen community pull requests: C# call-resolution and id-collision
fixes, Python/Go/dedup correctness, a hub-label sidecar, a post-merge
heal hook, and query/build fixes. The AST cache schema is bumped (now
15), so the first build after upgrading re-extracts.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-13 23:01:41 +01:00
safishamsiandClaude Opus 4.8 e8eb76e797 chore(release): 0.9.89
Sixteen community pull requests: cross-repo member-call resolution
(Go/PHP/TS/Kotlin/ObjC), generic/template type-param cleanup
(Kotlin/Scala/C++/Swift), an Objective-C enum extractor, interface
dispatch fan-out, a native Pi guard extension, and resolution/ingest
fixes. The AST cache schema is bumped (now 13), so the first build
after upgrading re-extracts.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-13 11:27:05 +01:00
Andre Brait 3b3ad322a6 feat(pi): add a native Pi guard extension that also loads in Oh My Pi
Pi has no PreToolUse hook, so the installed hook-guard policy never ran
there. graphify/pi/ ships a Pi package (Node built-ins only, no
node_modules) that runs `graphify hook-guard read|search` before Pi's
read, grep, find and search-style bash calls: strict-mode denials become
tool_call blocks, and guidance arrives as a graphify system reminder.
Only local targets inside the project are checked, the hook uses the first
`graphify` on PATH outside the project, and every call is bounded and
fails open.

`graphify pi guard install|uninstall` delegates registration to Pi's own
`pi install|remove <dir>`; `graphify pi guard path` prints the package
directory. Oh My Pi reads the same `pi` manifest key, so
`omp plugin install "$(graphify pi guard path)"` loads it there too,
where guidance uses OMP's passive tool-call context channel.

(cherry picked from commit a6281363bb)
2026-10-13 10:27:02 +01:00
safishamsiandClaude Opus 4.8 a9860f70dc chore(release): 0.9.88
Twenty community pull requests: Java/C-C++/Python/Swift/Go/PowerShell/C#
/JS extraction and call-resolution fixes, EJS extractor, dedup and
shrink-guard hardening, and query/graph.html ergonomics. The AST cache
schema is bumped (now 12), so the first build after upgrading
re-extracts.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-12 23:05:07 +01:00
safishamsiandClaude Opus 4.8 7536dc0665 chore(release): 0.9.87
Eighteen community pull requests: PHP/C#/Python/TypeScript/Julia
extraction fixes, retrieval and watch hardening, skill and benchmark
correctness. The AST cache schema is bumped (C# type_path, Python
property reads), so the first build after upgrading re-extracts.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-12 14:55:03 +01:00
safishamsiandClaude Opus 4.8 a5ba60ddf6 release: 0.9.86
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-11 21:17:07 +01:00
safishamsiandClaude Opus 4.8 3f8260fcc3 release: 0.9.85
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-10 21:53:48 +01:00
safishamsiandClaude Opus 4.8 effee34d33 release: 0.9.84
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-10 01:01:40 +01:00
safishamsiandClaude Opus 4.8 89db93508b release: 0.9.83
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-09 19:20:04 +01:00
safishamsiandClaude Opus 4.8 5b74d7d749 release: 0.9.82
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-09 02:51:25 +01:00
safishamsiandClaude Opus 4.8 622474b8ec release: 0.9.81
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-08 14:30:33 +01:00
safishamsiandClaude Opus 4.8 406feee4ae release: 0.9.80
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-07 17:28:54 +01:00
JFWaskinandClaude Opus 4.8 69c528eb37 fix(deps): raise tree-sitter runtime floor to >=0.25 for ABI 15 grammars (#4148)
0.23/0.24 cap at ABI 14 while pinned grammars ship ABI 15, so a resolver could
pair a 0.23 runtime with ABI-15 grammars and fail every parse. Floor at 0.25,
the oldest runtime that loads them (uv.lock already resolves there). Lock
regenerated on 0.9.80.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-07 17:27:40 +01:00
safishamsiandClaude Opus 4.8 f765dcb341 release: 0.9.79
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-06 22:37:19 +01:00
safishamsiandClaude Opus 4.8 397d025f7b release: 0.9.78
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-06 20:55:39 +01:00
safishamsiandClaude Opus 4.8 5c7b84792f release: 0.9.77
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-05 20:13:41 +01:00
safishamsiandClaude Opus 4.8 0010e25d0d release: 0.9.76
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-04 21:02:57 +01:00
Syed Fahad c37be6169c chore(packaging): point the PyPI homepage at graphify.com
The PyPI page listed the GitHub repo as both Homepage and Repository, so
nothing on PyPI linked to the project's website or docs. Homepage is now
graphify.com, docs.graphify.com is listed as Documentation, and Repository
still points at GitHub.

(cherry picked from commit 25a73bcaa6)
2026-10-04 21:02:36 +01:00
safishamsiandClaude Opus 4.8 48d7c0e832 release: 0.9.75
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-04 02:19:53 +01:00
safishamsi e10df08877 release: 0.9.74 2026-10-02 17:20:19 +01:00
safishamsiandClaude Opus 4.8 29eaf12174 release: 0.9.73
Rust/Zig/C++/Scala enum members as case_of nodes (#3938/#3940/#3939/#3937),
Java inherited + super call resolution (#3932), and a warn-once on
semantic file truncation (#3923).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-30 20:30:54 +01:00
safishamsiandClaude Opus 4.8 4d01104edf release: 0.9.72
Atomic label sidecars (#3853), docx table/all-text extraction (#3833),
wiki index-collision (#3818) and escaped wikilink aliases (#3772),
community-listing real-node filter (#3836), warn-once on missing pypdf
extra (#3710), plus the --help logo banner + app.graphify.com line.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-28 10:37:24 +01:00
safishamsiandClaude Opus 4.8 d6eaa8aae8 release: 0.9.71
SQL triggers (#3863), Groovy enums (#3861), R namespace-qualified
constructors (#3864) and R6 self$/private$ calls (#3865), markdown
wikilink index ignore-rules (#3826), foreign manifest key syntax (#3879),
tweet oEmbed host-only rewrite (#3880), and the refreshed install banner
(#3892).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-28 09:25:35 +01:00
safishamsiandClaude Opus 4.8 4df8d4dcfa release: 0.9.70
Security: close the Fortran cpp #include arbitrary-file-read
(GHSA-pcc4-rvhr-2pr8), the last Aider/Devin monolith --watch shell sink
(#3852), and terraform name/value secret redaction (#3870). Plus Windows
watch rebuild locking (#3883), C# tuple element-name refs (#3877), JSX
component-usage calls (#3855), and nested scan-root Python import
projection (#3867).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-27 19:15:46 +01:00
safishamsiandClaude Opus 4.8 4139885a12 release: 0.9.69
Five language-extractor enrichments (OCaml/Elixir/Fortran/Julia methods,
protocols, type-bound procs, macros/@enum, Kotlin annotations+ctor props),
tsconfig references alias resolution, spawn-safe process-pool skip,
self-loop-preserving dedup, host-based URL classification, incremental
cache_root forwarding, deterministic manifest tie-break, and a
contributor-guide/community-health docs overhaul.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-26 14:02:32 +01:00
safishamsiandClaude Opus 4.8 4000de1546 release: consolidate unreleased 0.9.69 into 0.9.68
0.9.68 was bumped locally but never published to PyPI (latest published
is 0.9.67), so fold the second triage round's five PRs into a single
contiguous 0.9.68 release rather than skipping the number. No PyPI gap.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-25 16:33:01 +01:00
safishamsiandClaude Opus 4.8 636f2fe08a release: 0.9.69
Complete the skillgen --watch INPUT_PATH injection fix in the add-watch
reference (#3742), preserve cross-file edges on incremental update
(#3812), stop C# type references resolving to same-named non-type nodes
(#3815), prefer a real source location over richness in dedup (#3786),
and resolve Maven inherited groupId + ${...} properties in pom.xml
(#3823).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-25 16:22:25 +01:00
safishamsiandClaude Opus 4.8 d197ae36fa release: 0.9.68
Windows hash-seed re-exec wait (#3816/#3799), Terraform secret-named
variable-default/output redaction (#3817), COBOL fixed-format
sequence-number detection (#3813) and PERFORM...THRU both-endpoint
linking (#3814), and gate the GRAPH_REPORT undocumented-components
reason on a real semantic layer (#3828/#3801).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-25 15:54:48 +01:00
safishamsiandClaude Opus 4.8 4c735618f3 release: 0.9.67 — Windows hash-seed re-exec fix, PHP closures, absolute Python import resolution, package/module phantom-cycle fix, terraform list-secret redaction, idempotent wiki/Obsidian writes
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-23 20:23:51 +01:00
safishamsiandClaude Opus 4.8 a5957aa6ef release: 0.9.66 — five new language extractors (COBOL/VB.NET/R/Solidity/Erlang), deterministic PYTHONHASHSEED builds, Go interface + Rust generic resolution, Cargo workspace/subdir handling, method-ghost dedup, serve id-aliases, install CRLF fix, labeling retry, stale-root fallbacks
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-22 22:39:40 +01:00
Abdullah 89c27c7b80 feat: add Erlang language extractor
(cherry picked from commit 3a92853329)
2026-09-21 19:19:26 +01:00
Abdullah 9f069eafea feat: add Solidity language extractor
(cherry picked from commit 41a1575e5e)
2026-09-21 19:13:40 +01:00
Abdullah d68d6012bd feat: add R language extractor
(cherry picked from commit 250395de31)
2026-09-21 19:10:13 +01:00
Abdullah ebe1f32c81 feat: add VB.NET language extractor
(cherry picked from commit 304c82fe10)
2026-09-21 19:06:50 +01:00
safishamsiandClaude Opus 4.8 7ca736cf94 release: 0.9.65 — Pillow CVE floor, Go/Swift/Java/Verilog extractor fixes, JS block scoping, fail-closed eviction deadlock fix, vis-network crash + tooltip encoding, repo-link/docs cleanup
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-20 18:46:53 +01:00
viral-antuit 5f6b2a2e83 fix: security pillow updated to 12.3.0 for cve-2026-54058
(cherry picked from commit adaedf5c5e)
2026-09-20 18:00:48 +01:00
safishamsiandClaude Opus 4.8 b9cd957072 release: 0.9.64 — terraform block attributes (with secret redaction), JS in PHP script blocks, rust generic-impl self calls, kotlin/C++ cross-file member calls, npm subpath imports, stale-analysis reconstruct, markdown-family reconcile, external-vs-dangling diagnostics
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-18 22:16:16 +01:00
safishamsiandClaude Opus 4.8 eaaec1abd9 release: 0.9.63 — elixir cross-file alias/import resolution, rust self.method() across files, ruby inherited member calls, external import stub nodes (no more dangling graph.json endpoints), markdown mention edges survive rebuilds
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-09-16 16:51:37 +01:00
safishamsi e4399cb9ca release: 0.9.62 — sourceless-stub calls, module-level closure calls, C# cross-repo scoping, lua bare require, tokens secret FP, guard-hook timeout 2026-09-13 22:53:43 +01:00
safishamsi fe66389083 release: 0.9.61 — fix Python 3.12/3.13 breakage from 0.9.60
- chinese extra: pin jieba-py from 3.12 (was 3.14); jieba's invalid escapes are
  a hard error on 3.12+ and broke graphify.serve import.
- serve.py: suppress the tokenizer SyntaxWarning by category so -W error can't
  escalate it; catch SyntaxError as a fallback.
- hooks.py: harden the #3492 rebuild-root guard for 3.13, whose resolve() no
  longer raises on a symlink loop — require a real directory.
Verified full suite green on both 3.10 (5628) and 3.13 (5627).
2026-09-12 22:23:00 +01:00
safishamsi 7464f5b125 release: 0.9.60 — Windows os.replace fallback, unclassified-file surfacing, C/C++ newline parse, Office sidecar fix, exported-function call resolution, workspace export conditions, Python 3.14 support 2026-09-12 21:54:14 +01:00
taazbro 0fc31470b0 fix: raise vulnerable dependency floors
(cherry picked from commit 7590ec5856)
2026-09-12 21:33:43 +01:00
taazbro b42e5bc5c2 fix: support Python 3.14 optional dependencies
(cherry picked from commit 76bb841de0)
2026-09-12 21:33:43 +01:00
safishamsi 522ea9662e release: 0.9.59 — incremental dedup node-loss fix, pool-start fallback, 47% faster Python resolution, explain path::Symbol, hook rebuild-root clamp 2026-09-12 15:17:30 +01:00
safishamsi 23f2ffaa43 release: 0.9.58 — python/php/bash import resolution, dedup source-path normalization, SQL indexes, rust statics, install/labelling robustness, all-extra psycopg 2026-09-10 23:19:02 +01:00
L4XB fc179f3394 fix(packaging): include psycopg[binary] in the all extra
The postgres extra's psycopg[binary] was the sole dep missing from all; a new
union test guards the all-extra against future drift. (#3483)
2026-09-10 23:05:04 +01:00
safishamsi 3f82bf7f83 release: 0.9.57 — incremental cross-file merge fix, richer dedup survivor, C# generic call sites, JS this-member forms 2026-09-09 13:00:13 +01:00
safishamsi 67f99bd005 release: 0.9.56 — rust trait methods, Windows temp-path bound, hook-skip subshell, @/ + Node subpath imports, undirected MCP query, builtin member calls, worker cleanup, TS normalizer perf, Dart source_location 2026-09-07 20:47:42 +01:00
safishamsi c9f9901877 release: 0.9.55 — leading-comment docstrings, underscore-id collisions, ghost source_file, owned type-use sources, no-cluster labels, named re-exports, entity dedup, TS runtime imports, json_config edges, claude-cli preamble, watch semantic flag, mcp stdin 2026-09-05 22:15:39 +01:00
safishamsi 937e59a547 release: 0.9.54 — dup-edge collapse, unique memory-doc names, top-level hyperedge export, rationale scoring tier, atomic version/canvas writes, tomli runtime dep 2026-09-05 01:26:20 +01:00