diff --git a/docs b/docs index d6d6a519..d8c82a5d 160000 --- a/docs +++ b/docs @@ -1 +1 @@ -Subproject commit d6d6a519d96bef5e1849dc8e329986772cc9314c +Subproject commit d8c82a5d442a78b476e7405db12041ac45a3f72f diff --git a/platformio/builder/main.py b/platformio/builder/main.py index c35f51c5..7184da7c 100644 --- a/platformio/builder/main.py +++ b/platformio/builder/main.py @@ -128,7 +128,9 @@ if ( click.secho( "There is a known issue with Python 3.8+ and mapped network drives on " "Windows.\nPlease downgrade Python to the latest 3.7. More details at:\n" - "https://github.com/platformio/platformio-core/issues/3417", fg="yellow") + "https://github.com/platformio/platformio-core/issues/3417", + fg="yellow", + ) if env.subst("$BUILD_CACHE_DIR"): if not isdir(env.subst("$BUILD_CACHE_DIR")): diff --git a/platformio/commands/account/client.py b/platformio/commands/account/client.py index 6c1ee42e..fb679dc0 100644 --- a/platformio/commands/account/client.py +++ b/platformio/commands/account/client.py @@ -21,8 +21,8 @@ import requests.adapters from requests.packages.urllib3.util.retry import Retry # pylint:disable=import-error from platformio import __pioaccount_api__, app -from platformio.exception import InternetIsOffline from platformio.commands.account import exception +from platformio.exception import InternetIsOffline class AccountClient(object): diff --git a/platformio/commands/home/rpc/handlers/os.py b/platformio/commands/home/rpc/handlers/os.py index 745ae817..2997e8aa 100644 --- a/platformio/commands/home/rpc/handlers/os.py +++ b/platformio/commands/home/rpc/handlers/os.py @@ -107,7 +107,7 @@ class OSRPC(object): @staticmethod def copy(src, dst): - return shutil.copytree(src, dst) + return shutil.copytree(src, dst, symlinks=True) @staticmethod def glob(pathnames, root=None): diff --git a/platformio/commands/home/rpc/handlers/project.py b/platformio/commands/home/rpc/handlers/project.py index 77a04646..3f4cdc88 100644 --- a/platformio/commands/home/rpc/handlers/project.py +++ b/platformio/commands/home/rpc/handlers/project.py @@ -300,7 +300,7 @@ class ProjectRPC(object): src_dir = config.get_optional_dir("src") if os.path.isdir(src_dir): fs.rmtree(src_dir) - shutil.copytree(arduino_project_dir, src_dir) + shutil.copytree(arduino_project_dir, src_dir, symlinks=True) return project_dir @staticmethod @@ -313,7 +313,7 @@ class ProjectRPC(object): AppRPC.load_state()["storage"]["projectsDir"], time.strftime("%y%m%d-%H%M%S-") + os.path.basename(project_dir), ) - shutil.copytree(project_dir, new_project_dir) + shutil.copytree(project_dir, new_project_dir, symlinks=True) state = AppRPC.load_state() args = ["init"] diff --git a/platformio/managers/package.py b/platformio/managers/package.py index 07f2a23f..fd227073 100644 --- a/platformio/managers/package.py +++ b/platformio/managers/package.py @@ -475,7 +475,7 @@ class PkgInstallerMixin(object): self.unpack(_url, tmp_dir) else: fs.rmtree(tmp_dir) - shutil.copytree(_url, tmp_dir) + shutil.copytree(_url, tmp_dir, symlinks=True) elif url.startswith(("http://", "https://")): dlpath = self.download(url, tmp_dir, sha1) assert isfile(dlpath)