Dear Apache Community, We would like to open a discussion for the Apache AGE release 1.8.0 for PostgreSQL 18.
To learn more about Apache AGE, please see http://age.apache.org/ Functionalities included and issues addressed in this release are: ***************************************************************** Release Notes for Apache AGE release 1.8.0 for PG18 branch WARNING! Always back up your database before executing any upgrade scripts WARNING! Apache AGE 1.8.0 - Release Notes Merge master into PG18: advance to Apache AGE 1.8.0 Advance master branch to Apache AGE version 1.8.0 (#2455 <https://github.com/apache/age/pull/2455>) Fix installcheck fetch-depth parameter to 100 (#2461 <https://github.com/apache/age/pull/2461>) Fix segfault on CREATE/MERGE/SET with generated or extra label columns ( #2458 <https://github.com/apache/age/pull/2458>) Propagate null through unnest and single() three-valued logic (#2406 <https://github.com/apache/age/pull/2406>) Add automatic header-dependency tracking to the Makefile (#2454 <https://github.com/apache/age/pull/2454>) ci: pin Build/Regression runner to ubuntu-24.04 and guard Bison version for GLR grammar (#2445 <https://github.com/apache/age/pull/2445>) Fix segfault and out-of-bounds reads in file loaders on malformed rows ( #2453 <https://github.com/apache/age/pull/2453>) Support outer references in reduce() fold bodies (#2448 <https://github.com/apache/age/pull/2448>) Fix stack overflow and precision loss in toFloatList() conversion (#2451 <https://github.com/apache/age/pull/2451>) Fix Node.js driver CI build broken by @types/node drift (#2452 <https://github.com/apache/age/pull/2452>) Preserve null-valued keys in map literals (#2391 <https://github.com/apache/age/issues/2391>) (#2412 <https://github.com/apache/age/pull/2412>) Fix single-node labeled pattern expressions not filtering by label (#2443 <https://github.com/apache/age/issues/2443>) (#2444 <https://github.com/apache/age/pull/2444>) Support relationship-type filters and a minimum hop count (#2442 <https://github.com/apache/age/pull/2442>) resolve subgraph staging sequences via regclass (#2446 <https://github.com/apache/age/pull/2446>) Add reduce() list folding function (#2435 <https://github.com/apache/age/pull/2435>) Support pattern expressions as boolean expressions (#2360 <https://github.com/apache/age/pull/2360>) Add shortest_path / all_shortest_paths SRFs (#2430 <https://github.com/apache/age/pull/2430>) cypher_with: add ORDER BY to non-deterministic RETURN queries (#2436 <https://github.com/apache/age/pull/2436>) Make ag_catalog ownership and built-in resolution explicit (#2440 <https://github.com/apache/age/pull/2440>) Makefile: add installcheck-existing target and improve readability (#2437 <https://github.com/apache/age/pull/2437>) age_global_graph: stabilize regression tests (#2431 <https://github.com/apache/age/pull/2431>) cypher_vle: add ORDER BY to non-deterministic RETURN queries (#2434 <https://github.com/apache/age/pull/2434>) feature: add create_subgraph() (#2441 <https://github.com/apache/age/pull/2441>) Make age extension usable from shared_preload_libraries (#2438 <https://github.com/apache/age/pull/2438>) Fix locale-dependent string comparison in direct_field_access test (#2439 <https://github.com/apache/age/pull/2439>) Fix VLE [*0..N] zero-hop self-binding when edge label is missing (#2382 <https://github.com/apache/age/issues/2382>) (#2419 <https://github.com/apache/age/pull/2419>) fix: remove pthread_mutex that causes self-deadlock on VLE queries (#2433 <https://github.com/apache/age/pull/2433>) Restore contsel/contjoinsel for containment & key-existence operators (#2356 <https://github.com/apache/age/issues/2356>) (#2417 <https://github.com/apache/age/pull/2417>) perf: VLE hash-adjacency overhaul — agehash + flat-array VertexEdgeArray ( #2421 <https://github.com/apache/age/pull/2421>) python driver: preserve trailing quotes in agtype string values (#2425 <https://github.com/apache/age/pull/2425>) perf(agtype): arena passthrough + binary-direct id extraction (#2424 <https://github.com/apache/age/pull/2424>) Add vertex and edge composite types with direct field access optimization ( #2303 <https://github.com/apache/age/pull/2303>) perf: VLE terminal-qual rewrite (#2420 <https://github.com/apache/age/pull/2420>) Add agtype <-> jsonb bidirectional casts (#350 <https://github.com/apache/age/issues/350>) (#2361 <https://github.com/apache/age/pull/2361>) feat(python-driver): add public API for connection pooling and model dict conversion (#2374 <https://github.com/apache/age/pull/2374>) Fix upgrade test: allow function removal (#2422 <https://github.com/apache/age/pull/2422>) Zero-initialize parent_cpstate in analyze_cypher (#2423 <https://github.com/apache/age/pull/2423>) Fix upgrade test: replace data-integrity checks with catalog comparison ( #2403 <https://github.com/apache/age/pull/2403>) Allow safe Cypher reserved keywords in alias positions (#2355 <https://github.com/apache/age/issues/2355>) (#2415 <https://github.com/apache/age/pull/2415>) Propagate null through agtype arithmetic operators (#2405 <https://github.com/apache/age/pull/2405>) Update README.md (#2414 <https://github.com/apache/age/pull/2414>) Add VLE semantics and cost model design note (#2349 <https://github.com/apache/age/issues/2349>) (#2413 <https://github.com/apache/age/pull/2413>) Fix property access on list comprehension / predicate loop variables (#2402 <https://github.com/apache/age/pull/2402>) Add MERGE ON CREATE SET / ON MATCH SET support (#2347 <https://github.com/apache/age/pull/2347>) Propagate null in agtype_access_slice bounds (#2400 <https://github.com/apache/age/pull/2400>) VLE cache + performance improvements (#2376 <https://github.com/apache/age/pull/2376>) CI: fail build on compiler and bison warnings (#2398 <https://github.com/apache/age/pull/2398>) fix(python-driver): add null-guards in ANTLR parser and relax runtime version pin (#2372 <https://github.com/apache/age/pull/2372>) Return an empty list from tail() for empty and singleton lists (#2399 <https://github.com/apache/age/pull/2399>) Fix substring() crash when start-offset is NULL and length is supplied ( #2401 <https://github.com/apache/age/pull/2401>) fix(python-driver): quote-escape column aliases in buildCypher() (#2373 <https://github.com/apache/age/pull/2373>) Implement predicate functions: all(), any(), none(), single() (#2359 <https://github.com/apache/age/pull/2359>) Fix OPTIONAL MATCH dropping null-preserving rows with subquery WHERE (#2380 <https://github.com/apache/age/pull/2380>) Python driver: Add skip_load parameter to skip LOAD 'age' statement (#2366 <https://github.com/apache/age/pull/2366>) Fix upgrade test: build default install SQL from HEAD, not initial commit ( #2397 <https://github.com/apache/age/pull/2397>) Improve extension upgrade regression test (addendum to #2364 <https://github.com/apache/age/pull/2364>) (#2377 <https://github.com/apache/age/pull/2377>) Add missing include for PR: Add index scan (#2351 <https://github.com/apache/age/pull/2351>) (#2379 <https://github.com/apache/age/pull/2379>) Add index scan (#2351 <https://github.com/apache/age/pull/2351>) Fix MATCH on brand-new label after CREATE returning 0 rows (#2341 <https://github.com/apache/age/pull/2341>) Fix nondeterministic age_global_graph regression test (#2365 <https://github.com/apache/age/pull/2365>) Add extension upgrade template regression test (#2364 <https://github.com/apache/age/pull/2364>) Fix crash in PREPARE with property parameter when enable_containment is off (#2339 <https://github.com/apache/age/pull/2339>) Fix entity_exists() CID visibility for CREATE + WITH + MERGE (#2343 <https://github.com/apache/age/pull/2343>) Support doubled-quote escaping in Cypher string literals (issue #2222 <https://github.com/apache/age/issues/2222>) (#2342 <https://github.com/apache/age/pull/2342>) Fix MATCH after CREATE returning 0 rows (issue #2308 <https://github.com/apache/age/issues/2308>) (#2340 <https://github.com/apache/age/pull/2340>) Fix chained MERGE not seeing sibling MERGE's changes (#1446 <https://github.com/apache/age/issues/1446>) (#2344 <https://github.com/apache/age/pull/2344>) Fix VLE queries failing on read-only replicas (#2160 <https://github.com/apache/age/issues/2160>) (#2345 <https://github.com/apache/age/pull/2345>) Fix VLE NULL handling for chained OPTIONAL MATCH (#2337 <https://github.com/apache/age/pull/2337>) fix incorrect variable assignment (#2336 <https://github.com/apache/age/pull/2336>) Remove labeler github action (#2335 <https://github.com/apache/age/pull/2335>) Fix ISO C90 forbids mixed declarations and code warning (#2334 <https://github.com/apache/age/pull/2334>) Fix null pointer handling in array iteration (#2313 <https://github.com/apache/age/pull/2313>) Fix security vulnerabilities in Node.js driver (#2329 <https://github.com/apache/age/pull/2329>) Update python-driver security and formatting (#2330 <https://github.com/apache/age/pull/2330>) Fix JDBC driver CI test failures (#2333 <https://github.com/apache/age/pull/2333>) Add pg_upgrade support functions for PostgreSQL (#2326 <https://github.com/apache/age/pull/2326>) ***************************************************************** The git tag to be discussed and voted on: https://github.com/apache/age/releases/tag/PG18/v1.8.0-rc0 The git commit hash: commit e43dc1a12b78fba4acef9835b2b10379b8d243b4 The release files for 1.8.0, can be found at: https://dist.apache.org/repos/dist/dev/age/PG18/1.8.0.rc0/ Signatures used for AGE RCs can be found in this file: https://downloads.apache.org/age/KEYS The fingerprint of key to sign release artifacts: 4293 0603 8E35 AC05 4DBB 4B58 26B6 CD9D CD5B 0045 For information about the contents of this release see: https://github.com/apache/age/releases/tag/PG18/v1.8.0-rc0 Please verify the above links, files, and signatures in addition to sharing your thoughts and feedback and if we can call for a vote. Thank you for your time. John Gemignani
