You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Feature: Elixir alias/import/require/use targets now resolve onto the module's defmodule node across files, so the internal module dependency graph is no longer dropped as dangling. Only top-level modules are indexed (a nested defmodule, labeled with its bare inner name, cannot capture an unrelated use <Name> from another file), and a same-file reference is left unresolved so it cannot clobber the structural contains edge (#3603, thanks @ayushcodes10).
Feature: a Rust self.method() call now resolves to a method defined on the same type in another file (the common split-impl-block layout), pooling methods across every impl of one type and refusing to link when two unrelated types share a bare name (#3602, thanks @ayushcodes10).
Feature: a Ruby member call obj.foo on a known-type receiver now resolves to a method foo inherited from a superclass, including across files, using the same conservative promotion as the implicit-self resolver — a single owning class, matching method kind, and one unambiguous ancestry chain, or it stays dangling (#3585, thanks @oleksii-tumanov).
Fix: every edge endpoint written to graph.json is now a declared node. An imports/imports_from/re_exports edge to an external module (stdlib, a third-party dependency) mints a typed external stub node instead of leaving a dangling endpoint that loaders materialise as an attribute-less phantom, and a cross-repo merge unifies the same external module into one global node instead of fragmenting it per repo; sourceless external call targets stay suppressed (#2873, #2878, thanks @AromalBiju1).
Fix: a Markdown code-span mention edge now survives an incremental rebuild instead of being pruned as an unauthored link, and a dotted span (Foo.bar) resolves using its qualifiers as evidence, rejecting misleading matches such as time.sleep or pyproject.toml (#3587, thanks @AstroMined).