[
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)