What's Changed
- release(vscode): 0.8.0 release notes and a server floor for the risk panel by @RaghavChamadiya in #1613
- fix(decisions): stop ADR discovery mining paths git cannot see by @RaghavChamadiya in #1614
- perf(workspace): walk each repo once when scanning .csproj manifests by @RaghavChamadiya in #1615
- feat(workspace): move the System Map's chrome off the canvas, and fix repo view by @RaghavChamadiya in #1616
- fix(ingestion): record this.method() self-dispatch calls in 6 languages by @RaghavChamadiya in #1617
- perf(files): stop the file page reading the whole repo to render one file by @RaghavChamadiya in #1618
- fix(persist): let a parser change reach edges on unchanged files by @RaghavChamadiya in #1619
- fix(update): reuse persisted function-mod p80 in incremental hotspot gate by @Ayush7614 in #1532
- fix: update --full runs under the single-flight lock by @Ayush7614 in #1529
- feat(files): port the file detail page onto the design language by @RaghavChamadiya in #1621
- feat(files): give the file page doors in and out by @RaghavChamadiya in #1622
- fix(cpp): recognise .inl / .ipp / .tpp as C++ source by @RaghavChamadiya in #1625
- fix(cpp): attach a call edge to the definition, not the header declaration by @RaghavChamadiya in #1626
- fix(cpp): count a function named but never called as a use by @RaghavChamadiya in #1627
- feat(graph): record which strategy resolved each call edge by @RaghavChamadiya in #1628
- feat(graph): bind a bare call to the caller's own class, capture PHP/Luau receivers by @RaghavChamadiya in #1630
- perf(graph): give each language a call-strategy seam and reject unresolvable names first by @RaghavChamadiya in #1632
- fix(mcp): stop shipping raw doubles and two scales under one key by @RaghavChamadiya in #1631
- fix(graph): give every language one answer for a type's bare name by @RaghavChamadiya in #1634
- test(graph): fail when a second answer to a type's bare name appears by @RaghavChamadiya in #1635
- fix(graph): emit inheritance for JavaScript classes by @RaghavChamadiya in #1636
- fix(graph): capture C# generic method calls by @RaghavChamadiya in #1637
- refactor(graph): one implicit-scope scan and one heritage walk by @RaghavChamadiya in #1638
- feat(graph): resolve a call on a local by typing it from its declaration by @RaghavChamadiya in #1639
- test(graph): exempt two qualifier splits the guard does not govern by @RaghavChamadiya in #1640
- fix(graph): record Go interface embedding as inheritance by @RaghavChamadiya in #1641
- feat(graph): resolve a call on a field by typing it from its class by @RaghavChamadiya in #1642
- feat(graph): resolve a python call by typing its receiver from the body by @RaghavChamadiya in #1643
- test(graph): exempt the fourth qualifier split the guard does not govern by @RaghavChamadiya in #1647
- fix(graph): record the visibility a C# declaration actually has by @RaghavChamadiya in #1644
- fix(pipeline): report a failed framework pass instead of swallowing it by @RaghavChamadiya in #1645
- fix(dead-code): keep only genuinely narrow scopes in the uncalled-symbol pool by @RaghavChamadiya in #1646
- perf(graph): stop re-reading the repo during graph build by @RaghavChamadiya in #1648
- feat(graph): link a base method to the implementations that answer for it by @RaghavChamadiya in #1649
- feat(graph): say why an execution flow stops instead of just stopping by @RaghavChamadiya in #1650
- feat(graph): resolve inherited calls in C# again by @RaghavChamadiya in #1651
- feat(web): say how a call edge got into the graph by @RaghavChamadiya in #1652
- fix(ci): restore the two guards that went red on main by @RaghavChamadiya in #1653
- feat(graph): link a framework-wired symbol to the symbol it is wired to by @RaghavChamadiya in #1654
- test(ci): exempt pytest's own collection rule from the test-path guard by @RaghavChamadiya in #1657
- fix(graph): give a Java call on its own field a receiver by @RaghavChamadiya in #1658
- fix(graph): stop a third-party JVM import taking a same-named repo class by @RaghavChamadiya in #1659
- fix(symbols): stop the symbol page calling a subclass a caller by @RaghavChamadiya in #1660
- feat(graph): separate a method passed as a value from a method called by @RaghavChamadiya in #1661
- fix(dead-code): count every use of a private symbol, not only a call by @RaghavChamadiya in #1662
- fix(mcp): stop get_context calling a subclass and a fixture a caller by @RaghavChamadiya in #1663
- feat(graph): resolve a method on a type imported through a re-export by @RaghavChamadiya in #1664
- fix(dead-code): make a top-tier confidence mean we actually looked by @RaghavChamadiya in #1666
- fix(security): make the history scanner actually scan by @RaghavChamadiya in #1667
- feat(security): give a security finding a verified line and a commit date by @RaghavChamadiya in #1668
- feat(dead-code): surface staleness on the web, drop the package column by @RaghavChamadiya in #1669
- fix(graph): bind a workspace package that publishes only from a build directory by @RaghavChamadiya in #1670
- fix(mcp): stop four tools answering a bad argument with a reassuring negative by @RaghavChamadiya in #1671
- feat(graph): resolve a namespace member through the re-export chain by @RaghavChamadiya in #1672
- fix(dead-code): stop reporting symbols a framework or a container reaches by @RaghavChamadiya in #1673
- feat(graph): type a Go receiver from its declaration by @RaghavChamadiya in #1674
- fix(graph): type a Go method whose receiver is unexported by @RaghavChamadiya in #1676
- fix(dead-code): stop reporting symbols a docs build or an API dump names by @RaghavChamadiya in #1677
- feat(graph): type a C# call on a freshly constructed receiver by @RaghavChamadiya in #1680
- fix(dead-code): stop reporting symbols a registration decorator wires in by @RaghavChamadiya in #1681
- feat(graph): resolve a call through the name a module publishes by @RaghavChamadiya in #1682
- refactor(dead-code): read export aliases from the parser, not a second scan by @RaghavChamadiya in #1683
- feat(graph): type a call receiver a framework decorator retyped by @RaghavChamadiya in #1684
- fix(risk): ignore shallow boundary in fix history by @Roovelrz in #1633
- feat(health): register Pascal in complexity, duplication, and dataflow dialects by @Laex in #1629
- feat(graph): capture three call receivers a bare-name match was guessing by @RaghavChamadiya in #1686
- feat(graph): type a Kotlin call receiver from its declaration by @RaghavChamadiya in #1687
- feat(graph): type a Swift call receiver from its declaration by @RaghavChamadiya in #1688
- docs: rewrite the language-support pages, add a graph layer page, and correct the claims that pointed at them by @RaghavChamadiya in #1689
- fix(graph): file Rust type positions as type_use, not calls by @RaghavChamadiya in #1690
- fix(graph): a struct field is not callable, so the bare-name tier must not offer one by @RaghavChamadiya in #1692
- fix(graph): register .hh as C++ and reassign .inc from Pascal by @RaghavChamadiya in #1693
- fix(graph): a C++ forward-declared type is not an unused export by @RaghavChamadiya in #1700
- fix(dead-code): keep a stored commit time comparable to a fresh one by @RaghavChamadiya in #1702
- fix(graph): a template forward declaration is a declaration too by @RaghavChamadiya in #1703
- release: v0.44.0 - receiver typing across eight languages, and an update that delivers it by @RaghavChamadiya in #1704
New Contributors
Full Changelog: v0.43.0...v0.44.0