Skip to content

fix: emit missing symbol information - #226

Draft
brendan-m-murphy wants to merge 1 commit into
sourcegraph:scipfrom
brendan-m-murphy:codex/issue-223-symbol-information
Draft

fix: emit missing symbol information#226
brendan-m-murphy wants to merge 1 commit into
sourcegraph:scipfrom
brendan-m-murphy:codex/issue-223-symbol-information

Conversation

@brendan-m-murphy

Copy link
Copy Markdown

Fixes #223.

Ensures cached class definitions still emit SymbolInformation and records identity-only SymbolInformation for undocumented standard-library symbols.

Adds the reported reproduction and structural regression checks.

@brendan-m-murphy

Copy link
Copy Markdown
Author

I know it's bad form... but this is one-shot from codex. This PR does fix the bug I encountered though:

I tested this fix against OpenGHG, a medium-sized Python package for processing atmospheric greenhouse-gas measurement and modelling data.

Using the same OpenGHG checkout and scip-cli 2.7.0:

  • Released scip-python 0.6.6 indexed 275 files, but conversion to SQLite failed because VersioneerBadRootError# had a definition occurrence without corresponding SymbolInformation.
  • A build from this PR also indexed 275 files and converted successfully.
  • The resulting 7.2 MB database contained 6,666 global symbols and 18,650 mentions.
  • As a functional check, scip-cli successfully resolved Datasource.add_timed_data to its definition in openghg.objectstore._legacy_datasource.

This is a controlled before/after test and confirms that the PR fixes the missing-SymbolInformation failure on a real-world Python codebase.

(Again, apologies for the AI generated summary... scip-python seems useful and I want to try it out, but I don't have time to dig into the code myself.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

scip-python 0.6.6: SymbolInformation missing for @dataclass class symbols and stdlib symbols, causing scip expt-convert to hard-fail

1 participant