Repository navigation
v0.8.0 — PHP parity with Go
PHP parity with Go
PHP files now render at the same fidelity as Go: full signatures with visibility, types, and defaults; class headers with extends / implements; properties and constants visible; PHPDoc first sentences inlined.
What's new
- Tree-sitter PHP parser replacing the regex fallback. Covers PHP 8.x: classes, interfaces, traits, enums (with backings and cases), functions, methods, properties, constants, namespaces.
- Visibility-in-signature —
public function foo(): string,private readonly LoggerInterface $logger. - Constructor property promotion extracted as real properties — byte-identical signatures to non-promoted declarations.
- PHPDoc extraction — first sentence rendered as subtitle; @-tags stripped. No
[doc: n/a]noise on PHP files. - Kind-weighted ordering — class/interface first, then trait, enum, function, method, case, property, const.
Before / after
On LLPhant's src/Chat/OpenAIChat.php:
# v0.7.0
src/Chat/OpenAIChat.php [untested] [doc: n/a]
func __construct
func generateText
type OpenAIChat
# v0.8.0
src/Chat/OpenAIChat.php [untested]
class OpenAIChat implements ChatInterface [440L]
public function __construct(OpenAIConfig $config = new OpenAIConfig(), private readonly LoggerInterface $logger = new NullLogger())
public function generateText(string $prompt): string
public ?FunctionInfo $lastFunctionCalled = null
Symbol count on the same 149-file LLPhant codebase: 968 → 1398 (+44%) within the same 2048-token budget.
Verified
444 tests passing, build/vet clean.
Install: go install github.com/dotcommander/repomap/cmd/repomap@v0.8.0