Support/Fix issues 15, 16, and 17#18
Merged
Merged
Conversation
Signed-off-by: Rahul Krishna <i.m.ralk@gmail.com>
rahlk
added a commit
that referenced
this pull request
May 14, 2026
Support/Fix issues 15, 16, and 17
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release v0.1.10: Ray Distributed Processing, Incremental Caching, and Critical Bug Fixes
This major release introduces Ray-based distributed processing for significant performance improvements, implements intelligent incremental caching with SHA256-based change detection, adds single-file analysis capabilities, and fixes critical nested function detection bugs. The release also enhances compatibility by expanding Python version support from 3.10+ to 3.9+ and provides more robust dependency management.
Motivation and Context
Performance and Scalability Issues Addressed:
Critical Bug Fixes:
main.__init__instead ofmain.outer_function.NestedClass.__init__)Compatibility and Stability:
How Has This Been Tested?
Comprehensive Test Coverage:
test_cli_call_symbol_table_with_jsonvalidates--rayflag functionality with xarray project fixturetest_single_filevalidates--file-nameflag with nested function test fixturessingle_functionalities__stuff_nested_in_functionsfixtureReal-world Testing:
Breaking Changes
** Dependency Version Changes:**
>=2.11.7to>=1.8.0,<2.0.0for stabilitypandas>=1.3.0,<2.0.0,numpy>=1.21.0,<1.24.0,rich>=12.6.0,<14.0.0,typer>=0.9.0,<1.0.0** Compatibility Improvements:**
>=3.10to>=3.9(more permissive, not breaking)Code Changes Required:
Types of changes
Checklist
Additional context
Major Features Added
Ray Distributed Processing:
--ray/--no-rayCLI flags for enabling/disabling distributed analysis@ray.remotedecorator implementation for parallel file processingIntelligent Incremental Caching:
analysis_cache.jsonwith PyApplication serializationlast_modified,content_hash)Single File Analysis:
--file-nameCLI flag for targeted analysis of specific filesEnhanced Testing Infrastructure:
--skip-tests/--include-testsflag to improve analysis performanceCritical Bug Fixes
Nested Function Detection (Issue #15):
_callables()method recursion logic to capture both outer and inner functionsprefixparameter throughout symbol table building for context preservationPydantic Compatibility:
json()instead ofmodel_dump_json()) for stabilityArchitecture Improvements
Exception Handling Hierarchy:
SymbolTableBuilderException(base)SymbolTableBuilderFileNotFoundError(file not found)SymbolTableBuilderParsingError(parsing errors)SymbolTableBuilderRayError(Ray processing errors)Enhanced Schema Design:
dict[Path, PyModule]toDict[str, PyModule]for better serializationRobust Dependency Management:
Performance Impact
Migration Guide
For users upgrading from v0.1.9:
--rayflag for distributed processing on large codebases--clear-cacheflag to reset cache if experiencing issues--file-namefor targeted analysis during development workflowsIssue Resolution Status