updated wakatime.py package. using new usage logic for better actions accuracy.

This commit is contained in:
Alan Hamlett
2013-07-10 00:14:44 -07:00
parent eb1e3f72db
commit a9e0bdb3fe
9 changed files with 180 additions and 83 deletions

View File

@ -11,8 +11,10 @@
import logging
import os
from subprocess import Popen, PIPE
from .base import BaseProject
from ..packages.ordereddict import OrderedDict
log = logging.getLogger(__name__)
@ -20,9 +22,42 @@ log = logging.getLogger(__name__)
class Subversion(BaseProject):
def base(self):
return super(Subversion, self).base()
def process(self):
self.info = self._get_info()
if 'Repository Root' in self.info:
return True
return False
def name(self):
return self.info['Repository Root'].split('/')[-1]
def _get_info(self):
info = OrderedDict()
stdout = None
try:
stdout, stderr = Popen([
'svn', 'info', os.path.realpath(self.path)
], stdout=PIPE).communicate()
except OSError:
pass
else:
if stdout:
interesting = [
'Repository Root',
'Repository UUID',
'URL',
]
for line in stdout.splitlines():
line = line.split(': ', 1)
if line[0] in interesting:
info[line[0]] = line[1]
return info
def tags(self):
tags = []
for key in self.info:
if key == 'Repository UUID':
tags.append(self.info[key])
if key == 'URL':
tags.append(os.path.dirname(self.info[key]))
return tags