Ver Fonte

attempt to fix usage when volta is installing node (#4664)

* attempt to fix usage when volta is installing node

* use absolute() instead of resolve()

* fix stuff
Thomas Brandého há 3 meses atrás
pai
commit
728607643f
3 ficheiros alterados com 5 adições e 6 exclusões
  1. 3 3
      reflex/utils/path_ops.py
  2. 1 1
      reflex/utils/prerequisites.py
  3. 1 2
      reflex/utils/processes.py

+ 3 - 3
reflex/utils/path_ops.py

@@ -174,7 +174,7 @@ def get_node_path() -> str | None:
     return str(node_path)
 
 
-def get_npm_path() -> str | None:
+def get_npm_path() -> Path | None:
     """Get npm binary path.
 
     Returns:
@@ -183,8 +183,8 @@ def get_npm_path() -> str | None:
     npm_path = Path(constants.Node.NPM_PATH)
     if use_system_node() or not npm_path.exists():
         system_npm_path = which("npm")
-        return str(system_npm_path) if system_npm_path else None
-    return str(npm_path)
+        npm_path = Path(system_npm_path) if system_npm_path else None
+    return npm_path.absolute() if npm_path else None
 
 
 def update_json_file(file_path: str | Path, update_dict: dict[str, int | str]):

+ 1 - 1
reflex/utils/prerequisites.py

@@ -254,7 +254,7 @@ def get_package_manager(on_failure_return_none: bool = False) -> str | None:
     """
     npm_path = path_ops.get_npm_path()
     if npm_path is not None:
-        return str(Path(npm_path).resolve())
+        return str(npm_path)
     if on_failure_return_none:
         return None
     raise FileNotFoundError("NPM not found. You may need to run `reflex init`.")

+ 1 - 2
reflex/utils/processes.py

@@ -9,7 +9,6 @@ import os
 import signal
 import subprocess
 from concurrent import futures
-from pathlib import Path
 from typing import Callable, Generator, List, Optional, Tuple, Union
 
 import psutil
@@ -368,7 +367,7 @@ def get_command_with_loglevel(command: list[str]) -> list[str]:
         The updated command list
     """
     npm_path = path_ops.get_npm_path()
-    npm_path = str(Path(npm_path).resolve()) if npm_path else npm_path
+    npm_path = str(npm_path) if npm_path else None
 
     if command[0] == npm_path:
         return [*command, "--loglevel", "silly"]