Releases: neo4j/cypher-builder
v2.10.0
Minor Changes
-
#599
a0e01d0Thanks @angrykoala! - Add support for range operator ([ .. ]) inCypher.List,PropertyRef.rangeand usingCypher.listRange:new Cypher.Variable().property("prop").range(1, -1); // var0["prop"][1..-1] new Cypher.List([1, 2, 3, 4]).range(1, -1); // [1, 2, 3, 4][1..-1] Cypher.listRange(expr, 2, -1); // expr[2..-1]
-
#600
074ea4aThanks @angrykoala! - Add support for.setand.removein Cypher.With
Patch Changes
-
#596
e3a3447Thanks @angrykoala! - Support for a single value inCypher.minusoperator:Cypher.minus(var1, var2); // var1 - var2 Cypher.minus(var1); // -var1
v2.9.0
Minor Changes
-
#591
d8b28c2Thanks @angrykoala! - Support for index operator on arbitrary expressions usinglistIndexCypher.listIndex(Cypher.collect(new Cypher.Variable()), 2);
collect(var0)[2]
v2.8.1
Patch Changes
- #586
3dac2b8Thanks @angrykoala! - Deprecates second parameter ofnew ListComprehensionin favor of.in
v2.8.0
Minor Changes
-
#559
137a908Thanks @angrykoala! - Support for dynamic labels in patternsconst query = new Cypher.Match( new Cypher.Pattern(new Cypher.Node(), { labels: new Cypher.Param("Movie"), }) );
MATCH (this0:$($param0))
-
#559
0223ca9Thanks @angrykoala! - Add support for dynamic types in patternsconst query = new Cypher.Match( new Cypher.Pattern(new Cypher.Node()) .related({ type: new Cypher.Param("ACTED_IN"), }) .to() );
MATCH (this0)-[:$($param1)]->()
Patch Changes
- #561
83774e8Thanks @angrykoala! - Deprecates the optionlabelOperator, this option only exists for compatibility with Cypher 4 and is no longer relevant for Cypher 5 or 25
v2.7.2
Patch Changes
-
#554
e3278f8Thanks @angrykoala! - DeprecatesCall.importWithin favor of scope variables inCallconstructor -
#554
a9af397Thanks @angrykoala! - Deprecate apoc functions and procedures. These will no longer be supported in version 3 of Cypher Builder:-
apoc.date.convertFormat -
apoc.util.validate -
apoc.util.validatePredicate -
apoc.cypher.runFirstColumnMany -
apoc.cypher.runFirstColumnSingleThese can still be used by using the
Functionclass directly:const convertFormat = new Cypher.Function("apoc.date.convertFormat", [ new Cypher.Variable(), new Cypher.Literal("iso_zoned_date_time"), new Cypher.Literal("iso_offset_date_time"), ]);
-
v2.7.1
Patch Changes
- #549
7b5b625Thanks @angrykoala! - Makes value ofCypher.Paramwritable so it can be overwritten before the query is built
v2.7.0
Minor Changes
-
#541
6b02a4aThanks @angrykoala! - Add support forOPTIONAL CALLon procedures:Cypher.db.labels().optional().yield("*");
OPTIONAL CALL db.labels() YIELD *
v2.6.0
Minor Changes
-
#528
2f8dfa6Thanks @angrykoala! - Add optionretrytoCall.inTransactionsconfiguration to add aRETRYstatement toCALL {} IN TRANSACTIONS.
This option can be a boolean set to true or a number to define the retry seconds:new Cypher.Call(subquery).inTransactions({ retry: true, });
CALL { // ... } IN TRANSACTIONS ON ERROR RETRY
Using it in conjuntion with
onErrorand with a defined seconds of retry:new Cypher.Call(subquery).inTransactions({ retry: 10, onError: "break", });
CALL { // ... } IN TRANSACTIONS ON ERROR RETRY FOR 10 SECONDS THEN BREAK
v2.5.2
Patch Changes
-
#530
35fdd7eThanks @angrykoala! - Fix types to support paths on chained.matchand.optionalMatch:const path = new Cypher.PathVariable(); const query = new Cypher.Match(new Cypher.Node()).match(pattern.assignTo(path)).return(path);
MATCH (this0) MATCH p3 = (this0)-[this1:ACTED_IN]->(this2) RETURN p3
v2.5.1
Patch Changes
- #523
5805532Thanks @angrykoala! - Deprecates typeOperationin favor of the more generalExpr