Hi Josh,

Thanks for responding. I think it makes sense to keep neo4j-gremlin around for 
that sort of use case. One question I have (mostly out of curiosity) is if you 
often find yourself using modern additions to TinkerPop (such as MergeV) with a 
legacy neo4j backend? I wonder if there are many users who would want all the 
latest features to TinkerPop and simply don’t mind if the backend graph is 
outdated.

I still feel as if the right choice here is to mark neo4j-gremlin as deprecated 
though. Simply looking at the commit history shows that it has been on bare 
bones life support for years. Given the lack of investment in it and the fact 
that the primary dependency has dropped support, I don’t think we should be 
positioning neo4j-gremlin as something which is actively supported and that we 
recommend to users. I think that putting deprecation notices on it will give 
new users a more accurate representation of the current level of support for 
the plugin.

That said I do agree that there is value in keeping neo4j-gremlin functioning 
if the maintenance burden is not too high. For that reason, I will withdraw my 
suggestion to eventually remove neo4j-gremlin from the repo. My suggestion is 
now that we mark it as deprecated but keep it in the repo including all the 
testing. We should maintain the current status quo of maintenance where on 
occasion, moderate effort will be made to ensure combability with new features. 
I think we could maintain neo4j-gremlin in this state for the foreseeable 
future, until such a time that a new feature in TinkerPop requires an 
unreasonable amount of effort to work with neo4j-gremlin. In such a situation 
we can reach out to the community to see if anyone is interested in taking on 
the work of updating neo4j-gremlin, and if not at that time it would need to be 
removed.

Let me know your thoughts on this suggestion.

Thanks,

Cole

From: Joshua Shinavier <j...@fortytwo.net>
Date: Thursday, July 20, 2023 at 4:21 PM
To: dev@tinkerpop.apache.org <dev@tinkerpop.apache.org>
Subject: Re: [DISCUSS] Future of Neo4J-Gremlin
Deprecating Neo4j support in Gremlin would definitely mark the end of an
era. I would be inclined to retain the support so long as it does not
represent a significant development burden, but this is only the
perspective of a *user* of legacy applications built with Neo4j-Gremlin.
There may be others who use Neo4j primarily as a back-end for TinkerPop,
not the other way around, and who are content with Neo4j 3.4 indefinitely,
or until legacy Neo4j does become unsupportable. If there aren't too many
of these dinosaurs, however, then the support will not be missed.

Josh



On Thu, Jul 20, 2023 at 9:35 AM Cole Greer <cole.gr...@improving.com.invalid>
wrote:

> Hi everyone,
>
> Just a quick update on this, I reached out to Michael Hunger (original
> author of neo4j-tinkerpop-api-impl) and he confirmed that Neo4j has shifted
> their focus away from gremlin support and they have no plans at this time
> to make further contributions to the project. Due to a lack of interest
> from both our community and Neo4j, I propose we deprecate neo4j-gremlin as
> of TinkerPop 3.7.0 with the intention of removing the module from the repo
> at a later date.
>
> Regards,
>
> Cole Greer
>
> From: Cole Greer <cole.gr...@improving.com.INVALID>
> Date: Friday, July 14, 2023 at 2:38 PM
> To: Dev Tinkerpop <dev@tinkerpop.apache.org>
> Subject: [DISCUSS] Future of Neo4J-Gremlin
> Hi everyone,
>
> With the addition of transaction support in TinkerGraph in 3.7, I think
> now is a good time to reassess the Neo4J-Gremlin module. To the best of my
> knowledge, Neo4J-Gremlin historically served 2 primary purposes. First it
> acted as a de facto reference implementation of gremlin transactions, and
> second it provided a convenient package for users to integrate Neo4J into
> the TinkerPop ecosystem (use of gremlin-console, server…). I don’t see a
> future for Neo4J-Gremlin in its current state in either of these roles.
> TinkerTransactionGraph will be filling the reference implementation role
> from now on, and the module has fallen so far out of support that it I
> don’t see it offering much value for users either.
>
> Neo4J support is dependent on neo4j-tinkerpop-api-impl to interface with
> Neo4J. This library has not been updated in over 5 years now and is stuck
> on Neo4J 3.4 which dropped out of support in 2020. As it stands, the
> neo4j-gremlin plugin cannot operate on any modern version of Neo4J and thus
> in my opinion, is no longer a viable product for users.
>
> Without a concrete plan for a significant investment in upgrading
> neo4j-tinkerpop-api-impl, I believe we should move to drop support for
> Neo4J-Gremlin.
>
> I would like to ask any users or stakeholders of Neo4J-Gremlin to reply
> with their thoughts on the future of the module. I would like to know if
> the plugin still provides any value for anyone beyond what I already
> captured. If anyone has objections to the deprecation of the module, I ask
> that they be raised in this thread. Further I would love to hear if anyone
> is interested in driving efforts to modernize and support Neo4J-Gremlin.
>
> I plan to leave this discussion open for a while to solicit feedback from
> as many stakeholders as possible. If there is no objections raised, I will
> assume a lazy consensus in favor of the deprecation and removal of
> Neo4J-Gremlin from TinkerPop.
>
> Regards,
>
> Cole
>

Reply via email to