From f7f9cb0ae10e718fbdad5d1434f0a1f669c86ca4 2013-12-16 19:42:04 From: Thomas Kluyver Date: 2013-12-16 19:42:04 Subject: [PATCH] If symlink already exists, clobber it with current one --- diff --git a/setupbase.py b/setupbase.py index 6426d7b..5a6eac6 100644 --- a/setupbase.py +++ b/setupbase.py @@ -377,15 +377,11 @@ class install_lib_symlink(Command): raise Exception("This doesn't work on Windows.") pkg = os.path.join(os.getcwd(), 'IPython') dest = os.path.join(self.install_dir, 'IPython') + if os.path.islink(dest): + print('removing existing symlink at %s' % dest) + os.unlink(dest) print('symlinking %s -> %s' % (pkg, dest)) - try: - os.symlink(pkg, dest) - except OSError as e: - if e.errno == errno.EEXIST and os.path.islink(dest) \ - and os.path.realpath(dest) == pkg: - print('Symlink already exists') - else: - raise + os.symlink(pkg, dest) class install_symlinked(install): def run(self):