Twitter Error display bug in Python 3
authorvunhat_minh <vunhat_minh@dwango.co.jp>
Thu, 23 Oct 2014 04:39:08 +0000 (13:39 +0900)
committervunhat_minh <vunhat_minh@dwango.co.jp>
Thu, 23 Oct 2014 04:39:08 +0000 (13:39 +0900)
docs/conf.py
rainbowstream/rainbow.py
rainbowstream/util.py
setup.py

index 985bdd5..628c223 100644 (file)
@@ -48,9 +48,9 @@ copyright = u'2014, Vu Nhat Minh'
 # built documents.
 #
 # The short X.Y version.
 # built documents.
 #
 # The short X.Y version.
-version = '1.1.8'
+version = '1.1.9'
 # The full version, including alpha/beta/rc tags.
 # The full version, including alpha/beta/rc tags.
-release = '1.1.8'
+release = '1.1.9'
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
index 206f84d..f06b510 100644 (file)
@@ -2073,6 +2073,8 @@ def stream(domain, args, name='Rainbow Stream'):
         printNicely(
             magenta("We have connection problem with twitter'stream API right now :("))
         detail_twitter_error(e)
         printNicely(
             magenta("We have connection problem with twitter'stream API right now :("))
         detail_twitter_error(e)
+        sys.stdout.write(g['decorated_name'](c['PREFIX']))
+        sys.stdout.flush()
 
 
 def fly():
 
 
 def fly():
index a3cd127..e8d3c74 100644 (file)
@@ -9,10 +9,12 @@ def detail_twitter_error(twitterException):
     Display Twitter Errors nicely
     """
     try:
     Display Twitter Errors nicely
     """
     try:
-        loadedJson = json.loads(twitterException.response_data)
+        # twitterException.response_data can be byte string on Python 3
+        # or nornal dict on Python 2
+        loadedJson = json.loads(twitterException.response_data.decode('utf8'))
         for m in loadedJson.get('errors', dict()):
             info = "Error " + str(m.get('code')) + ": " + m.get('message')
             printNicely(yellow(info))
         for m in loadedJson.get('errors', dict()):
             info = "Error " + str(m.get('code')) + ": " + m.get('message')
             printNicely(yellow(info))
-    except ValueError:
-        info = "Error: " + twitterException.response_data
+    except:
+        info = "Error: " + twitterException.response_data.decode('utf8')
         printNicely(yellow(info))
         printNicely(yellow(info))
index 85973a7..0e34739 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -3,7 +3,7 @@ import os
 import os.path
 
 # Bumped version
 import os.path
 
 # Bumped version
-version = '1.1.8'
+version = '1.1.9'
 
 # Require
 install_requires = [
 
 # Require
 install_requires = [