From 70067855ae0d776b775822d7b4c0ce5910f01bbf Mon Sep 17 00:00:00 2001 From: Rahul Krishna Date: Tue, 15 Sep 2026 23:55:50 -0400 Subject: [PATCH] chore(deps): bump codeanalyzer-python 1.5.2 -> 1.5.3 (#410) Two analyzer fixes, neither moving the schema: the analyzer no longer ingests its own output when the cache or output directory sits inside the input (codeanalyzer-python#207), and a call site keeps one body node even when two calls share a start position (codeanalyzer-python#215). Both pins move together; body_key_column already parses the suffixed key. Python tier: 482 passed, 168 skipped, same as on 1.5.2. --- CHANGELOG.md | 24 ++++++++++++++++++++++++ pyproject.toml | 4 ++-- uv.lock | 8 ++++---- 3 files changed, 30 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4382bcd..808a15c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,30 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [v2.0.0-rc.8] - 2026-09-15 + +### Changed + +- `codeanalyzer-python` pin `1.5.2` → **`1.5.3`** (`dependencies` and `[tool.backend-versions]`, + `python-sdk#410`). Two analyzer fixes, neither moving the schema (`schema_version` and the graph + `SCHEMA_VERSION` stay `2.0.0`; `PyNeo4jBackend._ANALYZER_FLOOR` stays `1.5.0`): + - the analyzer no longer ingests its own output (codeanalyzer-python#207). `discover_artifacts` + had no idea where the run writes, so an output or cache directory inside the input made run N + inventory run N-1's `analysis.json` and embed it whole. This SDK's default `cache_dir` is + `/.codeanalyzer`, inside the input, so every local run was exposed. + - one body node per call site when two calls share a start position (codeanalyzer-python#215). + `getattr(o, n)(x)` starts the outer application and the inner `getattr` at the same column, and + the position-keyed `body` kept the inner one. Keys now carry a `/2`, `/3` disambiguator, + outermost first; `body_key_column` already splits on `/` and needed no change. A key that used + to collide now names the **outer** call, and a call whose callee is itself a call carries + `callee_signature: null` with `method_name: ""`. + +### Verification + +The Python tier offline (`tests/analysis/python`, mocked Neo4j and the in-process analyzer): +482 passed, 168 skipped, on 1.5.2 and on 1.5.3 alike — every skip is a live-Neo4j tier. No fixture +expectation moved. + ## [v2.0.0-rc.7] - 2026-09-11 The Java facade learns the view layer codeanalyzer-java 3.3.0–3.3.2 added, and the 2.0 line takes up diff --git a/pyproject.toml b/pyproject.toml index d489d08..24a5760 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,7 +35,7 @@ dependencies = [ "tree-sitter-java==0.23.5", "tree-sitter-python==0.23.6", "tree-sitter-javascript==0.23.1", - "codeanalyzer-python==1.5.2", + "codeanalyzer-python==1.5.3", "codeanalyzer-typescript==1.6.0", ] @@ -87,7 +87,7 @@ include = [ [tool.backend-versions] codeanalyzer-java = "3.3.3" -codeanalyzer-python = "1.5.2" +codeanalyzer-python = "1.5.3" codeanalyzer-typescript = "1.6.0" ######################################## diff --git a/uv.lock b/uv.lock index beda8a0..9c78cbd 100644 --- a/uv.lock +++ b/uv.lock @@ -351,7 +351,7 @@ requires-dist = [ { name = "cldk", extras = ["java"], marker = "extra == 'all'" }, { name = "cldk", extras = ["neo4j"], marker = "extra == 'all'" }, { name = "codeanalyzer-java", marker = "extra == 'java'", specifier = "==3.3.3" }, - { name = "codeanalyzer-python", specifier = "==1.5.2" }, + { name = "codeanalyzer-python", specifier = "==1.5.3" }, { name = "codeanalyzer-typescript", specifier = "==1.6.0" }, { name = "neo4j", marker = "extra == 'neo4j'", specifier = ">=5.14,<7" }, { name = "networkx", specifier = ">=3.4.2,<4" }, @@ -409,7 +409,7 @@ wheels = [ [[package]] name = "codeanalyzer-python" -version = "1.5.2" +version = "1.5.3" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "astor" }, @@ -426,9 +426,9 @@ dependencies = [ { name = "typing-extensions" }, { name = "uv" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/71/c1/c76ad3a531d02f2548a8128c17c33c01c0d5aec240bd8e0dad93411590c3/codeanalyzer_python-1.5.2.tar.gz", hash = "sha256:18b1d81c44f0e0f1ab8dcb36a144345c58a51a55394a1a2b359d92c97c43df84", size = 234282, upload-time = "2026-09-10T21:45:35.272Z" } +sdist = { url = "https://files.pythonhosted.org/packages/59/9f/898ffe729c71c3ff1f1d1d8f13463c3a315c1d448152807bb66ff30d2b5b/codeanalyzer_python-1.5.3.tar.gz", hash = "sha256:d1ee224698c22a7c376b88e8b4431ac96a15949a789474c7c4490f7de958bbf1", size = 236787, upload-time = "2026-09-14T21:02:05.093Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/60/12/61fbed9875b06c061b24fcf4363e96215431db86efd895a2f4bd966c1d4f/codeanalyzer_python-1.5.2-py3-none-any.whl", hash = "sha256:7c0e1ed0b91fde5376f5c0cae70d48f85e83b0ff9e737c923b37c8e3375e2cd2", size = 239571, upload-time = "2026-09-10T21:45:33.895Z" }, + { url = "https://files.pythonhosted.org/packages/8b/22/04258091baf77cebbd51c8a55792dd7383f853f723020a6faf4f5fb99b1f/codeanalyzer_python-1.5.3-py3-none-any.whl", hash = "sha256:6049e8bd8d27ebb73f8ae9dfd5eed6f21bc06f94348f3458c10806e243597328", size = 242306, upload-time = "2026-09-14T21:02:03.694Z" }, ] [[package]]