python-sdk v2.0.0-rc.1 #17
rahlk
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
cldk 2.0.0-rc.1 is the first release candidate for CLDK 2.0 — the schema-v2 release. Both the TypeScript and Python facades now speak the analyzers' schema 2.0.0 end to end and fail fast on any other version. It is a pre-release: plain
pip install cldkkeeps giving you 1.4.3; opt in explicitly to test it.codeanalyzer-python1.0.2 and speaks analysis schema 2.0.0. The re-exported Python models follow the schema-v2 renames —PyModule.classes→types;PyClass.methods/inner_classes→callables/types;PyCallable.inner_callables/inner_classes→callables/types;PyCallEdgeis nowsrc/dst/prov; a callable's source text moved from a per-callablecodefield toPyModule.source+ byte-offset spans.Migration: if you only use the accessor API (
get_method_bodies,get_callers, call graphs, …), nothing changes — behavior and vocabulary (dotted signatures) are preserved. If you walk the models directly, rename the container fields as above. If you hitCldkSchemaMismatchException, re-analyze (local backend) or re-emit the graph (Neo4j backend) withcodeanalyzer-python>=1.0.2.codeanalyzer-typescript1.0.0 and speaks graph schema 2.0.0 — TS-prefixed graph vocabulary, CanNode keys, and a fail-fastschema_versioncheck on the:Applicationnode. Accessors whose vocabulary is not projected into graph schema 2.0.0 (decorators, fields, imports/exports, variables) now raiseNotImplementedErroron the Neo4j backend instead of silently returning wrong data.Migration: re-emit your graph with
codeanalyzer-typescript1.0.0; use the in-memory (JSON) backend for the unprojected accessors.Highlights
cldk.models.cpg) — the shared, language-neutral model tree for schema-2.0.0 analyzer output, modeled once and validated against real L1–L4 samples from multiple analyzers.cldk.graph) — forward/backward slicing over schema-v2 CFG/CDG/DDG program graphs.schema_versionon first use, so a producer/consumer mismatch is an immediate, explicit error instead of silently wrong results.Try the RC
pip install -U --pre "cldk==2.0.0rc1"Links: GitHub release · CHANGELOG
Feedback on the RC — especially schema-mismatch errors or model-walk migrations — is very welcome before 2.0.0 final.
Beta Was this translation helpful? Give feedback.
All reactions