You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Guides, examples and install pages still describe CLDK 2.0 as a release candidate #13
CLDK 2.0.0 is the stable release on PyPI. The pages outside the API reference still describe 2.0 as a release candidate, and some samples do not run as written on cldk 2.0.0.
Stale release text:
installing.mdx, resources/cheatsheet.mdx, the guides (concepts, symbol-tables, call-graphs, dataflow, system-dependence, taint) and the examples (python, typescript, javascript) still say "release candidate", "pip install cldk gives you 1.5.0" or pip install --pre cldk.
The guides say "CLDK 2.0.0rc7 pins codeanalyzer-python==1.5.2". cldk 2.0.0 pins 1.5.3, and 1.5.3 still has the cross-call value-flow defect (codeanalyzer-python#220, python-sdk#413).
Samples and outputs that are wrong on cldk 2.0.0:
quickstart.mdx installs cldk without the java extra, so its Java sample raises CodeanalyzerExecutionException. Its outputs (23 classes, 312 nodes and 488 edges) do not match a real run on Commons CLI 1.7.0 (75 classes, 652 nodes and 1980 edges).
examples/java.mdx: most output comments do not match a real run on Commons CLI 1.7.0.
resources/cheatsheet.mdx: same Java install and class-count problems.
at-scale/index.mdx: pip install cldk[neo4j] without quotes fails in zsh, the default macOS shell.
quickstart.mdx: wget is not on a stock Mac.
Missing facts that block first-time users:
CLDK.python() raises RuntimeError: Could not find a suitable base Python interpreter inside an activated virtualenv (or uv run) unless SYSTEM_PYTHON is set, on hosts without pyenv, conda or asdf.
Java call graphs need a JDK 11+ with javac on JAVA_HOME. Without one, the run succeeds with declared edges only and logs a WARNING.
cldk 2.0.0 installs on Python 3.11 to 3.14. It does not install on Python 3.15, because ray has no 3.15 wheel yet.
Java and TypeScript reuse a cached analysis after the source changes. Pass eager=True to re-analyze.
Activity