Releases: unoplat/unoplat-code-confluence
Releases · unoplat/unoplat-code-confluence
unoplat-code-confluence: v0.17.0
unoplat-code-confluence: v0.16.0
0.16.0 (2024-12-20)
Features
- add example config and enhance type checking. included robust class variables and function local variables handling (d1d2afb)
- add function call cleaning method and new tests for sorting function dependencies- Introduced a new method
__clean_function_call
inFunctionMetadataParser
to extract just the function name from call strings.- Updated the test for local variables to reflect the change in function call value assertion.- Added new tests for sorting function dependencies, covering various scenarios including simple chains, no dependencies, and cyclic dependencies.- Created an empty__init__.py
file in thein_class_dependency
directory to establish the package structure. (1a174bc) - added ability to read package manager based on programming language for enhanced context starting with python (f9a6cd2)
- added ability to read versions if not able to figure out from proper poetry or pip package management (5ccbea3)
- added ability to segregate imports and improved context based on github repo to many codebases. Also improved unoplat inhouse struct for handling imports of programming languages like python that can have multiple ways of imports being defined. (d691bd6)
- added comments for class and function (97fd429)
- added parameters as part of function chapi metadata which was missing and added default value if parameter has been assigned default value (4cf6294)
- added parsing and consolidating imports through ast and filling in unique imports in chapi struct as chapi is ambiguos right now (03bd901)
- added reference to package manager metadata from source codebase data model (cc246fd)
- added requirement_utils (8991012)
- added stdlist module to figure out system modules of python (d4c5671)
- added support for pip (5c9a5f2)
- Added support for qualified names of packages (6018817)
- added support for repo name and repo url as metadata (f6577a7)
- added support for system import reading (177f9ff)
- enabled qualified name while parsing classes and better structure for custom language things (8f6faeb)
- enhance Python parsing with tree-sitter, new metadata parsers, dependency sorting, refactoring, and robust unit tests (bd9bec6)
- introduce new data models and refactor existing ones for enhanced codebase management and import handling- Added new data models under
chapi_forge
for better organization and handling of codebases, repositories, and package metadata.- Refactored existing models to improve clarity and maintainability, including renaming and restructuring imports.- Introduced unit tests forGithubHelper
to ensure proper functionality when cloning repositories.- Created an empty__init__.py
file to establish theconfluence_git
package.- Updated main application logic to utilize the new data models and improve overall code structure. (4440955) - moved to requirements-parser lib for parsing requirements file making the implementation more robust (efe5c54)
- revamped entire code to do programming language related custom processing with ease and implemented external dependency parsing (501ff7c)
- segregated secrets and normal json config through base model and base settings of pydantic and a class to handle them both (c23c9f1)
- update dependencies and enhance code structureAdded black (v23.12.1) and pathspec (v0.12.1) for formatting and path matching.Updated pyproject.toml and ruff.toml with enhanced configurations.Added debug_tree_sitter_content.py for AST analysis.Refactored data models for clarity (e.g., renamed fields in chapi_class_global_fieldmodel and chapi_function_field_model).Improved NodeVariablesParser logic and added class name utility.Updated tests for new features and robustness. (b24403a)
- update linting rules, refactor tests, add class name validator, and enhance dependency error handling (1f4e370)
- upgraded arcguard to 2.2.3 (1b865c4)
- upgraded upstream archguard to 2.2.7 which fixes parameters of functions and function calls (d6f2b3c)
Bug Fixes
- handle different types of setup scripts in setup.py (dd30032)
- handle multi path for codebases inside monorepo (b2a754a)
- only pass root package for parsing (19b1345)
- pass content of file to parse global variables (9eee27c)
- read/parse poetry better (49cd0a8)
- removed redundant field (749d054)
- support falling back to explicit python version from user if not mentioned in setup.py(pip) or poetry config (7613f5a)