X-Loop: help-debbugs@HIDDEN
Subject: bug#79413: [PATCH] Fix path and environment in remote Python shell
Resent-From: Liu Hui <liuhui1610@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Tue, 09 Sep 2025 09:54:01 +0000
Resent-Message-ID: <handler.79413.B.175741163731240 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: report 79413
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: patch
To: 79413 <at> debbugs.gnu.org
X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN
Received: via spool by submit <at> debbugs.gnu.org id=B.175741163731240
(code B ref -1); Tue, 09 Sep 2025 09:54:01 +0000
Received: (at submit) by debbugs.gnu.org; 9 Sep 2025 09:53:57 +0000
Received: from localhost ([127.0.0.1]:57717 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uvv2x-00087W-9d
for submit <at> debbugs.gnu.org; Tue, 09 Sep 2025 05:53:57 -0400
Received: from lists.gnu.org ([2001:470:142::17]:58496)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <liuhui1610@HIDDEN>)
id 1uvv2n-00086g-2N
for submit <at> debbugs.gnu.org; Tue, 09 Sep 2025 05:53:46 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.90_1) (envelope-from <liuhui1610@HIDDEN>)
id 1uvv2c-0000Mg-W6
for bug-gnu-emacs@HIDDEN; Tue, 09 Sep 2025 05:53:37 -0400
Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635])
by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.90_1) (envelope-from <liuhui1610@HIDDEN>)
id 1uvv2W-0003AX-O4
for bug-gnu-emacs@HIDDEN; Tue, 09 Sep 2025 05:53:34 -0400
Received: by mail-pl1-x635.google.com with SMTP id
d9443c01a7336-24cbd9d9f09so71491825ad.2
for <bug-gnu-emacs@HIDDEN>; Tue, 09 Sep 2025 02:53:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20230601; t=1757411603; x=1758016403; darn=gnu.org;
h=mime-version:message-id:date:subject:to:from:from:to:cc:subject
:date:message-id:reply-to;
bh=E5hC0cC2r2A9exIKx3XjO8avXdu2EyV4g98//OOPRk8=;
b=Rp5Hhj35MQ8m+HQzImfx2ByNKxrYx2tQHIsR+2xKwX0BqrAOLla3CBzwY6ZncsnOm9
7iTqapKlHZHNrhQkRmW3fbmc/1OU3gqdsK7z7+oQKKGRVQlPFIrB6/rxU7vzjpfb6ck5
5UBvDBYsVBDcpVHn3U7EBG8xWwb8MxpibCwiDGXenhyK7B4pJ8mLoW+DEyquilkovfL3
cW3sntnt7UHXGu6kztcJ97vepxOcyQBwX+L7FvgV43D3mO33oGsZ9DbbmfmyZRYz9jJX
12AnX1RPOgeDd9gC1CGQlcSZm5wDFRrP9NE5sDQFWxRDKdIdNHcpBz19mH3eTx47doP9
UEfg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1757411603; x=1758016403;
h=mime-version:message-id:date:subject:to:from:x-gm-message-state
:from:to:cc:subject:date:message-id:reply-to;
bh=E5hC0cC2r2A9exIKx3XjO8avXdu2EyV4g98//OOPRk8=;
b=d/cZUDpqzZPlSdL5rm0pgmNtT86WILOlNazQ3aCEsyckcrQLBYz60oFVcaI8yrOwRZ
VaxeT6BtdaT/PlKXtdtNTQ++ae+6pMEZGbm2l9HtseyVMNsluDkdMYaRQznvL4NgKIGq
MbxvNv7XL+CON+78TdglgyuYKKMhVSsLtA2KY5pXxwHkoSopRk9DIgt2qmkO+mDnZw2q
19Xo+aNmoVOCN/WKYXGztIYLrjDGsRTggFni47C9g2DVscxkKz2BXUJucGfS90l0T35Y
S1y7ugldY30Tau635p0+j2WsrShZkfcnneVD/zg0ziR9VnCI9vowQHmY8fdsRnwQZvDj
yHfw==
X-Gm-Message-State: AOJu0YxyeyUmiNwmP/uGDbyDaOitvizn487X23aP71ibkkf8ljBxXacp
UnGKHF5lxzMDPByoSp+NTgsdx1fX7LwQl5XxYKlyiuZxKpZqAVDkirAp+IuMKibW
X-Gm-Gg: ASbGncu9rXaFQoe/2R3RDdbDbFsr0PPXdwIq7kNfu8To+2TtJ2xfrQ65muLrf+sO71W
mPF+bqw8GGrtNkmVcxpY15WV7my76SthQJv4aQO2yA2qJBhluWyzcFNMUPSvzewZ+RrBjDItZzL
1q1vrxe4J8HOfY1md6I2uJmq2dPpKx+3RIr0AIKpTeITwMAboJwFNTzxO2THEehs6YnQQ1DVAzV
GOnc6WHMme8jb6ZERq+9xUcWJ8Wa/6hv3RFAivR8lALEW/3ttb4xzvX6SzIbMns8Ul07uZnxSBE
9UT75NTfqtqHEBSiT8w1cf6cFPv4GWP0oG3K8lvLHb7//nu4W4Zmofo0Q1hZH2i9C/D1luYfD0X
KRTgXDo7lWfgqIRWtXUk=
X-Google-Smtp-Source: AGHT+IGFutbvcdMLCfFzAIR7lBxost5++FcmWTVGW7ANWCQ79SXenF9dF1vbtJmY8zODSV4u3LCJYg==
X-Received: by 2002:a17:902:c951:b0:256:9c51:d752 with SMTP id
d9443c01a7336-2569c51dc30mr93682395ad.56.1757411602889;
Tue, 09 Sep 2025 02:53:22 -0700 (PDT)
Received: from localhost ([58.56.112.164]) by smtp.gmail.com with ESMTPSA id
d9443c01a7336-24cf4b1c906sm118163865ad.87.2025.09.09.02.53.20
for <bug-gnu-emacs@HIDDEN>
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Tue, 09 Sep 2025 02:53:22 -0700 (PDT)
From: Liu Hui <liuhui1610@HIDDEN>
Date: Tue, 09 Sep 2025 17:53:11 +0800
Message-ID: <874itcne9k.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
Received-SPF: pass client-ip=2607:f8b0:4864:20::635;
envelope-from=liuhui1610@HIDDEN; helo=mail-pl1-x635.google.com
X-Spam_score_int: -17
X-Spam_score: -1.8
X-Spam_bar: -
X-Spam_report: (-1.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001,
RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.2 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
has NOT identified this incoming email as spam. The original
message has been attached to this so you can view it or label
similar future email. If you have any questions, see
the administrator of that system for details.
Content preview: Tags: patch Options such as python-shell-exec-path and
python-shell-process-environment
may not be applied for remote Python shell: (1) create a python virtual
environment on the remote host:
Content analysis details: (1.2 points, 10.0 required)
pts rule name description
---- ---------------------- --------------------------------------------------
-0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/,
no trust [2001:470:142:0:0:0:0:17 listed in] [list.dnswl.org]
-0.0 SPF_HELO_PASS SPF: HELO matches SPF record
0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail
provider (liuhui1610[at]gmail.com)
1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail)
0.2 FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends
in digit (liuhui1610[at]gmail.com)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.2 (/)
--=-=-=
Content-Type: text/plain
Tags: patch
Options such as python-shell-exec-path and
python-shell-process-environment may not be applied for remote Python
shell:
(1) create a python virtual environment on the remote host:
$ python3 -m venv /tmp/test_venv
(2) emacs -Q and then eval the following code:
--8<---------------cut here---------------start------------->8---
(require 'python)
(require 'tramp)
(setq remote-dir "/ssh:<remote>:~/")
;; use the remote virtual environment by setting
;; python-shell-exec-path, python-shell-remote-exec-path, or
;; python-shell-virtualenv-root
(setq python-shell-exec-path (list "/tmp/test_venv/bin"))
;; set environment variables for remote Python process
(setq python-shell-process-environment '("FOO=1"))
;; python-shell-process-environment is not applied remotely when
;; connection-local tramp-remote-process-environment is used
(connection-local-set-profile-variables
'test
`((tramp-remote-process-environment
. ,(append
'("BAR=bar")
tramp-remote-process-environment))))
(connection-local-set-profiles
`(:application tramp :machine ,(file-remote-p remote-dir 'host))
'test)
(find-file remote-dir)
--8<---------------cut here---------------end--------------->8---
(3) M-x run-python
(4) type 'import sys; sys.executable' in the remote python shell
The expected output is '/tmp/test_venv/bin/python', but the actual
output is '/bin/python'.
In emacs 30 and earlier version, the result is correct, with a side
effect that the remote path is changed globally, i.e. (exec-path) in
other remote buffers also contains "/tmp/test_venv/bin".
(5) type 'import os; os.environ.get("FOO")' in the python shell
The result should be '1', but there is no output.
This patch fixes python-shell--tramp-with-environment and adds tests.
The python-tests-remote-path-1 test needs a real ssh remote connection
like REMOTE_TEMPORARY_FILE_DIRECTORY=/ssh:remote:/tmp/.
There is still a corner case: if python-shell-process-environment
contains an environment variable that already exists in the default
process-environment, the environment variable is not applied by tramp
for the remote Python shell. For example, the following test fails:
FOO=1 REMOTE_TEMPORARY_FILE_DIRECTORY=/ssh:remote:/tmp/ \
make python-tests SELECTOR='"python-tests-remote-env"'
where FOO=1 is in both python-shell-process-environment and default
process-environment. This issue may need to be addressed in tramp.
--=-=-=
Content-Type: text/patch
Content-Disposition: attachment;
filename=0001-Fix-path-and-environment-in-remote-Python-shell.patch
From aa42cfba252e6fc2c451c7404c9b409250dcd09c Mon Sep 17 00:00:00 2001
From: Liu Hui <liuhui1610@HIDDEN>
Date: Tue, 9 Sep 2025 17:37:50 +0800
Subject: [PATCH] Fix path and environment in remote Python shell
* lisp/progmodes/python.el
(python-shell-tramp-refresh-remote-path)
(python-shell-tramp-refresh-process-environment): Obsolete.
(python-shell--tramp-with-environment): Fix remote exec-path and
process-environment.
* test/lisp/progmodes/python-tests.el
(python-tests-remote-enabled, python-tests-remote-environment-1)
(python-tests-remote-environment-2, python-tests-remote-path-1):
Add new function and tests.
(python--tests-process-env-eql, python-shell-with-environment-2):
Update test.
---
lisp/progmodes/python.el | 46 ++++++++-------
test/lisp/progmodes/python-tests.el | 92 ++++++++++++++++++++++++++---
2 files changed, 110 insertions(+), 28 deletions(-)
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index e5cc3b0078b..c9c751dbf24 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -3062,6 +3062,7 @@ python-shell-calculate-exec-path
(defun python-shell-tramp-refresh-remote-path (vec paths)
"Update VEC's remote-path giving PATHS priority."
+ (declare (obsolete nil "31.1")) ; Not used.
(cl-assert (featurep 'tramp))
(declare-function tramp-set-remote-path "tramp-sh")
(declare-function tramp-set-connection-property "tramp-cache")
@@ -3076,6 +3077,7 @@ python-shell-tramp-refresh-remote-path
(defun python-shell-tramp-refresh-process-environment (vec env)
"Update VEC's process environment with ENV."
+ (declare (obsolete nil "31.1")) ; Not used.
(cl-assert (featurep 'tramp))
(defvar tramp-end-of-heredoc)
(defvar tramp-end-of-output)
@@ -3139,28 +3141,30 @@ python-shell--with-environment
(funcall bodyfun)))))
(defun python-shell--tramp-with-environment (vec extraenv bodyfun)
- (defvar tramp-remote-process-environment)
(declare-function tramp-get-connection-process "tramp" (vec))
- (let* ((tramp-remote-process-environment
- (append extraenv tramp-remote-process-environment)))
- (when (tramp-get-connection-process vec)
- ;; For already existing connections, the new exec path must
- ;; be re-set, otherwise it won't take effect. One example
- ;; of such case is when remote dir-locals are read and
- ;; *then* subprocesses are triggered within the same
- ;; connection.
- (python-shell-tramp-refresh-remote-path
- ;; FIXME: This is still Python-specific.
- vec (python-shell-calculate-exec-path))
- ;; The `tramp-remote-process-environment' variable is only
- ;; effective when the started process is an interactive
- ;; shell, otherwise (like in the case of processes started
- ;; with `process-file') the environment is not changed.
- ;; This makes environment modifications effective
- ;; unconditionally.
- (python-shell-tramp-refresh-process-environment
- vec tramp-remote-process-environment))
- (funcall bodyfun)))
+ (declare-function tramp-get-remote-path "tramp-sh" (vec))
+ (eval-when-compile (require 'tramp-cache))
+ ;; FIXME: If extraenv is in the global default `process-environment',
+ ;; it will not be set for the remote Python process, because TRAMP
+ ;; only applies environment variables not present in the global
+ ;; default value of `process-environment'.
+ (let ((process-environment
+ (append (cl-loop for x in extraenv
+ unless (member x process-environment)
+ collect x)
+ process-environment)))
+ ;; FIXME: This is still Python-specific.
+ (if-let* ((path (python-shell-calculate-exec-path))
+ (key (tramp-get-connection-process vec)))
+ ;; Do not override global remote path.
+ (with-tramp-saved-connection-property key "remote-path"
+ (let ((r-path (tramp-get-remote-path vec)))
+ (if r-path
+ (python-shell--add-to-path-with-priority r-path path)
+ (setq r-path path))
+ (tramp-set-connection-property key "remote-path" r-path))
+ (funcall bodyfun))
+ (funcall bodyfun))))
(defvar python-shell--prompt-calculated-input-regexp nil
"Calculated input prompt regexp for inferior python shell.
diff --git a/test/lisp/progmodes/python-tests.el b/test/lisp/progmodes/python-tests.el
index b9130da495d..698665edcc2 100644
--- a/test/lisp/progmodes/python-tests.el
+++ b/test/lisp/progmodes/python-tests.el
@@ -23,6 +23,7 @@
(require 'cl-extra)
(require 'ert)
+(require 'tramp)
(require 'ert-x)
(require 'python)
@@ -31,6 +32,18 @@
(require 'hideshow)
(require 'tramp-sh)
+(defun python-tests-remote-enabled (&optional method)
+ "Whether remote file access is enabled via METHOD."
+ (ignore-errors
+ (and
+ (file-remote-p ert-remote-temporary-file-directory)
+ (file-directory-p ert-remote-temporary-file-directory)
+ (file-writable-p ert-remote-temporary-file-directory)
+ (if method
+ (with-parsed-tramp-file-name
+ ert-remote-temporary-file-directory v
+ (equal method v-method))
+ t))))
(defmacro python-tests-with-temp-buffer (contents &rest body)
"Create a `python-mode' enabled temp buffer with CONTENTS.
@@ -4095,10 +4108,6 @@ python--tests-process-env-canonical
(setenv x nil)))
process-environment))
-(defun python--tests-process-env-eql (pe1 pe2)
- (equal (python--tests-process-env-canonical pe1)
- (python--tests-process-env-canonical pe2)))
-
(ert-deftest python-shell-with-environment-2 ()
"Test environment with remote `default-directory'."
(let* ((default-directory "/ssh::/example/dir/")
@@ -4116,9 +4125,7 @@ python-shell-with-environment-2
(append (python-shell--calculate-process-environment)
tramp-remote-process-environment)))
(should (not (getenv "PYTHONHOME")))
- (should (string= (getenv "VIRTUAL_ENV") "/env"))
- (should (python--tests-process-env-eql
- tramp-remote-process-environment process-environment))))
+ (should (string= (getenv "VIRTUAL_ENV") "/env"))))
(should (equal tramp-remote-process-environment
original-process-environment))))
@@ -4139,6 +4146,77 @@ python-shell-with-environment-3
process-environment))))))
(should (equal single-call nested-call))))
+(ert-deftest python-tests-remote-environment-1 ()
+ "Test `python-shell-process-environment' in remote environment."
+ (skip-unless (python-tests-remote-enabled))
+ (let ((default-directory ert-remote-temporary-file-directory)
+ (python-shell-process-environment '("FOO=1"))
+ (tramp-allow-unsafe-temporary-files t))
+ (python-tests-with-temp-buffer-with-shell-interpreter
+ nil
+ ""
+ (should (equal (python-shell-send-string-no-output
+ "import os; os.environ.get('FOO')")
+ "'1'")))))
+
+(ert-deftest python-tests-remote-environment-2 ()
+ "Test `python-shell-process-environment' and
+`tramp-remote-process-environment' in remote environment."
+ (skip-unless (python-tests-remote-enabled))
+ (let ((default-directory ert-remote-temporary-file-directory)
+ (python-shell-process-environment '("FOO=1"))
+ (tramp-allow-unsafe-temporary-files t)
+ (clpa connection-local-profile-alist)
+ (clca connection-local-criteria-alist))
+ (unwind-protect
+ (progn
+ (connection-local-set-profile-variables
+ 'test
+ `((tramp-remote-process-environment
+ . ,(append
+ '("BAR=1")
+ tramp-remote-process-environment))))
+ (connection-local-set-profiles
+ `(:application tramp :machine ,(file-remote-p default-directory 'host))
+ 'test)
+ (python-tests-with-temp-buffer-with-shell-interpreter
+ nil
+ ""
+ (should (equal (python-shell-send-string-no-output
+ "import os; os.environ.get('BAR')")
+ "'1'"))
+ (should (equal (python-shell-send-string-no-output
+ "os.environ.get('FOO')")
+ "'1'"))))
+ ;; Cleanup.
+ (custom-set-variables
+ `(connection-local-profile-alist ',clpa now)
+ `(connection-local-criteria-alist ',clca now)))))
+
+(ert-deftest python-tests-remote-path-1 ()
+ "Test remote path for python shell."
+ (skip-unless (python-tests-remote-enabled "ssh"))
+ (let* ((default-directory ert-remote-temporary-file-directory)
+ (tramp-remote-path (append '(tramp-own-remote-path) tramp-remote-path))
+ (tramp-allow-unsafe-temporary-files t)
+ (python-abs-path (executable-find python-shell-interpreter t)))
+ (skip-unless python-abs-path)
+ (let* ((temporary-file-directory default-directory)
+ (tmp-dir (make-temp-file "python-test" t))
+ (python-shell-interpreter (file-name-nondirectory python-abs-path))
+ (link (expand-file-name python-shell-interpreter tmp-dir))
+ (python-shell-exec-path (list (file-local-name tmp-dir))))
+ (unwind-protect
+ (progn
+ (make-symbolic-link
+ (concat (file-remote-p default-directory) python-abs-path) link)
+ (python-tests-with-temp-buffer-with-shell
+ ""
+ (should (equal (format "'%s'" (file-local-name link))
+ (python-shell-send-string-no-output
+ "import sys; sys.executable")))))
+ (delete-directory tmp-dir t)))))
+
(ert-deftest python-shell-make-comint-1 ()
"Check comint creation for global shell buffer."
;; The interpreter can get killed too quickly to allow it to clean
--
2.25.1
--=-=-=--
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Liu Hui <liuhui1610@HIDDEN> Subject: bug#79413: Acknowledgement ([PATCH] Fix path and environment in remote Python shell) Message-ID: <handler.79413.B.175741163731240.ack <at> debbugs.gnu.org> References: <874itcne9k.fsf@HIDDEN> X-Gnu-PR-Message: ack 79413 X-Gnu-PR-Package: emacs X-Gnu-PR-Keywords: patch Reply-To: 79413 <at> debbugs.gnu.org Date: Tue, 09 Sep 2025 09:54:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-gnu-emacs@HIDDEN If you wish to submit further information on this problem, please send it to 79413 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 79413: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D79413 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN
Subject: bug#79413: [PATCH] Fix path and environment in remote Python shell
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Tue, 09 Sep 2025 13:02:01 +0000
Resent-Message-ID: <handler.79413.B79413.175742289221951 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79413
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: patch
To: Liu Hui <liuhui1610@HIDDEN>
Cc: 79413 <at> debbugs.gnu.org
Received: via spool by 79413-submit <at> debbugs.gnu.org id=B79413.175742289221951
(code B ref 79413); Tue, 09 Sep 2025 13:02:01 +0000
Received: (at 79413) by debbugs.gnu.org; 9 Sep 2025 13:01:32 +0000
Received: from localhost ([127.0.0.1]:58525 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uvxyV-0005hw-MD
for submit <at> debbugs.gnu.org; Tue, 09 Sep 2025 09:01:31 -0400
Received: from mout.gmx.net ([212.227.17.21]:46917)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1uvxyQ-0005h9-7F
for 79413 <at> debbugs.gnu.org; Tue, 09 Sep 2025 09:01:28 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1757422878; x=1758027678; i=michael.albinus@HIDDEN;
bh=Y1CspV+bC/WOkQecFWOlK3Fqx6BBCvr5N1DHj1pwXeE=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
content-type:date:from:message-id:mime-version:reply-to:subject:
to;
b=JlRg15Kc8z88lTl2WKrwRp3R2ZZ6vpBdRJwyarHIfVdUQfIskykbio4uMbmfDjVX
Wfr+PcBDPYuDsGus7+HQrWadalP/B6zH3cAdH1ht6CN4AacgMNqoK3RoWiqB1/dSs
IXPhsCmpPLoaB0ktlnThyrtlA0LHhX6JCo/SiVbRjEn7w+vDMICoJz6m0pL/cmo4X
6IUUvssGssIcl3pHPpVHfsEykfXhyo4oGhebhECMO2X958VhA46+40t1qQ6Kwekxj
TqnoyXyCkVioWn42mg7wG6TBjqE9uFndEuhzZXQfCb1n//ud4P/p2mEiqMfx1cle6
pARauLC0ALww5DJDqg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
[212.227.17.168]) with ESMTPSA (Nemesis) id 1MPGRp-1umQnT3P8X-00LzZq; Tue, 09
Sep 2025 15:01:18 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <874itcne9k.fsf@HIDDEN>
References: <874itcne9k.fsf@HIDDEN>
Date: Tue, 09 Sep 2025 15:01:18 +0200
Message-ID: <87wm67zso1.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:YPbDiM92XemOV+EAdMUdAP5btGGmTHYFlITIrXs3Jk53U7AeubU
kRn8XLsN6eaFDO+xpSbJP+4cqy33EPv/51Se5PbFYy3s3ckTLgcOrBut1XQttCuu3ZO1s8c
+SSIOA5n4K93LQYCYpJPLQdTqsewyXP81YU6NofxNtTOZYj+Ajcuk18ZNtrd0fJ2tfKJ4zi
rHOO+AExDKV2Tyir68npA==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:EH+ZpOBmdY0=;7eRWesyNV2HL+y16UmemTDb2Z0h
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
yYA4DyB/Y547HnmuT+SbYaB6nK7ZSpmGa+kfc
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)
Liu Hui <liuhui1610@HIDDEN> writes:
Hi,
> There is still a corner case: if python-shell-process-environment
> contains an environment variable that already exists in the default
> process-environment, the environment variable is not applied by tramp
> for the remote Python shell. For example, the following test fails:
>
> FOO=1 REMOTE_TEMPORARY_FILE_DIRECTORY=/ssh:remote:/tmp/ \
> make python-tests SELECTOR='"python-tests-remote-env"'
>
> where FOO=1 is in both python-shell-process-environment and default
> process-environment. This issue may need to be addressed in tramp.
This is a Tramp feature. See this comment in tramp-handle-make-process,
tramp-sh-handle-make-process and tramp-sh-handle-process-file:
--8<---------------cut here---------------start------------->8---
;; We use as environment the difference to toplevel
;; `process-environment'.
--8<---------------cut here---------------end--------------->8---
The reason is, that often a local value of $FOO might be wrong on the
remote host.
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79413: [PATCH] Fix path and environment in remote Python shell
Resent-From: Liu Hui <liuhui1610@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Wed, 10 Sep 2025 03:47:01 +0000
Resent-Message-ID: <handler.79413.B79413.17574759666103 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79413
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: patch
To: Michael Albinus <michael.albinus@HIDDEN>
Cc: 79413 <at> debbugs.gnu.org
Received: via spool by 79413-submit <at> debbugs.gnu.org id=B79413.17574759666103
(code B ref 79413); Wed, 10 Sep 2025 03:47:01 +0000
Received: (at 79413) by debbugs.gnu.org; 10 Sep 2025 03:46:06 +0000
Received: from localhost ([127.0.0.1]:35078 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uwBmX-0001aN-W1
for submit <at> debbugs.gnu.org; Tue, 09 Sep 2025 23:46:06 -0400
Received: from mail-pl1-x629.google.com ([2607:f8b0:4864:20::629]:60604)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <liuhui1610@HIDDEN>)
id 1uwBmU-0001ZS-P6
for 79413 <at> debbugs.gnu.org; Tue, 09 Sep 2025 23:46:03 -0400
Received: by mail-pl1-x629.google.com with SMTP id
d9443c01a7336-25634c5ebdeso31370465ad.0
for <79413 <at> debbugs.gnu.org>; Tue, 09 Sep 2025 20:46:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20230601; t=1757475956; x=1758080756; darn=debbugs.gnu.org;
h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
:from:from:to:cc:subject:date:message-id:reply-to;
bh=FCk0v0Uz7VNojVgAd+WigMilMprqVzaP/eWg2OxMqLo=;
b=Mp7RyjlE+CWpgVc/H0mH1yblR22IC1pNIkUwYvvCrLUpgwzkBvuI6U3A2dR4i7oecG
l0FUauzNhsvjZELUH1ooMxe+oL4bkGsYgjeee4a76BnzNHUQM2Z2O524OD6Ys8uyGFP1
ALMcyEOQBHUM0qo/406u1RniRCCPlyJsBF93zcVPJFv8zy5QH2JdAyFj2EbarFPYhgry
5clZM7N4kk6/EOFmCQHjTORLDgcei6i6glDk0ZTzwVEwAwnaPEKZDy2EpozmCJXvYt5L
LYjFcT65ozm//BukX0U2DZUSuRof4W8JYbgvkMhV3NUPJf1A/T5m0cCo19QQvy9PQSlt
pM+Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1757475956; x=1758080756;
h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
:from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
bh=FCk0v0Uz7VNojVgAd+WigMilMprqVzaP/eWg2OxMqLo=;
b=BdOGUHxsGkIaVzoRQj3q2Xhg8zxVtLXvLS1pZXNB2YP8yjbPlbdQwMjCDV6nHnzKGh
SUbw3kAtfet21u8QpXDSR3oRyE4hQEUT08KuWu6OIA5Tya3sH6EqDPm7wPmULwehdvBB
t712hmvtaRGbictvYMuD8gf0wtMm6jRSCGcZDUpaHo/23oThFfkrD9IHu0lF/X7jJz0z
cHecj4QNuOCsGTYKCWA0yZKyjDq8ytk5Vq2hIzvYp0iXF4o7JY9pPuHSFqiAwz5yn2WQ
HdfnXbnIJuWJ+PpDEIv83dnwtSYSMv/46gVPkw6vVRZTxcwoQBj0ph2wDa/LVtQC0Fsd
Etgg==
X-Gm-Message-State: AOJu0YxZU0JgriCFc8SBYmZylyK/Jlkdlaq9E1/Q9dWQieLtuMF1to53
VuSDwapPoOFocOfz7AoFN2AMZwQ+VrnQ1cbL5Z6VpmPPn/97JBU1ndAWSbqL3W0G
X-Gm-Gg: ASbGnct2UEE2ZEQmLHVFEak8XpDnFwvMAWPE/La+GQvZwYwilmWUgEMoq/eS/n49qmq
oVIMcW2jKzuXKOJnnAKC6WUR1ryedX3ttp/DNTGp/dR1/PYfRBK07U0xhVtpLYgNqV4JCKYVw7y
6XhuBnS4sLTdKvdZhXch7RWPyq5zbgLHgtG1OwNZyqFTeflK2wXa+whbAz19ccPG7BA3AEvjtzK
a2lx2497x9KDTwgJOJJhE4u0qHHTvgBCjop6u1De2nNzvvShXB7qZX14mXhzzQR5+jDgOYzXmfn
yPA9wZoeilKa0+7bxUWLazR6X4LrEgFX7SMPvJ3ihKtPCUiEfrPtgMOXrqhOG+f3jn1WCygxr3X
0wWzO+xvDJ4d8Et8u6Ew=
X-Google-Smtp-Source: AGHT+IGn7ECKLbyHy+RmfmKJcbLkskmbTt9kDTSBR+v/9dWL0p/skHx08/TNHmznfZmzhJiZKkWflA==
X-Received: by 2002:a17:903:22c8:b0:24b:270e:56c2 with SMTP id
d9443c01a7336-25170f37acdmr176278705ad.37.1757475955769;
Tue, 09 Sep 2025 20:45:55 -0700 (PDT)
Received: from localhost ([58.56.112.164]) by smtp.gmail.com with ESMTPSA id
d9443c01a7336-25a27bed684sm12375195ad.37.2025.09.09.20.45.53
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Tue, 09 Sep 2025 20:45:55 -0700 (PDT)
From: Liu Hui <liuhui1610@HIDDEN>
In-Reply-To: <87wm67zso1.fsf@HIDDEN>
References: <874itcne9k.fsf@HIDDEN> <87wm67zso1.fsf@HIDDEN>
Date: Wed, 10 Sep 2025 11:45:45 +0800
Message-ID: <87jz27as2e.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.3 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)
Michael Albinus <michael.albinus@HIDDEN> writes:
> Liu Hui <liuhui1610@HIDDEN> writes:
>
> Hi,
>
>> There is still a corner case: if python-shell-process-environment
>> contains an environment variable that already exists in the default
>> process-environment, the environment variable is not applied by tramp
>> for the remote Python shell. For example, the following test fails:
>>
>> FOO=1 REMOTE_TEMPORARY_FILE_DIRECTORY=/ssh:remote:/tmp/ \
>> make python-tests SELECTOR='"python-tests-remote-env"'
>>
>> where FOO=1 is in both python-shell-process-environment and default
>> process-environment. This issue may need to be addressed in tramp.
>
> This is a Tramp feature. See this comment in tramp-handle-make-process,
> tramp-sh-handle-make-process and tramp-sh-handle-process-file:
>
> --8<---------------cut here---------------start------------->8---
> ;; We use as environment the difference to toplevel
> ;; `process-environment'.
> --8<---------------cut here---------------end--------------->8---
>
> The reason is, that often a local value of $FOO might be wrong on the
> remote host.
Thanks for the explanation. Then let-binding process-environment is
not a reliable way if we want to ensure some environment variables,
python-shell-process-environment in this case, are applied to the
remote process.
Could tramp add an option that disables this feature temporarily or
ensures specific environment variables are always applied in
tramp-sh-handle-make-process and tramp-sh-handle-process-file?
Otherwise, we have to continue using
python-shell-tramp-refresh-process-environment, which I think should
be moved from python.el to tramp?
X-Loop: help-debbugs@HIDDEN
Subject: bug#79413: [PATCH] Fix path and environment in remote Python shell
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Wed, 10 Sep 2025 08:48:02 +0000
Resent-Message-ID: <handler.79413.B79413.17574940222235 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79413
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: patch
To: Liu Hui <liuhui1610@HIDDEN>
Cc: 79413 <at> debbugs.gnu.org
Received: via spool by 79413-submit <at> debbugs.gnu.org id=B79413.17574940222235
(code B ref 79413); Wed, 10 Sep 2025 08:48:02 +0000
Received: (at 79413) by debbugs.gnu.org; 10 Sep 2025 08:47:02 +0000
Received: from localhost ([127.0.0.1]:35913 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uwGTl-0000Zn-Nr
for submit <at> debbugs.gnu.org; Wed, 10 Sep 2025 04:47:02 -0400
Received: from mout.gmx.net ([212.227.15.18]:34789)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1uwGTf-0000ZK-HX
for 79413 <at> debbugs.gnu.org; Wed, 10 Sep 2025 04:46:57 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1757494008; x=1758098808; i=michael.albinus@HIDDEN;
bh=Cgr8mlNV2WgqwYfuKZK3nUUq4nXb6qjHbzSnJIxp53Q=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
content-type:date:from:message-id:mime-version:reply-to:subject:
to;
b=thjKrkuuEhQ0vVkNC4Lbta2cJ3p/MjXxn/23UK/NicG1ocDuhO04c2karqx3TPtO
S1ZnAnkr4+nCz6byEJYZzXHO3JtsULnLdZMYOCe70hZAsNfwall65ymhp4dBc91PD
PUoB+Nwb+x9e61+vt/e+AmEsYkW3X/M+9kc5wwdU745fr6v89BpcQFu5K1l1w5VWV
xYU2Qq4lAhhJDLe7sXuO1IUdVdgNXcvIeW+X5RJTJiRAx7BMkHXTA169yaWQtGHCv
JRG1arE5cF8vAlVzpk4idAhrULaChFPZ6oOFUAJFn+BgYWXdhoOC9mR/1CiOauMvk
hX648DjCSOv22mH8vw==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx005
[212.227.17.190]) with ESMTPSA (Nemesis) id 1MkYc0-1uZoPu25Ve-00cSn7; Wed, 10
Sep 2025 10:46:48 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <87jz27as2e.fsf@HIDDEN>
References: <874itcne9k.fsf@HIDDEN> <87wm67zso1.fsf@HIDDEN>
<87jz27as2e.fsf@HIDDEN>
Date: Wed, 10 Sep 2025 10:46:48 +0200
Message-ID: <87zfb2g0ef.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:0o8twTl1OXQ8OuT8MECOVIb0875plFMA1iZvGFGGhYQXmMf7gy1
kVWd5U9GaQNdpMMVCCBoondBPz/7MpQQG6DigqQuO8eqiuyVo8+bXqr4EHcBX7iswvE8jRQ
X4VHQPC8tPgosVqyZe7IheAhhChZVnrr+3aPoDeq0L+RriTWeJpKkPAif9Hm6bRJGAFg0Tn
R+TtOi9skNY78nTAtg20g==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:GVOy7655YoI=;QtPg/d/kme97InA1FzP1dqxfH5D
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
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
Liu Hui <liuhui1610@HIDDEN> writes:
Hi,
>> This is a Tramp feature. See this comment in tramp-handle-make-process,
>> tramp-sh-handle-make-process and tramp-sh-handle-process-file:
>>
>> --8<---------------cut here---------------start------------->8---
>> ;; We use as environment the difference to toplevel
>> ;; `process-environment'.
>> --8<---------------cut here---------------end--------------->8---
>>
>> The reason is, that often a local value of $FOO might be wrong on the
>> remote host.
>
> Thanks for the explanation. Then let-binding process-environment is
> not a reliable way if we want to ensure some environment variables,
> python-shell-process-environment in this case, are applied to the
> remote process.
>
> Could tramp add an option that disables this feature temporarily or
> ensures specific environment variables are always applied in
> tramp-sh-handle-make-process and tramp-sh-handle-process-file?
You would run into the same problem why this feature exist. You don't
want to expand local environment variables like DISPLAY, SSH_* or
whatever to the remote host.
You could let-bind and modify tramp-remote-process-environment for
tramp-sh-handle-make-process. Note, that this won't work for direct
async processes, which use tramp-handle-make-process internally. And it
won't work for tramp-sh-handle-process-file.
Alternatively, you could call "env VAR1=VAL1 VAR2=VAL2 ... program ..."
instead of "program ...".
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79413: [PATCH] Fix path and environment in remote Python shell
Resent-From: Liu Hui <liuhui1610@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Thu, 11 Sep 2025 04:48:02 +0000
Resent-Message-ID: <handler.79413.B79413.17575660551023 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79413
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: patch
To: Michael Albinus <michael.albinus@HIDDEN>
Cc: 79413 <at> debbugs.gnu.org
Received: via spool by 79413-submit <at> debbugs.gnu.org id=B79413.17575660551023
(code B ref 79413); Thu, 11 Sep 2025 04:48:02 +0000
Received: (at 79413) by debbugs.gnu.org; 11 Sep 2025 04:47:35 +0000
Received: from localhost ([127.0.0.1]:41589 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uwZDa-0000GL-Ot
for submit <at> debbugs.gnu.org; Thu, 11 Sep 2025 00:47:35 -0400
Received: from mail-pl1-x630.google.com ([2607:f8b0:4864:20::630]:44347)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <liuhui1610@HIDDEN>)
id 1uwZDX-0000Fg-HY
for 79413 <at> debbugs.gnu.org; Thu, 11 Sep 2025 00:47:32 -0400
Received: by mail-pl1-x630.google.com with SMTP id
d9443c01a7336-244580523a0so2536205ad.1
for <79413 <at> debbugs.gnu.org>; Wed, 10 Sep 2025 21:47:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20230601; t=1757566045; x=1758170845; darn=debbugs.gnu.org;
h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
:from:from:to:cc:subject:date:message-id:reply-to;
bh=kNYVjB/wvwDyW2fIJZQJxV8Y9+nr+7PXz/CDjfXayfg=;
b=GvLO8ko/AszZAb6d06FZOpzUhr/yvCZRNnu9eNBsk2BcoHVwwjROBWVkju84Xaeu+s
WVNQGW6WnziWDD+ZawoDmLx0Zn42iiSkMU6XM5UHZOna9H4P3YbuIHIIIXu5SdGNWyuJ
uqvvkOeRWIjZSawgoxqtf/dHyNmZo2Z+wNobsm5Hf9kbWo0ZWTXLQm/3Fr8yvJ4/VDA/
5lC4irymgisNC0Vl/tNMSECVEF805SU8O7PRMwqnZ7kAmHt4bMdUhuIX0re2NkLi/7X8
MMkOGunu3YZ0W7pv4u2m9Dp/rL5Nl9KmOVU81YKkLOl51aaVJXfjARni9aPHIoc3+qMt
q6sQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1757566045; x=1758170845;
h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
:from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
bh=kNYVjB/wvwDyW2fIJZQJxV8Y9+nr+7PXz/CDjfXayfg=;
b=IwK4W/S8lP3OxeFYL3salIlDNxR8nZ222psa9nSU7N4otuGvrdvyIWBHfaSNeIaRdo
PBz7Zxj9fXSWbm+kDCqBj2k5dbplMuaqXnMnU3zYuYoOmaIJ9lc076EpyyyNYUfVwH7Y
nIEHJBCsZwAru2+75p95L2rdT2YxlOpxQVDNC93+uU27RsD2qu4iBP5PNTaAHVUwlh9c
IXjjKG1CpeOaInBh4aCr7/EIknaiE+OpBZFZ8JtV0DaNBDTmeoEvZUGSiOr0lEEpLHle
zjvoE8uypere2ixGSA+oGw6nCJQIF+OuSisgvq0THhq6I9IGbo1CUGIk2MEbXVxVik/F
/6oQ==
X-Gm-Message-State: AOJu0YxqEYBYfK4cX9uPoOuR+H/YYSIn2Z8uqSbHBCEwykFpSihQNKy9
V8/Ub60xmQe348qlNUC24eSeUtREoM6JtCW1i9s0YpftG8rG31m0bfutcCWdSo5b
X-Gm-Gg: ASbGncuchQUEtYrpBNq6SuA5xLhxOyStaYFHd3V+JO0AHzUJgOrc05gMkgopYR/7BMp
3o4avQ7xcWo3p80bpJXVID4PxrAyHA+INsL4XI62ATDfu3cVZkFGjZOMMYEjTszUfonCiN/c/x5
MWVFLaxmXZ95tOlK1QYWm4yqK00OgN4n8zzg4LhHM6NctP8XdpabqQZqyjsEdyfG7LFt+4ZZ1Cm
VfKujN5mx/z3xyLh5lsaouL5224/5piaBvtQf9ArPToPYgqyc0CruXxLSo5PJMjtxMWcxyV+cV3
j8DJc73FaUAT+rsxpAdkdPkKISaA2iwnY2JF3NO/ydybpHA5GABjmen4xTujF368Hcr3xQGkWcb
qTU3LmERLVGe6sZYaq5SV1ggee+5WzQsZ/A4S09v7
X-Google-Smtp-Source: AGHT+IF7/kpmAeVY/HmPiBMOUGGwL4iDa3pb/FPYoEcZONGBFaHdJTz7kL/Ku/afH8cfcpvDFb+krQ==
X-Received: by 2002:a17:903:2450:b0:235:e8da:8d1 with SMTP id
d9443c01a7336-2516ce602c7mr188535135ad.8.1757566045145;
Wed, 10 Sep 2025 21:47:25 -0700 (PDT)
Received: from localhost ([58.56.112.164]) by smtp.gmail.com with ESMTPSA id
d9443c01a7336-25c3ab43469sm4671545ad.97.2025.09.10.21.47.21
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Wed, 10 Sep 2025 21:47:24 -0700 (PDT)
From: Liu Hui <liuhui1610@HIDDEN>
In-Reply-To: <87zfb2g0ef.fsf@HIDDEN>
References: <874itcne9k.fsf@HIDDEN> <87wm67zso1.fsf@HIDDEN>
<87jz27as2e.fsf@HIDDEN> <87zfb2g0ef.fsf@HIDDEN>
Date: Thu, 11 Sep 2025 12:47:13 +0800
Message-ID: <87v7lpbnou.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.3 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)
Michael Albinus <michael.albinus@HIDDEN> writes:
> Liu Hui <liuhui1610@HIDDEN> writes:
>
> Hi,
>
>>> This is a Tramp feature. See this comment in tramp-handle-make-process,
>>> tramp-sh-handle-make-process and tramp-sh-handle-process-file:
>>>
>>> --8<---------------cut here---------------start------------->8---
>>> ;; We use as environment the difference to toplevel
>>> ;; `process-environment'.
>>> --8<---------------cut here---------------end--------------->8---
>>>
>>> The reason is, that often a local value of $FOO might be wrong on the
>>> remote host.
>>
>> Thanks for the explanation. Then let-binding process-environment is
>> not a reliable way if we want to ensure some environment variables,
>> python-shell-process-environment in this case, are applied to the
>> remote process.
>>
>> Could tramp add an option that disables this feature temporarily or
>> ensures specific environment variables are always applied in
>> tramp-sh-handle-make-process and tramp-sh-handle-process-file?
>
> You would run into the same problem why this feature exist. You don't
> want to expand local environment variables like DISPLAY, SSH_* or
> whatever to the remote host.
I agree local environment variables should not be applied on the
remote host. I meant to propagate specific environment variables (e.g.
"PYTHONPATH=/opt/mypackage") in python-shell-process-environment. The
problem is that "PYTHONPATH=/opt/mypackage" is skipped for remote
processes if it happens to exist in the default process environment
(e.g. it is added in local ~/.profile).
How about the following change? It doesn't change the default behavior
and allows the caller to override tramp-local-environment-variable-p
when necessary.
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index 9d13cdc3a2d..0a454fed69b 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -3052,8 +3052,7 @@ tramp-sh-handle-make-process
;; `process-environment'.
env uenv
(env (dolist (elt (cons prompt process-environment) env)
- (or (member
- elt (default-toplevel-value 'process-environment))
+ (or (tramp-local-environment-variable-p elt)
(if (string-search "=" elt)
(setq env (append env `(,elt)))
(setq uenv (cons elt uenv))))))
@@ -3288,7 +3287,7 @@ tramp-sh-handle-process-file
(cons program args) " "))
;; We use as environment the difference to toplevel `process-environment'.
(dolist (elt process-environment)
- (or (member elt (default-toplevel-value 'process-environment))
+ (or (tramp-local-environment-variable-p elt)
(if (string-search "=" elt)
(setq env (append env `(,elt)))
(setq uenv (cons elt uenv)))))
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index 9bf1b4ae6c3..3ce25a5c663 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -5342,6 +5342,12 @@ tramp-direct-async-process-p
(or (not (stringp buffer)) (not (tramp-tramp-file-p buffer)))
(or (not (stringp stderr)) (not (tramp-tramp-file-p stderr))))))
+(defun tramp-local-environment-variable-p (arg)
+ "Return non-nil if ARG exists in default `process-environment'.
+Tramp does not propagate a local environment variable in remote
+processes."
+ (member arg (default-toplevel-value 'process-environment)))
+
(defun tramp-handle-make-process (&rest args)
"An alternative `make-process' implementation for Tramp files."
(tramp-skeleton-make-process args nil nil
@@ -5360,9 +5366,7 @@ tramp-handle-make-process
(env (dolist (elt process-environment env)
(when (and
(string-search "=" elt)
- (not
- (member
- elt (default-toplevel-value 'process-environment))))
+ (not (tramp-local-environment-variable-p elt)))
(setq env (cons elt env)))))
;; Add remote path if exists.
(env (if-let* ((sh-file-name-handler-p)
> You could let-bind and modify tramp-remote-process-environment for
> tramp-sh-handle-make-process. Note, that this won't work for direct
> async processes, which use tramp-handle-make-process internally. And it
> won't work for tramp-sh-handle-process-file.
>
> Alternatively, you could call "env VAR1=VAL1 VAR2=VAL2 ... program ..."
> instead of "program ...".
Thanks for the suggestion. The problem is that
python-shell-with-environment is just a wrapper that temporarily sets
path and environment:
(defmacro python-shell-with-environment (&rest body)
...
`(python-shell--with-environment
(python-shell--calculate-process-environment)
(lambda () ,@body)))
so we don't know what functions and programs users call.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79413: [PATCH] Fix path and environment in remote Python shell
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Thu, 11 Sep 2025 14:12:01 +0000
Resent-Message-ID: <handler.79413.B79413.175759992025598 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79413
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: patch
To: Liu Hui <liuhui1610@HIDDEN>
Cc: 79413 <at> debbugs.gnu.org
Received: via spool by 79413-submit <at> debbugs.gnu.org id=B79413.175759992025598
(code B ref 79413); Thu, 11 Sep 2025 14:12:01 +0000
Received: (at 79413) by debbugs.gnu.org; 11 Sep 2025 14:12:00 +0000
Received: from localhost ([127.0.0.1]:44207 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1uwi1o-0006eo-7b
for submit <at> debbugs.gnu.org; Thu, 11 Sep 2025 10:12:00 -0400
Received: from mout.gmx.net ([212.227.15.19]:36261)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1uwi1k-0006eT-6O
for 79413 <at> debbugs.gnu.org; Thu, 11 Sep 2025 10:11:57 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1757599909; x=1758204709; i=michael.albinus@HIDDEN;
bh=EVHBuracvkvYd1sWXWf+WemT2tCZvD9unD0MaBaEgpY=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
content-type:date:from:message-id:mime-version:reply-to:subject:
to;
b=LUHLQvGA3xrBuf+t2jrLb077UAZnYaVATfhM/0zu0bJ4NAI+mMYUY9QRa51p7pLI
erzYunjq2fs+dO49+/cQO2O+qeMLUECo41FZZh4Wi2aFl0GT9WSeMPYs9J2WGMoZJ
KDwTYUFBiU4IfYQ5DpoVn2hmSdSTMS5IdEPjqlBA9m4tU0z8m4iM25nFFlLReSUoT
xYY9Fi6G54Lv52f03q2cNFYAIxs6a9UWpxdb8IM36S5uLUT3LwUHg3COseYPYQMqD
klbpiWDu0Amo4d+PuFdwPqLYHwM7yA5ui5upMThdoti4amUqCwYYINGdPGPiMqoIX
flvq0051ln1LPS/+Kg==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx005
[212.227.17.190]) with ESMTPSA (Nemesis) id 1Mzyya-1uAe391WI2-014zJw; Thu, 11
Sep 2025 16:11:49 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <87v7lpbnou.fsf@HIDDEN>
References: <874itcne9k.fsf@HIDDEN> <87wm67zso1.fsf@HIDDEN>
<87jz27as2e.fsf@HIDDEN> <87zfb2g0ef.fsf@HIDDEN>
<87v7lpbnou.fsf@HIDDEN>
Date: Thu, 11 Sep 2025 16:11:48 +0200
Message-ID: <87348t9izf.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:i/ZCqZmOLB/xomP4rTx6vW96jCP71bm5kjP5oe1ixQky7A6uYgE
rdYgxF0IFwlyPpLcVZtPJZt8F/WWYuXJV3NJ/VQzhjZ0ZVJCZLzj+5GEHlHcvqxBWxLTN37
bcphbP5nv+S7qolrcdv74iX5usggQHlc4olhYpXJ3ySzaDehmjsh3OVPFdsMV5b0SV49cpK
wRXt6kHrg7wTA9y82hAyg==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:y/S/gzjyHN4=;IuhGSXUiIZbMnDq3AXucb4uiTo9
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
X-Spam-Score: -0.7 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)
Liu Hui <liuhui1610@HIDDEN> writes:
Hi,
> How about the following change? It doesn't change the default behavior
> and allows the caller to override tramp-local-environment-variable-p
> when necessary.
Looks OK. Pls provide a complete patch, including commit
messages. tramp-androidsu-handle-make-process in tramp-android.el must
be changed as well.
Perhaps add also a comment on top of tramp-local-environment-variable-p,
explaining the reason for this function. I'm not decided yet whether we
shall document it in the Tramp manual. If we do, we would need a more
general approach I guess.
Best regards, Michael.
X-Loop: help-debbugs@HIDDEN
Subject: bug#79413: [PATCH] Fix path and environment in remote Python shell
Resent-From: Liu Hui <liuhui1610@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 12 Sep 2025 09:59:01 +0000
Resent-Message-ID: <handler.79413.B79413.175767111824661 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79413
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: patch
To: Michael Albinus <michael.albinus@HIDDEN>
Cc: 79413 <at> debbugs.gnu.org
Received: via spool by 79413-submit <at> debbugs.gnu.org id=B79413.175767111824661
(code B ref 79413); Fri, 12 Sep 2025 09:59:01 +0000
Received: (at 79413) by debbugs.gnu.org; 12 Sep 2025 09:58:38 +0000
Received: from localhost ([127.0.0.1]:48690 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ux0Y9-0006Pg-Gl
for submit <at> debbugs.gnu.org; Fri, 12 Sep 2025 05:58:38 -0400
Received: from mail-pf1-x42e.google.com ([2607:f8b0:4864:20::42e]:42149)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.84_2) (envelope-from <liuhui1610@HIDDEN>)
id 1ux0Y5-0006PH-ES
for 79413 <at> debbugs.gnu.org; Fri, 12 Sep 2025 05:58:34 -0400
Received: by mail-pf1-x42e.google.com with SMTP id
d2e1a72fcca58-7725147ec88so1068395b3a.0
for <79413 <at> debbugs.gnu.org>; Fri, 12 Sep 2025 02:58:33 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20230601; t=1757671107; x=1758275907; darn=debbugs.gnu.org;
h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
:from:from:to:cc:subject:date:message-id:reply-to;
bh=c4QP4CN5Yy7h8CBwOBK3ip6dgczAVDXE5qC/Sdw0RP8=;
b=KuabIy/SWdvBKWLpOGFpLoA2ZVBkBzytNHvZZsswsgDIHv3RF4HrSBvEd11w+VZ4lV
gNZmoF4FPHW4mhI2EZLX6yDCDHY0Qs6MfrVNyYITZhHZUNfW0rIuWG5ICqpNtRxZFI5C
8TeoFlA/MmRdzL/Y/3KyDpYdRPMIRdsQUOnSCfs92TAKEAkxHExHiNspv7dKeUwqDKsl
r1dLEf9Fe3/hRYSQLI86NSEkXLuRN9DsBz4V6UAXv4+GqyPKU8yfeiGnKkpMT/faElcA
RHJeme4qluUMkG4cl7avE0DDhVZzWdCJH7XNQGS3QZEoM7+IrT2O4XvaBwgVKSsGQphx
ZBXg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1757671107; x=1758275907;
h=mime-version:message-id:date:references:in-reply-to:subject:cc:to
:from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
bh=c4QP4CN5Yy7h8CBwOBK3ip6dgczAVDXE5qC/Sdw0RP8=;
b=xRkurVrGCIEy15PRj6stNpOaGiqI0pYjOpSxALE0jTuUehWKVb4AnDifrtsV/wi1aW
70qrklZ6VtHh+6hOP/bacJ7+rwFyDs5MNhLmV/Oe/AmeAIy+vYoFFHutCWfCCkZ5MzWw
09Vlrvw0QeKD4/ozkrB4YY7NDTd9aZe8UGZrTaelXIsuiXeRSe7in1mL9OjA2EqCJu+0
0hydt9KH57HGF8uBry2o+M4gTgOktAxmOtZzy4nuq1i/Gq7ZhplQJwF6mtiF8W4OtrNI
sfQrHPqqhbOyE+3VS4vdf0zalc4ZjXfwICN304IfxNr/53nt3sGyvzG1V7KaRSZ7KYkU
ilsA==
X-Gm-Message-State: AOJu0Ywb+0PwMJjv0NJ+1USVN5i8Odc2urs5lPr1Ygd/O1gA3fdjLf5Y
M1Bb5MTYq+V0X3Joh0OivVJ3k/Tp6SS/wEaKFGLq/zy1eUSnJFWlM3cm0ejw5g==
X-Gm-Gg: ASbGncvxENIpLnwqofQVLamZDqerA5d67mVDySzS192/OJ3/201DAZHw9LzpJEqPNXe
aBn+qXz85rL5fjaRUuw1C9o+iOgX/JxxEqjQjW3/kbCtT6My77XHQ9e+vUgQpw0hDM1l2+8o4hz
zItZxp8SAvUyaeOPk19eHE91D/NaBaNIgbnCcuv++PmcbfpB2Ypoty7PIw332rvlxuZGoVAEwjz
Iu8o0QZh01rhhviKuP2cPtsdOPNCH25WtugYDLPA7yPAVZnFmc+WrYu3mDEAB4MafU8R8lbWrJI
7Q9NOcL8w8k+Ay573aLWfDCQ5o2C+F6592CMUycEOISBcLoS4dJMUAX/XSRfhKDn1hc0TNgVgzh
VWWF8IF2kBLm7QFVq7iXOEYmG7d/x2A==
X-Google-Smtp-Source: AGHT+IHClDGBB3tbvAL96jYKeoi4YFOpakvccqdPNm+PahUP8f1DndcAzYzJlxgKKQGF7pGwXTZeVQ==
X-Received: by 2002:a05:6a00:3c8c:b0:772:736e:656c with SMTP id
d2e1a72fcca58-7761252f1edmr2625239b3a.5.1757671106682;
Fri, 12 Sep 2025 02:58:26 -0700 (PDT)
Received: from localhost ([58.56.112.164]) by smtp.gmail.com with ESMTPSA id
d2e1a72fcca58-77607b18424sm4919686b3a.63.2025.09.12.02.58.24
(version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
Fri, 12 Sep 2025 02:58:26 -0700 (PDT)
From: Liu Hui <liuhui1610@HIDDEN>
In-Reply-To: <87348t9izf.fsf@HIDDEN>
References: <874itcne9k.fsf@HIDDEN> <87wm67zso1.fsf@HIDDEN>
<87jz27as2e.fsf@HIDDEN> <87zfb2g0ef.fsf@HIDDEN>
<87v7lpbnou.fsf@HIDDEN> <87348t9izf.fsf@HIDDEN>
Date: Fri, 12 Sep 2025 17:58:04 +0800
Message-ID: <87y0qkm1qr.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: 0.3 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)
--=-=-=
Content-Type: text/plain
Michael Albinus <michael.albinus@HIDDEN> writes:
> Liu Hui <liuhui1610@HIDDEN> writes:
>
> Hi,
>
>> How about the following change? It doesn't change the default behavior
>> and allows the caller to override tramp-local-environment-variable-p
>> when necessary.
>
> Looks OK. Pls provide a complete patch, including commit
> messages. tramp-androidsu-handle-make-process in tramp-android.el must
> be changed as well.
>
> Perhaps add also a comment on top of tramp-local-environment-variable-p,
> explaining the reason for this function. I'm not decided yet whether we
> shall document it in the Tramp manual. If we do, we would need a more
> general approach I guess.
Patch is attached. Thanks.
--=-=-=
Content-Type: text/x-diff
Content-Disposition: attachment;
filename=0001-Tramp-Refactor-environment-variable-filtering-to-a-s.patch
From cd1248abcef17298330318ce9de707bdcebb0233 Mon Sep 17 00:00:00 2001
From: Liu Hui <liuhui1610@HIDDEN>
Date: Fri, 12 Sep 2025 12:55:11 +0800
Subject: [PATCH] Tramp: Refactor environment variable filtering to a separate
function
* lisp/net/tramp.el (tramp-local-environment-variable-p): New
function.
(tramp-handle-make-process):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-process)
(tramp-sh-handle-process-file):
* lisp/net/tramp-androidsu.el
(tramp-androidsu-handle-make-process): Use
`tramp-local-environment-variable-p'.
---
lisp/net/tramp-androidsu.el | 4 +---
lisp/net/tramp-sh.el | 5 ++---
lisp/net/tramp.el | 16 +++++++++++++---
3 files changed, 16 insertions(+), 9 deletions(-)
diff --git a/lisp/net/tramp-androidsu.el b/lisp/net/tramp-androidsu.el
index a593833a836..6cc3f14381d 100644
--- a/lisp/net/tramp-androidsu.el
+++ b/lisp/net/tramp-androidsu.el
@@ -311,9 +311,7 @@ tramp-androidsu-handle-make-process
(when
(and
(string-search "=" elt)
- (not
- (member
- elt (default-toplevel-value 'process-environment))))
+ (not (tramp-local-environment-variable-p elt)))
(setq env (cons elt env)))))
;; Add remote path if exists.
(env (let ((remote-path (string-join (tramp-get-remote-path v) ":")))
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index 9d13cdc3a2d..0a454fed69b 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -3052,8 +3052,7 @@ tramp-sh-handle-make-process
;; `process-environment'.
env uenv
(env (dolist (elt (cons prompt process-environment) env)
- (or (member
- elt (default-toplevel-value 'process-environment))
+ (or (tramp-local-environment-variable-p elt)
(if (string-search "=" elt)
(setq env (append env `(,elt)))
(setq uenv (cons elt uenv))))))
@@ -3288,7 +3287,7 @@ tramp-sh-handle-process-file
(cons program args) " "))
;; We use as environment the difference to toplevel `process-environment'.
(dolist (elt process-environment)
- (or (member elt (default-toplevel-value 'process-environment))
+ (or (tramp-local-environment-variable-p elt)
(if (string-search "=" elt)
(setq env (append env `(,elt)))
(setq uenv (cons elt uenv)))))
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index ad768f9e038..a27e8b8fbe8 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -5347,6 +5347,18 @@ tramp-direct-async-process-p
(or (not (stringp buffer)) (not (tramp-tramp-file-p buffer)))
(or (not (stringp stderr)) (not (tramp-tramp-file-p stderr))))))
+;; This function is used by tramp-*-handle-make-process and
+;; tramp-sh-handle-process-file to filter local environment variables
+;; that should not be propagated remotely. Users can override this
+;; function if necessary, for example, to ensure that a specific
+;; environment variable is applied to remote processes, whether it
+;; exists locally or not.
+(defun tramp-local-environment-variable-p (arg)
+ "Return non-nil if ARG exists in default `process-environment'.
+Tramp does not propagate local environment variables in remote
+processes."
+ (member arg (default-toplevel-value 'process-environment)))
+
(defun tramp-handle-make-process (&rest args)
"An alternative `make-process' implementation for Tramp files."
(tramp-skeleton-make-process args nil nil
@@ -5365,9 +5377,7 @@ tramp-handle-make-process
(env (dolist (elt process-environment env)
(when (and
(string-search "=" elt)
- (not
- (member
- elt (default-toplevel-value 'process-environment))))
+ (not (tramp-local-environment-variable-p elt)))
(setq env (cons elt env)))))
;; Add remote path if exists.
(env (if-let* ((sh-file-name-handler-p)
--
2.25.1
--=-=-=--
X-Loop: help-debbugs@HIDDEN
Subject: bug#79413: [PATCH] Fix path and environment in remote Python shell
Resent-From: Michael Albinus <michael.albinus@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 12 Sep 2025 11:27:02 +0000
Resent-Message-ID: <handler.79413.B79413.175767641415980 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 79413
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: patch
To: Liu Hui <liuhui1610@HIDDEN>
Cc: 79413 <at> debbugs.gnu.org
Received: via spool by 79413-submit <at> debbugs.gnu.org id=B79413.175767641415980
(code B ref 79413); Fri, 12 Sep 2025 11:27:02 +0000
Received: (at 79413) by debbugs.gnu.org; 12 Sep 2025 11:26:54 +0000
Received: from localhost ([127.0.0.1]:49104 helo=debbugs.gnu.org)
by debbugs.gnu.org with esmtp (Exim 4.84_2)
(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
id 1ux1vZ-00049e-IF
for submit <at> debbugs.gnu.org; Fri, 12 Sep 2025 07:26:53 -0400
Received: from mout.gmx.net ([212.227.17.21]:40789)
by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.84_2) (envelope-from <michael.albinus@HIDDEN>)
id 1ux1vU-00049C-UJ
for 79413 <at> debbugs.gnu.org; Fri, 12 Sep 2025 07:26:50 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;
s=s31663417; t=1757676401; x=1758281201; i=michael.albinus@HIDDEN;
bh=308iYbwXTgItO2mPgH4xmA1vrIMzOuLfVDKBN7qqPyU=;
h=X-UI-Sender-Class:From:To:Cc:Subject:In-Reply-To:References:Date:
Message-ID:MIME-Version:Content-Type:cc:content-transfer-encoding:
content-type:date:from:message-id:mime-version:reply-to:subject:
to;
b=G/EPm62oX/MCLIZGU73IfZpOHGmZIsVyeAlZ6CkKw9+pAHxiSw8CRvtua7eVW1Ga
LfG1LvUAS5YGb45R6nkHG4uCz49F7fS0TPuUcvd1MnQ+UBYa2BsXp/watNy6g7+dp
s8IDt6PjvzpuGqgKxHUcOOy1rpCzU911w6Da5hPCDWW97TWbJmC4yWjxKUlbfsYiy
krC3gTjg99VkPX3Y57JTkeDlpmXKyLEsm/Th0lugTxzkGYTBoc3y5jKETJafXq6HT
hD3pctXzsFASgrMTC8Xz+/WisEaUueNQ46hCPuI9fJQJzYsINpDt2wruGRR7Oob6i
Zs3wroAeUNVnf2oL0A==
X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a
Received: from gandalf.gmx.de ([185.89.37.61]) by mail.gmx.net (mrgmx105
[212.227.17.168]) with ESMTPSA (Nemesis) id 1MWRRT-1uvmRe1TKt-00T6Xs; Fri, 12
Sep 2025 13:26:41 +0200
From: Michael Albinus <michael.albinus@HIDDEN>
In-Reply-To: <87y0qkm1qr.fsf@HIDDEN>
References: <874itcne9k.fsf@HIDDEN> <87wm67zso1.fsf@HIDDEN>
<87jz27as2e.fsf@HIDDEN> <87zfb2g0ef.fsf@HIDDEN>
<87v7lpbnou.fsf@HIDDEN> <87348t9izf.fsf@HIDDEN>
<87y0qkm1qr.fsf@HIDDEN>
Date: Fri, 12 Sep 2025 13:26:40 +0200
Message-ID: <87ms6zud1r.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Provags-ID: V03:K1:C//q5Ad4lFVuxyBfwYCiOVNGpX+GBPVgeOwrSZ3hZOuMuMy6zEr
mlUkjZrMGbGTDIkL9h2DqCvkR4uTN/LOJS+2HNrkMpXWMiE/zcpKgfDukJBFJV7A25IMwoj
48p7wJPmIolS/W+SdAc95NBtCiAjlcDrSDTIYTZ/IfW7yTKob7SOzxrk6/rsxA+yHvGjpE/
M13fawOu2jct6f+NAY4Lw==
X-Spam-Flag: NO
UI-OutboundReport: notjunk:1;M01:P0:95Qqox70uk8=;2DR6RUA82i2zb6gy1syQeuewc7T
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
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>,
<mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)
Liu Hui <liuhui1610@HIDDEN> writes:
Hi,
>> Looks OK. Pls provide a complete patch, including commit
>> messages. tramp-androidsu-handle-make-process in tramp-android.el must
>> be changed as well.
>>
>> Perhaps add also a comment on top of tramp-local-environment-variable-p,
>> explaining the reason for this function. I'm not decided yet whether we
>> shall document it in the Tramp manual. If we do, we would need a more
>> general approach I guess.
>
> Patch is attached. Thanks.
Thanks, I've pushed it to the repositories.
Best regards, Michael.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.