When a user has an older tree-sitter installed against a newer language
binding (or vice versa), Language() raises TypeError with messages like
"missing 1 required positional argument: 'name'". The previous catch-all
Exception handler stored that bare message in the per-file error field,
giving users no actionable signal.
Add a dedicated TypeError branch in _extract_generic() that returns a
clearer error with the upgrade command:
tree-sitter version mismatch for tree_sitter_python: ... .
Try: pip install --upgrade tree-sitter tree-sitter-languages
Behavior is unchanged for all non-version-mismatch errors - the broader
Exception handler still runs as before.