[ 
https://issues.apache.org/jira/browse/TINKERPOP-1443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15484345#comment-15484345
 ] 

Marko A. Rodriguez commented on TINKERPOP-1443:
-----------------------------------------------

We do have an "API checker," that ensures that {{__}} and {{GraphTraversal}} 
have the same API. Perhaps its not complete enough.

https://github.com/apache/tinkerpop/blob/master/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/graph/GraphTraversalTest.java

I wasn't around for the {{has}}/{{hasLabel}} updates in this release. Does 
anyone know why these methods were changed and why we didn't have test failures 
from the {{GraphTraversalTest}} before?

> Use an API checker during build
> -------------------------------
>
>                 Key: TINKERPOP-1443
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1443
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: build-release
>    Affects Versions: 3.2.2
>            Reporter: Lukas Krejci
>
> Tinkerpop 3.2.2 changed the signature of the method 
> {{GraphTraversal.hasLabel}} from {{(String...)}} to {{(String, String...)}}. 
> While this is certainly an improvement, it is both source and binary 
> incompatible change.
> I.e. even if every usage of {{hasLabel}} had at least one parameter in the 
> user code, none of those calls will work until all the user code is 
> recompiled using Tinkerpop 3.2.2.
> I don't know the versioning policy of Tinkerpop but changes like the above in 
> a micro/patch release are generally unexpected.
> Please consider API checkers like http://revapi.org to warn about such 
> incompatible API changes...



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to