Hello community!
We are pleased to announce the next milestone release, 1.0.0-M16, of openCypher, which 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
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
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
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
You will find download links to the artifacts from our webpage at https://www.opencypher.org/resources.
If you are using Maven for dependency management, the TCK and grammar also exist as modules on Maven Central, including the TCK API and other tools.
Please, do not hesitate to reach out to us with any problems you face with the published artifacts, or questions you might have. Bug reports are preferably served as issues on the GitHub repository.
Best
Hannes