Repository navigation
feat(postgres): add PGQ support with property graph query scenarios - #44
Merged
Merged
Conversation
- Fix version regex to handle beta versions (e.g. 19beta1) - Add PostgresPropertyGraphQueryMixin for PGQ support - Add format tests for PGQ expressions - Add scenario tests for real PGQ queries against PG19 - Update dialect and mixins init
Cover all expression edge cases and variants: - anonymous vertex, invalid variable name (ValueError) - undirected edge (NONE), table-only edge, variable-only edge - empty MATCH path, anonymous vertex in MATCH - GraphTableExpression alias, GraphColumn without alias - CREATE IF NOT EXISTS, CREATE without edge tables - VertexTable/EdgeTable with alias - TablePropertiesClause ALL COLUMNS / NONE - ALTER DROP VERTEX TABLES - UnsupportedFeatureError for all TablePropertiesClause variants Total: 33 -> 52 format tests, all passing.
PG 19 has no extensions yet, so it gets its own job without postgres-exts service. Uses postgres:19beta1 official image. Main test matrix (PG 9-18) unchanged.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## release/v1.0.0.dev15 #44 +/- ##
========================================================
+ Coverage 71.65% 71.67% +0.02%
========================================================
Files 233 234 +1
Lines 10563 10567 +4
Branches 1665 1665
========================================================
+ Hits 7569 7574 +5
+ Misses 2461 2460 -1
Partials 533 533
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
…n async version parsing
|
vistart
added a commit
that referenced
this pull request
Jun 13, 2026
) * feat(postgres): add PGQ support with property graph query scenarios - Fix version regex to handle beta versions (e.g. 19beta1) - Add PostgresPropertyGraphQueryMixin for PGQ support - Add format tests for PGQ expressions - Add scenario tests for real PGQ queries against PG19 - Update dialect and mixins init * test(postgres): add 19 PGQ format tests for 100% expression coverage Cover all expression edge cases and variants: - anonymous vertex, invalid variable name (ValueError) - undirected edge (NONE), table-only edge, variable-only edge - empty MATCH path, anonymous vertex in MATCH - GraphTableExpression alias, GraphColumn without alias - CREATE IF NOT EXISTS, CREATE without edge tables - VertexTable/EdgeTable with alias - TablePropertiesClause ALL COLUMNS / NONE - ALTER DROP VERTEX TABLES - UnsupportedFeatureError for all TablePropertiesClause variants Total: 33 -> 52 format tests, all passing. * ci(postgres): add standalone Python 3.14 / PostgreSQL 19beta1 test job PG 19 has no extensions yet, so it gets its own job without postgres-exts service. Uses postgres:19beta1 official image. Main test matrix (PG 9-18) unchanged. * ci(postgres): add --scenario-parallel to PGQ test job * fix(postgres): handle PG beta version strings without dot separator in async version parsing * test(postgres): normalize LSN assertion to handle PG19 zero-padding * test(postgres): fix async PGQ fixture graph name mismatch * test(postgres): add version-aware LSN assertion for PG19 zero-padded format * chore: add changelog fragment for PR #44
7 of 12 tasks
vistart
added a commit
that referenced
this pull request
Jun 15, 2026
) * feat(postgres): add PGQ support with property graph query scenarios - Fix version regex to handle beta versions (e.g. 19beta1) - Add PostgresPropertyGraphQueryMixin for PGQ support - Add format tests for PGQ expressions - Add scenario tests for real PGQ queries against PG19 - Update dialect and mixins init * test(postgres): add 19 PGQ format tests for 100% expression coverage Cover all expression edge cases and variants: - anonymous vertex, invalid variable name (ValueError) - undirected edge (NONE), table-only edge, variable-only edge - empty MATCH path, anonymous vertex in MATCH - GraphTableExpression alias, GraphColumn without alias - CREATE IF NOT EXISTS, CREATE without edge tables - VertexTable/EdgeTable with alias - TablePropertiesClause ALL COLUMNS / NONE - ALTER DROP VERTEX TABLES - UnsupportedFeatureError for all TablePropertiesClause variants Total: 33 -> 52 format tests, all passing. * ci(postgres): add standalone Python 3.14 / PostgreSQL 19beta1 test job PG 19 has no extensions yet, so it gets its own job without postgres-exts service. Uses postgres:19beta1 official image. Main test matrix (PG 9-18) unchanged. * ci(postgres): add --scenario-parallel to PGQ test job * fix(postgres): handle PG beta version strings without dot separator in async version parsing * test(postgres): normalize LSN assertion to handle PG19 zero-padding * test(postgres): fix async PGQ fixture graph name mismatch * test(postgres): add version-aware LSN assertion for PG19 zero-padded format * chore: add changelog fragment for PR #44
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Description
This PR adds Property Graph Query (PGQ) support for the PostgreSQL backend, enabling property graph query scenarios with comprehensive expression coverage.
Changes
Type of change
feat: A new featuretest: Adding missing tests or correcting existing tests (for the new feature)ci: Changes to our CI configuration files and scripts (if related to the new feature)Breaking Change
Testing
Checklist
Related Commits
681a63efeat(postgres): add PGQ support with property graph query scenarios2918976test(postgres): add 19 PGQ format tests for 100% expression coverage77686e1ci(postgres): add standalone Python 3.14 / PostgreSQL 19beta1 test job