diff --git a/plugin/packages/wakatime/__about__.py b/plugin/packages/wakatime/__about__.py index 2a0ae32..003c493 100644 --- a/plugin/packages/wakatime/__about__.py +++ b/plugin/packages/wakatime/__about__.py @@ -1,7 +1,7 @@ __title__ = 'wakatime' __description__ = 'Common interface to the WakaTime api.' __url__ = 'https://github.com/wakatime/wakatime' -__version_info__ = ('6', '0', '5') +__version_info__ = ('6', '0', '6') __version__ = '.'.join(__version_info__) __author__ = 'Alan Hamlett' __author_email__ = 'alan@wakatime.com' diff --git a/plugin/packages/wakatime/logger.py b/plugin/packages/wakatime/logger.py index 3d3f166..c3d7635 100644 --- a/plugin/packages/wakatime/logger.py +++ b/plugin/packages/wakatime/logger.py @@ -73,11 +73,15 @@ class JsonFormatter(logging.Formatter): def traceback_formatter(*args, **kwargs): - if 'level' in kwargs and (kwargs['level'].lower() == 'warn' or kwargs['level'].lower() == 'warning'): + try: + level = kwargs.get('level', args[0]).lower() + except: + level = None + if level == 'warn' or level == 'warning': logging.getLogger('WakaTime').warning(traceback.format_exc()) - elif 'level' in kwargs and kwargs['level'].lower() == 'info': + elif level == 'info': logging.getLogger('WakaTime').info(traceback.format_exc()) - elif 'level' in kwargs and kwargs['level'].lower() == 'debug': + elif level == 'debug': logging.getLogger('WakaTime').debug(traceback.format_exc()) else: logging.getLogger('WakaTime').error(traceback.format_exc()) diff --git a/plugin/packages/wakatime/offlinequeue.py b/plugin/packages/wakatime/offlinequeue.py index 9455e2b..dcf9b13 100644 --- a/plugin/packages/wakatime/offlinequeue.py +++ b/plugin/packages/wakatime/offlinequeue.py @@ -12,7 +12,6 @@ import logging import os -import traceback from time import sleep try: @@ -70,7 +69,7 @@ class Queue(object): conn.commit() conn.close() except sqlite3.Error: - log.error(traceback.format_exc()) + log.traceback() def pop(self): if not HAS_SQL: # pragma: nocover @@ -81,7 +80,7 @@ class Queue(object): try: conn, c = self.connect() except sqlite3.Error: - log.debug(traceback.format_exc()) + log.traceback('debug') return None loop = True while loop and tries > -1: @@ -119,11 +118,11 @@ class Queue(object): } loop = False except sqlite3.Error: # pragma: nocover - log.debug(traceback.format_exc()) + log.traceback('debug') sleep(wait) tries -= 1 try: conn.close() except sqlite3.Error: # pragma: nocover - log.debug(traceback.format_exc()) + log.traceback('debug') return heartbeat diff --git a/plugin/packages/wakatime/stats.py b/plugin/packages/wakatime/stats.py index 3eda9d3..935f9b4 100644 --- a/plugin/packages/wakatime/stats.py +++ b/plugin/packages/wakatime/stats.py @@ -20,8 +20,8 @@ from .packages import ( get_lexer_by_name, guess_lexer_for_filename, get_filetype_from_buffer, - ClassNotFound, ) +from .packages.pygments.lexers import ClassNotFound try: from .packages import simplejson as json # pragma: nocover @@ -108,7 +108,7 @@ def guess_lexer_using_modeline(text): if file_type is not None: try: lexer = get_lexer_by_name(file_type) - except: # pragma: nocover + except ClassNotFound: pass if lexer is not None: @@ -231,7 +231,7 @@ def get_file_head(file_name): try: with open(file_name, 'r', encoding='utf-8') as fh: text = fh.read(512000) - except: # pragma: nocover + except: try: with open(file_name, 'r', encoding=sys.getfilesystemencoding()) as fh: text = fh.read(512000)