diff --git a/eng/sanitize.py b/eng/sanitize.py index 6df8b8dd66..30c94b39f9 100644 --- a/eng/sanitize.py +++ b/eng/sanitize.py @@ -9,18 +9,6 @@ def glob(path): return [os.path.join(path, filename) for filename in os.listdir(path)] -def remove(*paths): - for path in paths: - path = os.path.abspath(path) - try: - if os.path.isdir(path): - shutil.rmtree(path) - else: - os.remove(path) - except OSError as error: - print(error) - - def rewrite_package_json(path): package = open(path, "r+") settings = json.load(package) @@ -31,52 +19,35 @@ def rewrite_package_json(path): package.close() -emscripten_path = sys.argv[1] -node_root = sys.argv[2] -node_paths = glob(node_root) -upgrade = True - -# Add the local node bin directory to the path so that -# npm can find it when doing the updating or pruning -os.environ["PATH"] = os.path.join(node_paths[0], "bin") + os.pathsep + os.environ["PATH"] - -def update_npm(path): +def prune(path): try: - os.chdir(os.path.join(path, "lib")) - os.system("npm install npm@latest") - os.system("npm install npm@latest") - prune() + os.chdir(path) + os.system("npm prune --production") except OSError as error: - print("npm update failed") + print("npm prune failed") print(error) -def remove_npm(path): - os.chdir(path) - remove("bin/npx", "bin/npm", "include", "lib", "share") - - -def prune(): +def auditfix(path): try: - os.system("npm prune --production") + os.chdir(path) + os.system("npm audit fix") except OSError as error: - print("npm prune failed") + print("npm audit fix failed") print(error) -if upgrade: - for path in node_paths: - update_npm(path) -os.chdir(emscripten_path) -rewrite_package_json("package.json") -try: - os.system("npm audit fix") -except OSError as error: - print("npm audit fix failed") - print(error) +emscripten_path = sys.argv[1] +node_root = sys.argv[2] +node_paths = glob(node_root) + +# Add the local node bin directory to the path so that +# npm can find it when doing the updating or pruning +os.environ["PATH"] = os.path.join(node_paths[0], "bin") + os.pathsep + os.environ["PATH"] -prune() +for path in node_paths: + prune(os.path.join(path, "lib")) -if not upgrade: - for path in node_paths: - remove_npm(path) +rewrite_package_json(os.path.join(emscripten_path, "package.json")) +auditfix(emscripten_path) +prune(emscripten_path)