From 91bbf91c5272455dd3bd3a3f620a8d13591a2a57 Mon Sep 17 00:00:00 2001 From: Masen Furer Date: Mon, 23 Oct 2023 08:59:48 -0700 Subject: [PATCH] Resolve npm path and fnm path on Windows (#2015) --- reflex/utils/prerequisites.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/reflex/utils/prerequisites.py b/reflex/utils/prerequisites.py index 9b558390b..e4f71cfc0 100644 --- a/reflex/utils/prerequisites.py +++ b/reflex/utils/prerequisites.py @@ -96,7 +96,7 @@ def get_install_package_manager() -> str | None: """ # On Windows, we use npm instead of bun. if constants.IS_WINDOWS: - return path_ops.get_npm_path() + return get_package_manager() # On other platforms, we use bun. return get_config().bun_path @@ -109,7 +109,10 @@ def get_package_manager() -> str | None: Returns: The path to the package manager. """ - return path_ops.get_npm_path() + npm_path = path_ops.get_npm_path() + if npm_path is not None: + npm_path = str(Path(npm_path).resolve()) + return npm_path def get_app(reload: bool = False) -> ModuleType: @@ -424,11 +427,13 @@ def install_node(): if constants.IS_WINDOWS: # Install node + fnm_exe = Path(constants.Fnm.EXE).resolve() + fnm_dir = Path(constants.Fnm.DIR).resolve() process = processes.new_process( [ "powershell", "-Command", - f'& "{constants.Fnm.EXE}" install {constants.Node.VERSION} --fnm-dir "{constants.Fnm.DIR}"', + f'& "{fnm_exe}" install {constants.Node.VERSION} --fnm-dir "{fnm_dir}"', ], ) else: # All other platforms (Linux, MacOS).