Upgrade wakatime-cli to v13.0.7

This commit is contained in:
Alan Hamlett 2020-02-13 09:22:15 -08:00
parent c87bdd041c
commit e1390d7647
447 changed files with 90783 additions and 36 deletions

View File

@ -1,7 +1,7 @@
__title__ = 'wakatime'
__description__ = 'Common interface to the WakaTime api.'
__url__ = 'https://github.com/wakatime/wakatime'
__version_info__ = ('13', '0', '5')
__version_info__ = ('13', '0', '7')
__version__ = '.'.join(__version_info__)
__author__ = 'Alan Hamlett'
__author_email__ = 'alan@wakatime.com'

View File

@ -22,6 +22,7 @@ from .offlinequeue import Queue
from .session_cache import SessionCache
from .utils import get_hostname, get_user_agent
from .packages import tzlocal
from .packages import certifi
log = logging.getLogger('WakaTime')
@ -101,16 +102,12 @@ def send_heartbeats(heartbeats, args, configs, use_ntlm_proxy=False):
should_try_ntlm = '\\' in args.proxy
proxies['https'] = args.proxy
ssl_verify = not args.nosslverify
if args.ssl_certs_file and ssl_verify:
ssl_verify = args.ssl_certs_file
# send request to api
response, code = None, None
try:
response = session.post(api_url, data=request_body, headers=headers,
proxies=proxies, timeout=timeout,
verify=ssl_verify)
verify=_get_verify(args))
except RequestException:
if should_try_ntlm:
return send_heartbeats(heartbeats, args, configs, use_ntlm_proxy=True)
@ -204,10 +201,6 @@ def get_time_today(args, use_ntlm_proxy=False):
should_try_ntlm = '\\' in args.proxy
proxies['https'] = args.proxy
ssl_verify = not args.nosslverify
if args.ssl_certs_file and ssl_verify:
ssl_verify = args.ssl_certs_file
params = {
'start': 'today',
'end': 'today',
@ -218,7 +211,7 @@ def get_time_today(args, use_ntlm_proxy=False):
try:
response = session.get(url, params=params, headers=headers,
proxies=proxies, timeout=timeout,
verify=ssl_verify)
verify=_get_verify(args))
except RequestException:
if should_try_ntlm:
return get_time_today(args, use_ntlm_proxy=True)
@ -282,6 +275,16 @@ def get_time_today(args, use_ntlm_proxy=False):
return None, API_ERROR
def _get_verify(args):
verify = not args.nosslverify
if verify:
if args.ssl_certs_file:
verify = args.ssl_certs_file
else:
verify = certifi.where()
return verify
def _process_server_results(heartbeats, code, content, results, args, configs):
log.debug({
'response_code': code,

View File

@ -39,6 +39,8 @@ class JavaParser(TokenParser):
self._process_attribute(token, content)
elif self.partial(token) == 'Operator':
self._process_operator(token, content)
elif self.partial(token) == 'Punctuation':
self._process_operator(token, content)
else:
self._process_other(token, content)

View File

@ -9,6 +9,58 @@
:license: BSD, see LICENSE for more details.
"""
"""
Token.Keyword.Namespace import None
Token.Text import
Token.Name.Namespace os import
Token.Operator , import-2
Token.Text import-2
Token.Name.Namespace sys import-2
Token.Text
import-2
Token.Keyword.Namespace import None
Token.Text import
Token.Name.Namespace django.forms.monstertruck import
Token.Text
import-2
Token.Keyword.Namespace import None
Token.Text import
Token.Name.Namespace os import
Token.Operator , import-2
Token.Text import-2
Token.Name.Namespace sys import-2
Token.Text
import-2
Token.Keyword.Namespace import None
Token.Text import
Token.Name.Namespace django import
Token.Name.Namespace . import-2
Token.Name.Namespace forms import-2
Token.Name.Namespace . import-2
Token.Name.Namespace monstertruck import-2
Token.Text
import-2
None Token.Keyword.Namespace import
import Token.Text
import Token.Name.Namespace django
import-2 Token.Name.Namespace .
import-2 Token.Name.Namespace forms
import-2 Token.Name.Namespace .
import-2 Token.Name.Namespace monstertruck
import-2 Token.Text
None Token.Keyword.Namespace from
from Token.Text
from Token.Name.Namespace app
from-2 Token.Text
"""
from . import TokenParser
@ -32,7 +84,7 @@ class PythonParser(TokenParser):
if self.partial(token) == 'Namespace':
self._process_namespace(token, content)
elif self.partial(token) == 'Operator':
self._process_operator(token, content)
self._process_punctuation(token, content)
elif self.partial(token) == 'Punctuation':
self._process_punctuation(token, content)
elif self.partial(token) == 'Text':
@ -43,21 +95,20 @@ class PythonParser(TokenParser):
def _process_namespace(self, token, content):
if self.state is None:
self.state = content
elif content == 'as':
self.nonpackage = True
else:
if content == 'as':
self.nonpackage = True
else:
self._process_import(token, content)
def _process_operator(self, token, content):
pass
self._process_import(token, content)
def _process_punctuation(self, token, content):
if content == '(':
self.parens += 1
self.nonpackage = False
elif content == ')':
self.parens -= 1
self.nonpackage = False
self.nonpackage = False
elif content == ',' and self.state == 'import-2':
self.state = 'import'
def _process_text(self, token, content):
if self.state is not None:
@ -72,12 +123,12 @@ class PythonParser(TokenParser):
if not self.nonpackage:
if self.state == 'from':
self.append(content, truncate=True, truncate_to=1)
self.state = 'from-2'
self.state = None
elif self.state == 'import':
self.append(content, truncate=True, truncate_to=1)
self.state = 'import-2'
elif self.state == 'import-2':
self.append(content, truncate=True, truncate_to=1)
pass
else:
self.state = None
self.nonpackage = False

View File

@ -23,7 +23,9 @@ sys.path.insert(0, os.path.join(pwd, 'packages'))
from .compat import is_py26
if not is_py26:
if is_py26:
sys.path.insert(0, os.path.join(pwd, 'packages', 'py26'))
else:
sys.path.insert(0, os.path.join(pwd, 'packages', 'py27'))
from .__about__ import __version__

Some files were not shown because too many files have changed in this diff Show More