akashcli 4.6.0__tar.gz → 4.6.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {akashcli-4.6.0 → akashcli-4.6.1}/PKG-INFO +1 -1
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/relay.py +7 -5
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/PKG-INFO +1 -1
- {akashcli-4.6.0 → akashcli-4.6.1}/pyproject.toml +1 -1
- {akashcli-4.6.0 → akashcli-4.6.1}/README.md +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/__init__.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/_net.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/auth.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/cli.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/client.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/config.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/crypto.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/env_manager.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/exceptions.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/exec.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/integrity.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/logger.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/models.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/p2p.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/packages.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/restore.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/snapshot_crypto.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/storage.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/terminal.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/uploader.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/utils.py +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/SOURCES.txt +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/dependency_links.txt +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/entry_points.txt +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/requires.txt +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/top_level.txt +0 -0
- {akashcli-4.6.0 → akashcli-4.6.1}/setup.cfg +0 -0
|
@@ -210,10 +210,9 @@ def _handle_pty(ws, frame: dict) -> None:
|
|
|
210
210
|
pass
|
|
211
211
|
|
|
212
212
|
def _child_setup():
|
|
213
|
-
"""Run inside the child process before exec
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
os.setsid()
|
|
213
|
+
"""Run inside the child process before exec.
|
|
214
|
+
start_new_session=True already calls setsid(); we just need to claim
|
|
215
|
+
the slave PTY as the controlling terminal via TIOCSCTTY."""
|
|
217
216
|
try:
|
|
218
217
|
fcntl.ioctl(0, termios.TIOCSCTTY, 0)
|
|
219
218
|
except Exception:
|
|
@@ -222,12 +221,15 @@ def _handle_pty(ws, frame: dict) -> None:
|
|
|
222
221
|
import subprocess as _sp
|
|
223
222
|
shell = command or os.environ.get("SHELL", "/bin/bash")
|
|
224
223
|
|
|
225
|
-
#
|
|
224
|
+
# Use start_new_session=True so the child is a proper session leader
|
|
225
|
+
# (equivalent to setsid()), then TIOCSCTTY in preexec_fn attaches the
|
|
226
|
+
# slave PTY as the controlling terminal → bash gets full job control.
|
|
226
227
|
try:
|
|
227
228
|
proc = _sp.Popen(
|
|
228
229
|
[shell],
|
|
229
230
|
stdin=slave_fd, stdout=slave_fd, stderr=slave_fd,
|
|
230
231
|
close_fds=True,
|
|
232
|
+
start_new_session=True,
|
|
231
233
|
preexec_fn=_child_setup,
|
|
232
234
|
cwd=os.path.expanduser("~"),
|
|
233
235
|
env={**os.environ,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|