openCypher M16 release

13 views
Skip to first unread message

hannes...@neotechnology.com

unread,
Jun 30, 2021, 10:46:51 AM6/30/21
to openCypher

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

Reply all
Reply to author
Forward
0 new messages