diff --git a/plugin/packages/wakatime/__about__.py b/plugin/packages/wakatime/__about__.py index a4ec680..8208813 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__ = ('4', '0', '11') +__version_info__ = ('4', '0', '13') __version__ = '.'.join(__version_info__) __author__ = 'Alan Hamlett' __author_email__ = 'alan@wakatime.com' diff --git a/plugin/packages/wakatime/base.py b/plugin/packages/wakatime/base.py index 30186c8..22085de 100644 --- a/plugin/packages/wakatime/base.py +++ b/plugin/packages/wakatime/base.py @@ -157,8 +157,10 @@ def parseArguments(argv): parser.add_argument('--proxy', dest='proxy', help='optional https proxy url; for example: '+ 'https://user:pass@localhost:8080') - parser.add_argument('--project', dest='project_name', - help='optional project name; auto-discovered project takes priority') + parser.add_argument('--project', dest='project', + help='optional project name') + parser.add_argument('--alternate-project', dest='alternate_project', + help='optional alternate project name; auto-discovered project takes priority') parser.add_argument('--disableoffline', dest='offline', action='store_false', help='disables offline time logging instead of queuing logged time') @@ -444,16 +446,23 @@ def main(argv=None): if not args.notfile: project = find_project(args.targetFile, configs=configs) branch = None - project_name = args.project_name + project_name = args.project if project: branch = project.branch() - project_name = project.name() + if not project_name: + project_name = project.name() + if not project_name: + project_name = args.alternate_project + + kwargs = vars(args) + if 'project' in kwargs: + del kwargs['project'] if send_heartbeat( project=project_name, branch=branch, stats=stats, - **vars(args) + **kwargs ): queue = Queue() while True: