⚠️ Breaking changes
code-graph-rag now requires its Rust extension, cgr-graph-rs, on every platform, and no longer runs without it: import codebase_rag stops with an error that says how to get it. The extension ships as wheels for CPython 3.12 or newer on Linux x86_64 and aarch64 (glibc and musl), macOS (Intel and Apple silicon) and Windows x64. On any other platform (PyPy, 32-bit or other architectures such as armv7, s390x and ppc64le, Windows on ARM), installing code-graph-rag now fails, where it used to install and run the pure-Python engine.
There is no setting that keeps the old behaviour on those platforms. To keep using cgr there, pin code-graph-rag below this release.
Existing installs on the supported platforms already have the extension and see no change in behaviour. They install fewer packages: defusedxml and tomli-w are gone (cgr reads XML project files and writes workspace files in the extension now), and huggingface-hub, with hf-xet, fsspec, tqdm, filelock and packaging, is installed only by the semantic extra, the one part of cgr that uses it. See The Rust extension.
Highlights
- Continuous Integration Improvements: Enhanced release cadence tracking and ensured accurate green status for deferred releases.
- Dependency Updates: Updated Golang version in the /.oss-scanner dependency and declared httpx in the codebase.
- Code Quality & Clarity: Resolved several code style and correctness issues including foreach loop variable typing and Python method receiver handling.
- Build Process Refinement: Reduced the default install package count and improved makefile functionality for host/port watching.
- Feature Control: Prevented the use of
--no-endpoint-rootswhen endpoint data is absent.
What's Changed
- fix(ci): keep Deferred Release green when the API allowance is spent by @vitali87 in #3572
- ci(release): move the version once per merge and count the release cadence in merges by @vitali87 in #3570
- build(deps): bump golang from
fbb7ae4toc65ecfein /.oss-scanner by @dependabot[bot] in #3542 - ci(release): count a version set by hand by its merges, not the numbers it skips by @vitali87 in #3574
- fix(csharp): type a foreach loop variable by @vitali87 in #2990
- fix(flow): bind Python taint through unpacking, chains and the walrus by @vitali87 in #2764
- fix(dead-code): an arrow const is not a use of itself by @vitali87 in #3078
- fix(deps): declare httpx, which the code imports directly by @vitali87 in #3582
- fix(js-ts): a baseUrl import names the project module it resolves to by @vitali87 in #3100
- fix(go): a Go call's build-variant siblings are Go functions only by @vitali87 in #3211
- fix(python): never type a method's receiver from its name by @vitali87 in #3067
- fix(make): let make watch follow MEMGRAPH_HOST/MEMGRAPH_PORT by @vitali87 in #3041
- fix(dead-code): refuse --no-endpoint-roots on a project without endpoint data by @vitali87 in #3032
- fix(watch): stop re-reading the ignore rules on a read of their files by @vitali87 in #3584
- refactor(deps)!: cut the default install from 82 to 74 packages and require the Rust extension by @vitali87 in #3571
Full Changelog: v0.5.0...v0.6.0