From abf74b8299292ba2d26bf116148d4e27be8fd61a Mon Sep 17 00:00:00 2001 From: Ufuk Kayserilioglu Date: Wed, 8 Jul 2026 21:17:50 +0300 Subject: [PATCH] Refresh README and add PR-based release-notes config - README: replace the Roadmap section's links to the (intentionally local, untracked) docs/ROADMAP.md and docs/CHECKLIST.md with an inline "Not yet supported" list, so the README has no broken links; note the optional GraphProvider::expand_in perf hook. - Add .github/release.yml so the release workflow's --generate-notes groups merged PRs into Breaking/Features/Performance/Fixes/Docs sections. --- .github/release.yml | 24 ++++++++++++++++++++++++ README.md | 13 +++++++++---- 2 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 .github/release.yml diff --git a/.github/release.yml b/.github/release.yml new file mode 100644 index 0000000..c5ead69 --- /dev/null +++ b/.github/release.yml @@ -0,0 +1,24 @@ +# Groups pull requests into sections in the auto-generated release notes +# (Release workflow runs `gh release create --generate-notes`). +changelog: + categories: + - title: Breaking Changes + labels: + - breaking + - title: Features + labels: + - feature + - enhancement + - title: Performance + labels: + - performance + - title: Fixes + labels: + - bug + - fix + - title: Documentation + labels: + - documentation + - title: Other Changes + labels: + - "*" diff --git a/README.md b/README.md index cffe2f2..b035554 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,11 @@ impl GraphProvider for MyGraph { let output = run_query(&my_graph, "MATCH (n:Class) RETURN n.name", OutputFormat::Json)?; ``` +Providers may also implement the optional `expand_in` method to answer incoming-neighbour queries +directly; it makes incoming and undirected relationship steps `O(degree)` instead of building a +whole-graph reverse-adjacency map. It defaults to `None` (fall back to the reverse build), so it is +never required. + ## Supported subset - **`MATCH`** — node patterns `(v:Label {prop: value})` with label disjunction (`(v:A|B)`); relationship @@ -85,11 +90,11 @@ Write clauses (`CREATE`, `MERGE`, `SET`, `DELETE`, `REMOVE`) are intentionally u - `OutputFormat` / `CypherValue` — result formatting and values. - `ast` — the AST types; `CypherError` — lexing/parsing/execution errors with a source position. -## Roadmap +## Not yet supported -Planned syntax additions (multi-label `AND`, floats/arithmetic, `=~` regex, parameters, `UNION`, -relationship-variable `RETURN`, …) and their prioritized implementation plans are in -[docs/ROADMAP.md](docs/ROADMAP.md) (with a quick [docs/CHECKLIST.md](docs/CHECKLIST.md)). +Planned syntax additions include multi-label `AND` (`(n:A:B)`), floats and arithmetic, `=~` regex +matching, query parameters (`$name`), `UNION`, and relationship-variable `RETURN`. Write clauses +remain out of scope. ## Contributing