From a920518a26d258c6b508445d0641d544a922e327 Mon Sep 17 00:00:00 2001 From: Guillaume Ayoub Date: Thu, 31 Oct 2013 14:05:15 +0100 Subject: [PATCH] Return an int for __hash__ --- NEWS.rst | 2 +- radicale/ical.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/NEWS.rst b/NEWS.rst index a470bf05..f9c6248a 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -13,7 +13,7 @@ * Support colors (by Jochen Sprickerhof) * Decode URLs in XML (by Jean-Marc Martins) * Fix PAM authentication (by Stepan Henek) -* Use consistent hashes for etags (by 9m66p93w) +* Use consistent etags (by 9m66p93w) 0.8 - Rainbow diff --git a/radicale/ical.py b/radicale/ical.py index a0e33970..3df7aaf4 100644 --- a/radicale/ical.py +++ b/radicale/ical.py @@ -110,9 +110,7 @@ class Item(object): "\nEND:", "\nX-RADICALE-NAME:%s\nEND:" % self._name) def __hash__(self): - md5 = hashlib.md5() - md5.update(self.text.encode("utf-8")) - return md5.hexdigest() + return hash(self.text) def __eq__(self, item): return isinstance(item, Item) and self.text == item.text @@ -124,7 +122,9 @@ class Item(object): Etag is mainly used to know if an item has changed. """ - return '"%s"' % hash(self) + md5 = hashlib.md5() + md5.update(self.text.encode("utf-8")) + return '"%s"' % md5.hexdigest() @property def name(self):