gentoo/dev-python/nodeenv/files/nodeenv-1.8.0-which-hunt.patch
2023-12-13 04:17:16 +00:00

65 lines
2.1 KiB
Diff
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

https://github.com/ekalinin/nodeenv/issues/333
https://github.com/ekalinin/nodeenv/pull/346
From 0d3ebaf7e13175e2871f59856f29d880a4cb3acf Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Wed, 13 Dec 2023 04:13:24 +0000
Subject: [PATCH] Remove usage of non-portable `which`
* Use Python's shutil.which() instead of shelling out to `which` to find Python 2
* Use `command -v` instead of `which` in README
Fixes: https://github.com/ekalinin/nodeenv/issues/333
---
README.rst | 2 +-
README.ru.rst | 2 +-
nodeenv.py | 8 ++------
3 files changed, 4 insertions(+), 8 deletions(-)
diff --git a/README.rst b/README.rst
index c9e130b..3459572 100644
--- a/README.rst
+++ b/README.rst
@@ -211,7 +211,7 @@ environment::
$ workon my_env
$ npm install -g coffee-script
- $ which coffee
+ $ command -v coffee
/home/monty/virtualenvs/my_env/bin/coffee
Creating a virtual environment with a custom prompt:
diff --git a/README.ru.rst b/README.ru.rst
index c3eb130..2cc821e 100644
--- a/README.ru.rst
+++ b/README.ru.rst
@@ -155,7 +155,7 @@ python'а::
$ workon my_env
$ npm install -g coffee-script
- $ which coffee
+ $ command -v coffee
/home/monty/virtualenvs/my_env/bin/coffee
diff --git a/nodeenv.py b/nodeenv.py
index 9d5dd06..183ded2 100644
--- a/nodeenv.py
+++ b/nodeenv.py
@@ -707,12 +707,8 @@ def build_node_from_src(env_dir, src_dir, node_src_dir, args):
# Currently, the node.js build scripts are using python2.*,
# therefore we need to temporarily point python exec to the
# python 2.* version in this case.
- try:
- _, which_python2_output = callit(
- ['which', 'python2'], args.verbose, True, node_src_dir, env
- )
- python2_path = which_python2_output[0]
- except (OSError, IndexError):
+ python2_path = shutil.which('python2')
+ if not python2_path:
raise OSError(
'Python >=3.0 virtualenv detected, but no python2 '
'command (required for building node.js) was found'