From 73c82630d58c11ed05c78c8231562d2b29e3a883 Mon Sep 17 00:00:00 2001 From: "Philippe O. Wagner" Date: Tue, 11 Sep 2018 08:56:00 +0200 Subject: [PATCH 1/4] changes console script name --- setup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 19e7c0d..204c7c1 100644 --- a/setup.py +++ b/setup.py @@ -24,7 +24,7 @@ def run_tests(self): tox.cmdline() -setup(name="virtualenv-clone", +setup(name="virtualenv-clone-cura", version='0.3.0', description='script to clone virtualenvs.', author='Edward George', @@ -34,7 +34,7 @@ def run_tests(self): py_modules=["clonevirtualenv"], entry_points={ 'console_scripts': [ - 'virtualenv-clone=clonevirtualenv:main', + 'virtualenv-clone-cura=clonevirtualenv:main', ]}, classifiers=[ "License :: OSI Approved :: MIT License", From 566de2e378b54a4d2b6ed79abc96444bea125f4d Mon Sep 17 00:00:00 2001 From: "Philippe O. Wagner" Date: Tue, 11 Sep 2018 09:13:23 +0200 Subject: [PATCH 2/4] support for ignore_patterns --- clonevirtualenv.py | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/clonevirtualenv.py b/clonevirtualenv.py index 46588fc..9690ee5 100644 --- a/clonevirtualenv.py +++ b/clonevirtualenv.py @@ -69,7 +69,7 @@ def _virtualenv_sys(venv_path): return lines[0], filter(bool, lines[1:]) -def clone_virtualenv(src_dir, dst_dir): +def clone_virtualenv(src_dir, dst_dir, ignore_patterns=None): if not os.path.exists(src_dir): raise UserError('src dir %r does not exist' % src_dir) if os.path.exists(dst_dir): @@ -77,8 +77,10 @@ def clone_virtualenv(src_dir, dst_dir): #sys_path = _virtualenv_syspath(src_dir) logger.info('cloning virtualenv \'%s\' => \'%s\'...' % (src_dir, dst_dir)) + if '*.pyc' not in ignore_patterns: + ignore_patterns += ',*.pyc' shutil.copytree(src_dir, dst_dir, symlinks=True, - ignore=shutil.ignore_patterns('*.pyc')) + ignore=shutil.ignore_patterns(*ignore_patterns.split(','))) version, sys_path = _virtualenv_sys(dst_dir) logger.info('fixing scripts in bin...') fixup_scripts(src_dir, dst_dir, version) @@ -295,7 +297,7 @@ def fixup_egglink_file(filename, old_dir, new_dir): def main(): parser = optparse.OptionParser("usage: %prog [options]" - " /path/to/existing/venv /path/to/cloned/venv") + " /path/to/existing/venv /path/to/cloned/venv [ignore_patterns]") parser.add_option('-v', action="count", dest='verbose', @@ -303,17 +305,21 @@ def main(): help='verbosity') options, args = parser.parse_args() try: - old_dir, new_dir = args + old_dir, new_dir, ignore_patterns = args except ValueError: - print("virtualenv-clone %s" % (__version__,)) - parser.error("not enough arguments given.") + try: + old_dir, new_dir = args + ignore_patterns = None + except ValueError: + print("virtualenv-clone-cura %s" % (__version__,)) + parser.error("not enough arguments given.") old_dir = os.path.realpath(old_dir) new_dir = os.path.realpath(new_dir) loglevel = (logging.WARNING, logging.INFO, logging.DEBUG)[min(2, options.verbose)] logging.basicConfig(level=loglevel, format='%(message)s') try: - clone_virtualenv(old_dir, new_dir) + clone_virtualenv(old_dir, new_dir, ignore_patterns) except UserError: e = sys.exc_info()[1] parser.error(str(e)) From a14d4c2ee2cac50d33487f6c93135408721f65c2 Mon Sep 17 00:00:00 2001 From: "Philippe O. Wagner" Date: Tue, 11 Sep 2018 14:08:07 +0200 Subject: [PATCH 3/4] reverted -cura postfix --- setup.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 204c7c1..19e7c0d 100644 --- a/setup.py +++ b/setup.py @@ -24,7 +24,7 @@ def run_tests(self): tox.cmdline() -setup(name="virtualenv-clone-cura", +setup(name="virtualenv-clone", version='0.3.0', description='script to clone virtualenvs.', author='Edward George', @@ -34,7 +34,7 @@ def run_tests(self): py_modules=["clonevirtualenv"], entry_points={ 'console_scripts': [ - 'virtualenv-clone-cura=clonevirtualenv:main', + 'virtualenv-clone=clonevirtualenv:main', ]}, classifiers=[ "License :: OSI Approved :: MIT License", From 2e3c74c6751348a9948634ce25c7ebd2dbc0fc95 Mon Sep 17 00:00:00 2001 From: "Philippe O. Wagner" Date: Tue, 11 Sep 2018 14:08:44 +0200 Subject: [PATCH 4/4] reverted -cura postfix --- clonevirtualenv.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/clonevirtualenv.py b/clonevirtualenv.py index 9690ee5..7006e33 100644 --- a/clonevirtualenv.py +++ b/clonevirtualenv.py @@ -311,7 +311,7 @@ def main(): old_dir, new_dir = args ignore_patterns = None except ValueError: - print("virtualenv-clone-cura %s" % (__version__,)) + print("virtualenv-clone %s" % (__version__,)) parser.error("not enough arguments given.") old_dir = os.path.realpath(old_dir) new_dir = os.path.realpath(new_dir)