Skip to content

v3.4.0

Choose a tag to compare

@github-actions github-actions released this 28 Oct 07:28
d7db6fb

What's Changed

  • Read round()'s precision as a whole number toward zero, and refuse one below 0 in both its forms by @jasperblues in #325
  • Order min() and max() of a list the statement makes item by item, as ORDER BY does by @jasperblues in #329
  • Read a map parameter's nested property on Oracle by one path, so a long one over two rows doesn't crash the session by @jasperblues in #327
  • Fail a statement whose round() precision, read from data, is below 0, on every SQL store by @jasperblues in #330
  • Point to the video from the hero by @jasperblues in #334
  • Copy the install lines on a click, and list how each library writes the model by @jasperblues in #337
  • Write a side of a text sum the statement makes a text as its own text, not as toString writes a float by @jasperblues in #335
  • Make no adaptive plan in an Oracle session, so a read of a graph just seeded finds its rows by @jasperblues in #338
  • Give a number back from round() to places past its digits, where Oracle's NUMBER and Postgres's numeric overflowed by @jasperblues in #341
  • Add a how-to for running Cypher on a relational database, linked from the landing page by @jasperblues in #345
  • Leave the hero's docs links to the nav bar by @jasperblues in #346
  • Compare lists and maps that hold a null item by item on Postgres and Oracle, as Cypher does, and run the Cypher spec at v0.6.6 by @jasperblues in #340
  • Read a start or length of left(), right() and substring() as Neo4j does, compiled to SQL by @jasperblues in #348
  • Round to 0 places as round(x) does, half toward +infinity, where Neo4j does so by @jasperblues in #350
  • Give null for round() of a null by a negative precision read from data, as Neo4j does by @jasperblues in #353
  • Give the object manager's suites that plan statements on a fresh store 30 seconds a test, as #256 gave the save suite by @jasperblues in #352
  • Round by a mode to 0 places for a NaN precision given as a parameter, as Neo4j reads it by @jasperblues in #357
  • Compare and sort texts by code point in Cypher on Postgres, not by the database's collation by @jasperblues in #358
  • Tell the sign of the least positive numbers on Oracle, whose SIGN gives 0 for them by @jasperblues in #359
  • Walk a parameter's list with a long item in Cypher, so Oracle takes it by @jasperblues in #360
  • Read a property a RETURN or a WITH gives through its text on Oracle, so a long one over two rows doesn't crash the session by @jasperblues in #362
  • Make all(), any(), none() and single() three-valued, and run the Cypher spec at v0.6.13 by @jasperblues in #368
  • Make the graph's tables on Postgres's first connection, as on Oracle, so Cypher through a persistence manager works on a new store by @jasperblues in #365
  • Fail round() by a precision below 0 or past 2147483647 only on a row that rounds a number by it, as Neo4j does by @jasperblues in #369
  • Say Postgres's exact decimal covers sum() and avg(), and that it is more accurate by @jasperblues in #370
  • Sort values of several kinds in Cypher's order on Oracle by @jasperblues in #371
  • Give the Oracle connection suite the 60-second timeout the other Oracle suites have by @jasperblues in #376
  • Sum floats as doubles on Oracle, so a float past NUMBER's range is kept, and run the Cypher spec at v0.6.15 by @jasperblues in #381
  • Read an unwound item's text through text where a write works out what it writes on Oracle, so a long one over two rows doesn't crash the session by @jasperblues in #380
  • Compare lists that hold a null item by item on Oracle in a statement that writes and in a reduce step by @jasperblues in #379
  • Give collect(DISTINCT)'s timing test 30 seconds, as CI's runners take up to 17 by @jasperblues in #383
  • Default the shipped Neo4j, Memgraph and FalkorDB test containers to latest, as drivine4j's do by @jasperblues in #382
  • Leave the store key's constraint out of force, and warn, when an index is in its way by @jasperblues in #385
  • Measure, cut, change and search a text past 4,000 bytes on Oracle, where it was null by @jasperblues in #384
  • Run the Cypher spec at v0.6.16 by @jasperblues in #386
  • Sort a list of zoned values by its moments on Postgres, item by item, as Neo4j does by @jasperblues in #387
  • Release @liberation-data/drivine to npm from a pushed vX.Y.Z tag, through CI by @jasperblues in #390
  • Join an OPTIONAL CALL or an OPTIONAL MATCH on 1 = 1 on Oracle, so a COUNT { } holding one isn't refused and doesn't crash the session by @jasperblues in #389
  • Release a version bump when it merges, and add a Prepare release workflow by @jasperblues in #392
  • Read an unwound item's text through the item's text on Oracle, where a RETURN or a WITH gives it by @jasperblues in #391
  • Run the Cypher spec at v0.6.17 by @jasperblues in #394
  • Read a list of temporal values item by item on Oracle, so a list worked out with temporal arithmetic parses at once, and sort zoned lists by their moments there too by @jasperblues in #395
  • Run the Cypher spec at v0.6.18 by @jasperblues in #398
  • Keep a compiled Cypher statement out of node-oracledb's statement cache on Oracle, so its PGA goes back when it ends by @jasperblues in #399
  • Read a list that holds temporal values at any depth item by item on Oracle, a coalesce of one and lists or maps of them too, so they parse at once by @jasperblues in #400
  • Prepare release: bump the model files' generator version with package.json, so the release PR passes CI by @jasperblues in #403
  • Release v3.4.0 by @jasperblues in #404

Full Changelog: v3.3.0...v3.4.0

Part of Drivine 2026.10, with drivine4j 0.4.0, drivine-python 0.3.0 and Cypher spec v0.6.18.