[
https://issues.apache.org/jira/browse/TINKERPOP-2435?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stephen Mallette closed TINKERPOP-2435.
---------------------------------------
Fix Version/s: 3.4.9
3.5.0
Assignee: Stephen Mallette
Resolution: Fixed
> Gremlin Python sugar syntax for values() can lead to unexpected problems
> ------------------------------------------------------------------------
>
> Key: TINKERPOP-2435
> URL: https://issues.apache.org/jira/browse/TINKERPOP-2435
> Project: TinkerPop
> Issue Type: Bug
> Components: python
> Affects Versions: 3.4.8
> Reporter: Stephen Mallette
> Assignee: Stephen Mallette
> Priority: Minor
> Fix For: 3.5.0, 3.4.9
>
>
> This issue was originally brought up on Gremlin Users:
> https://groups.google.com/g/gremlin-users/c/GRbsqJ-2t_E/m/IaWCOdGyCAAJ
> but in summary there is an issue with {{GraphTraversal.__getattr__}} which
> provides sugar for {{values(key)}}. It works fine except that PyCharm
> debugger introspects by way of {{__len__}} which then calls
> {{values("__len__")}} and alters the traversal. It is fixed with something
> like:
> {code}
> def __getattr__(self, key):
> if key == '__len__':
> raise AttributeError("nope")
> return self.values(key)
> {code}
> but I'm not sure if that's the best fix for this issue.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)