thingdom / node-neo4j

[RETIRED] Neo4j graph database driver (REST API client) for Node.js
Apache License 2.0
925 stars 135 forks source link

neo4j 3.x #198

Closed royipressburger closed 6 years ago

royipressburger commented 8 years ago

Hi

Is there any plan to support neo4j 3.x?

I didn't see and breaking changes in the APIexcept the bolt thingy.. Is there even something to change in this library?

aseemk commented 8 years ago

Hi @royipressburger,

Good question! There are a few different aspects to this.

As you allude to, the library should continue to "just work" against Neo4j 3.x AFAIK. But I'll officially test it later, and I should add 3.x to the Travis CI matrix.

But the library currently uses HTTP, while Neo4j 3.x adds a new binary protocol named "Bolt", also as you allude to. Bolt is better than HTTP for both performance and robustness (at scale).

I wasn't planning on adding support for Bolt to this library, because I'm not sure this library adds much value (in its current form) over the first-party JavaScript driver Neo Technology has put out for Neo4j 3.x now (which only supports Neo4j 3.x, as it's Bolt-only):

https://github.com/neo4j/neo4j-javascript-driver

So in summary, if you're already running node-neo4j on an existing project, this library should "just work" (try it and feel free to file bugs if you run into any), but if you're starting a new project, I'd recommend starting with the new official Neo4j JavaScript driver for now.

There might still be some value this library could add on top of the official driver, so feel free to provide any suggestions. One thing I'm interested in is providing an "OGM"-type framework (similar to ActiveRecord or Mongoose) for Neo4j, but that's a much bigger task.

Thanks for the question. Hope this helps!