From 22fa9d50f167c72b212a70fafd18058a9227af06 Mon Sep 17 00:00:00 2001 From: Ruslan Kuprieiev Date: Sun, 1 Oct 2017 03:12:04 +0300 Subject: [PATCH 1/2] python3: cli: add workaround for required subcommand http://bugs.python.org/issue9253#msg186387 Fixes #239 Signed-off-by: Ruslan Kuprieiev --- dvc/cli.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dvc/cli.py b/dvc/cli.py index cf96ab7a9..ccfcf2b3a 100644 --- a/dvc/cli.py +++ b/dvc/cli.py @@ -1,5 +1,6 @@ from __future__ import print_function +import sys import argparse from multiprocessing import cpu_count @@ -55,6 +56,11 @@ def parse_args(argv=None): dest='cmd', help='Use dvc CMD --help for command-specific help') + # NOTE: Workaround for bug in Python 3 + if sys.version_info[0] == 3: + subparsers.required = True + subparsers.dest = 'cmd' + # Init init_parser = subparsers.add_parser( 'init', From 7ee58220ea77a259522a4fd4fb42b6b503707f3c Mon Sep 17 00:00:00 2001 From: Ruslan Kuprieiev Date: Sun, 1 Oct 2017 03:16:14 +0300 Subject: [PATCH 2/2] dvc: deprecate 'sync' command Fixes #237 Signed-off-by: Ruslan Kuprieiev --- dvc/cli.py | 9 +-------- dvc/command/data_sync.py | 8 -------- 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/dvc/cli.py b/dvc/cli.py index ccfcf2b3a..c2564be1c 100644 --- a/dvc/cli.py +++ b/dvc/cli.py @@ -8,7 +8,7 @@ from dvc.command.init import CmdInit from dvc.command.remove import CmdRemove from dvc.command.run import CmdRun from dvc.command.repro import CmdRepro -from dvc.command.data_sync import CmdDataSync, CmdDataPush, CmdDataPull, CmdDataStatus +from dvc.command.data_sync import CmdDataPush, CmdDataPull, CmdDataStatus from dvc.command.lock import CmdLock from dvc.command.gc import CmdGC from dvc.command.import_file import CmdImportFile @@ -128,13 +128,6 @@ def parse_args(argv=None): default=cpu_count(), help='Number of jobs to run simultaneously.') - # Sync - sync_parser = subparsers.add_parser( - 'sync', - parents=[parent_sync_parser], - help='Synchronize data file with cloud (cloud settings already setup.') - sync_parser.set_defaults(func=CmdDataSync) - # Pull pull_parser = subparsers.add_parser( 'pull', diff --git a/dvc/command/data_sync.py b/dvc/command/data_sync.py index dff434da0..8513b74de 100644 --- a/dvc/command/data_sync.py +++ b/dvc/command/data_sync.py @@ -3,14 +3,6 @@ from dvc.logger import Logger import dvc.data_cloud as cloud -class CmdDataSync(CmdBase): - def __init__(self, settings): - super(CmdDataSync, self).__init__(settings) - - def run(self): - with DvcLock(self.is_locker, self.git): - self.cloud.sync(self.parsed_args.targets, self.parsed_args.jobs) - class CmdDataPull(CmdBase): def __init__(self, settings):