[ https://issues.apache.org/jira/browse/BEAM-4006?focusedWorklogId=128073&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-128073 ]
ASF GitHub Bot logged work on BEAM-4006: ---------------------------------------- Author: ASF GitHub Bot Created on: 27/Jul/18 06:24 Start Date: 27/Jul/18 06:24 Worklog Time Spent: 10m Work Description: tvalentyn commented on a change in pull request #5729: [BEAM-4006] Futurize transforms subpackage URL: https://github.com/apache/beam/pull/5729#discussion_r205678298 ########## File path: sdks/python/apache_beam/transforms/window.py ########## @@ -246,10 +263,33 @@ def __init__(self, value, timestamp): self.value = value self.timestamp = Timestamp.of(timestamp) - def __cmp__(self, other): - if type(self) is not type(other): - return cmp(type(self), type(other)) - return cmp((self.value, self.timestamp), (other.value, other.timestamp)) + def __eq__(self, other): Review comment: I suggest: 1. Use `@total_ordering`. 2. Implement `__ne__` as `return not self == other` 3. Implement `__lt__` without `cmp` and `tuple`s, which performs slightly better: ``` def __lt__(self, other): if type(self) != type(other): return type(self) < type(other) if self.value != other.value: return self.value < other.value return self.timestamp < other.timestamp ``` ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking ------------------- Worklog Id: (was: 128073) Time Spent: 11h 20m (was: 11h 10m) > Futurize and fix python 2 compatibility for transforms subpackage > ----------------------------------------------------------------- > > Key: BEAM-4006 > URL: https://issues.apache.org/jira/browse/BEAM-4006 > Project: Beam > Issue Type: Sub-task > Components: sdk-py-core > Reporter: Robbe > Assignee: Matthias Feys > Priority: Major > Time Spent: 11h 20m > Remaining Estimate: 0h > -- This message was sent by Atlassian JIRA (v7.6.3#76005)