Upgrade wakatime-cli to v13.0.7
This commit is contained in:
parent
c87bdd041c
commit
e1390d7647
|
@ -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'
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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)
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
Loading…
Reference in New Issue