diff -ur a/nodeenv.py b/nodeenv.py --- a/nodeenv.py 2024-11-23 14:53:17.860821243 -0500 +++ b/nodeenv.py 2024-11-23 14:54:52.433087015 -0500 @@ -23,7 +23,7 @@ import argparse import subprocess import tarfile -import pipes +import shlex import platform import zipfile import shutil @@ -725,7 +725,7 @@ conf_cmd = [ './configure', - '--prefix=%s' % pipes.quote(env_dir) + '--prefix=%s' % shlex.quote(env_dir) ] if args.without_ssl: conf_cmd.append('--without-ssl') @@ -805,7 +805,7 @@ ( 'bash', '-c', '. {0} && npm install -g npm@{1}'.format( - pipes.quote(join(env_dir, 'bin', 'activate')), + shlex.quote(join(env_dir, 'bin', 'activate')), args.npm, ) ), @@ -873,10 +873,10 @@ activate_path = join(env_dir, 'bin', 'activate') real_npm_ver = args.npm if args.npm.count(".") == 2 else args.npm + ".0" if args.npm == "latest" or real_npm_ver >= "1.0.0": - cmd = '. ' + pipes.quote(activate_path) + \ + cmd = '. ' + shlex.quote(activate_path) + \ ' && npm install -g %(pack)s' else: - cmd = '. ' + pipes.quote(activate_path) + \ + cmd = '. ' + shlex.quote(activate_path) + \ ' && npm install %(pack)s' + \ ' && npm activate %(pack)s' diff -ur a/tests/nodeenv_test.py b/tests/nodeenv_test.py --- a/tests/nodeenv_test.py 2024-11-23 14:53:17.859821240 -0500 +++ b/tests/nodeenv_test.py 2024-11-23 14:54:59.912108032 -0500 @@ -2,7 +2,7 @@ from __future__ import unicode_literals import os.path -import pipes +import shlex import subprocess import sys import sysconfig @@ -25,7 +25,7 @@ '-m', 'nodeenv', '--prebuilt', nenv_path, ]) assert os.path.exists(nenv_path) - activate = pipes.quote(os.path.join(nenv_path, 'bin', 'activate')) + activate = shlex.quote(os.path.join(nenv_path, 'bin', 'activate')) subprocess.check_call([ 'sh', '-c', '. {} && node --version'.format(activate), ]) @@ -40,7 +40,7 @@ '-m', 'nodeenv', '-n', 'system', nenv_path, )) assert os.path.exists(nenv_path) - activate = pipes.quote(os.path.join(nenv_path, 'bin', 'activate')) + activate = shlex.quote(os.path.join(nenv_path, 'bin', 'activate')) subprocess.check_call([ 'sh', '-c', '. {} && node --version'.format(activate), ])