Releases: opencypher/openCypher
Releases · opencypher/openCypher
Milestone 23
This release includes:
- TCK API - Fix bug in map comparison
Milestone 22
This release includes:
- TCK API
- Fix bug in unordered row comparison
- Fix bug in unordered list comparison
- Avoid silent failing on scenario initialization queries
- Fix bug in expected error checking
- TCK
- Update expected error in ReturnOrderBy6 and WithOrderBy4
Milestone 21
This release includes:
- Fix test assertions in Feature Aggregation5
- Fix wrong variable in Feature ExistentialSubquery2
Milestone 20
This release includes:
- Fix test assertions of labels function — compare irrespective of order now
- Fix antlr parser demo, so that Cypher.g4 file does not reside as a resource in the repository anymore — it is looked for in the current working directory now
Milestone 19
This release includes:
- General
- Upgrade of log4j version to 2.17.0
- Upgrade of xmlgraphics-commons version to 2.6
- Minor dependencies fixes
- CIPs
- Accept CIP2021-07-07 Grouping key and aggregation expressions
- Accept CIP2021-08-10 Operator precedence
- Adjustment of CIP2015-05-13 EXISTS to grammar refactorings
- TCK, TCK API, and TCK tools
- Update TCK scenarios to reflect CIP2021-07-07 Grouping key and aggregation expressions, primarily in TCK features
Return6
,ReturnOrderBy6
,With6
, andWithOrderBy4
- Add TCK scenarios to reflect CIP2021-08-10 Operator precedence
- Remove deprecated syntax from TCK scenarios, specifically
- Octal number syntax starting with
0
instead of0o
- No coercion of lists to boolean
- Octal number syntax starting with
- Add scenarios to TCK feature
WithSkipLimit3
- Update scenario in TCK feature
List6
to avoid introducing variable in pattern predicate - Fix hashcode bug in TCK API class
CypherLists
- Speed up of TCK integrity tests
- Update TCK scenarios to reflect CIP2021-07-07 Grouping key and aggregation expressions, primarily in TCK features
- Grammar and grammar tools
- Add antlr parser demo
- Grammar refactorings
- Add
<PatternPredicate> ::= <RelationshipsPattern>
for clearer distinction of<RelationshipsPattern>
appearing as an<Atom>
- Add separate production of s for better referencing and separation of quantifiers in the grammar
- Add
- Add functionality to the grammar toolkit, e.g. praising of ISO WG3 BNF
- Fix bug in grammar non-terminal
<UnaryAddSubtractExpression>
- Remove use of a deprecated antlr class
Milestone 18
This release includes two fixes:
- Fix for Scala cross building for 2.12 and 2.13
- Fix of TCK scenario expressions/boolean/Boolean5.[6]
Milestone 17
This release includes:
- Support for Scala cross building for 2.12 and 2.13
- TCK:
- New scenarios in clauses/with-orderBy
- New scenarios in clauses/call/Call5
- New scenarios for creating multiple nodes with overlapping label sets in clauses/create
- New scenarios in expressions/pattern
- New scenarios in expressions/existentialSubquery
- New scenarios in expressions/quantifier
- New scenarios in expressions/boolean
- Fixing missing result order in a number of scenarios
- Fixing wrong result expectation of scenario expressions/boolean/Boolean5.[6]
- Fixing type expectation scenarios in expressions/typeConversion scenarios
- Fixing type expectation scenarios in expressions/list/List1
- TCK tooling:
- Scenario testing failure get automatically assigned the tag @NegativeTest by the TCK API for easy discovery
- TCK error characteristics now allow wildcards
- TCK API now retain causing exception when something fails during side effect measurement queries
- New TCK step for creating CSV files
- Grammar:
- Fixing YIELD grammar
- Grammar tooling:
- tool grammarLink.html in tools/grammar-production-links, which provides the possibility to stably link a production by name in the openCypher grammar files without hard-coding the line number.
Milestone 16
This release includes the following:
- Dependencies:
- Upgrades:
- Java: 1.8 -> 11
- jUnit 5: 5.4 -> 5.7
- Cucumber: 4.2.0 -> 5.7.0
- Hamcrest: 1.3 -> 2.2
- Maven Surefire Plugin: 2.22.1 -> 2.22.2
- Maven Source Plugin: 3.0.0 -> 3.2.1
- Commons CSV: 1.6 -> 1.8
- Freemarker: 2.3.23 -> 2.3.30
- Batik: 1.8 -> 1.13
- XMLgraphics Commons: 2.0 -> 2.4
- Jackson Dataformat XML: 2.9.0 -> 2.11.3
- Dropped: ScalaCheck, APIguardian, jUnit 4
- Added: Scalatest 3.2.2, co.helmethair.scalatest-junit-runner 0.1.8
- Upgrades:
- CIPs:
- Clarifying the Type System CIP regarding difference between graph elements and maps, particularly to point out that maps can explicitly contains with null values as is made use of by the
SET
clause
- Clarifying the Type System CIP regarding difference between graph elements and maps, particularly to point out that maps can explicitly contains with null values as is made use of by the
- TCK:
- Categorizing scenarios according to which feature of which clause or expression is tested; cf.
tck/index.adoc
for an overview - Numbering scenarios within a feature
- Adding scenarios for openCypher value literals
- Adding scenarios for testing on invalid arguments to
NOT
- Adding scenarios for maps with null values
- Removing scenarios Call3.[7] and Call3.[8], which are currently not covered the openCypher spec
- Removing scenarios that used VOID in the procedure signature;
VOID
has no established meaning in openCypher
- Categorizing scenarios according to which feature of which clause or expression is tested; cf.
- TCK tooling:
- Extending the TCK API to discover feature in subdirectories/subdirectories recursively
- Unifying TCK API discovery of features as files in file system and as resources in a jar file
- Extending the TCK API to expose the category and the scenarios number of each scenario
- Extending the TCK API to expose an example index for scenarios that originate from scenario outlines; example index numbers the examples in order of their listing in the feature file starting at 0
- Extending the TCK API to allow the naming of example of a scenario outline and expose that name for scenarios that originate from scenario outlines
- Introduction of TCK inspection tools
- A simple command line tool that outputs scenarios counts per categories and feature
- The TCK Browser, a web browser accessed tool, that allows browsing the TCK as well as inspecting differences between two versions of the TCK
- Modernising the TCK integrity checks; including
- Adding a check for duplicate scenario names within a feature
- Introducing a tag to switch off the openCypher grammar check on scenarios that deliberately violate the grammar requirement for testing purposes
- Introducing a tag to switch off the openCypher style check on scenarios that deliberately violate the openCypher style for testing purposes
- Adding a generator for
tck/index.adoc
- Adding
TckTree
to the TCK API to support hierarchical grouping of scenarios by categories, features, outlines, and tags - Adding more support for TCK compatibility testing, i.e. for running scenarios against an openCypher implementation
Milestone 15
- Changes to Equality and Comparability CIP and corresponding TCK scenarios
- Extends grammar tooling for reading and writing SQL style BNF
- Adds TCK reporting and TCK report comparison modules
Milestone 14
This release includes:
- Removed ANTLR dependency for TCK API (uses fastparse instead)