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.
Files changed (32) hide show
  1. {akashcli-4.6.0 → akashcli-4.6.1}/PKG-INFO +1 -1
  2. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/relay.py +7 -5
  3. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/PKG-INFO +1 -1
  4. {akashcli-4.6.0 → akashcli-4.6.1}/pyproject.toml +1 -1
  5. {akashcli-4.6.0 → akashcli-4.6.1}/README.md +0 -0
  6. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/__init__.py +0 -0
  7. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/_net.py +0 -0
  8. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/auth.py +0 -0
  9. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/cli.py +0 -0
  10. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/client.py +0 -0
  11. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/config.py +0 -0
  12. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/crypto.py +0 -0
  13. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/env_manager.py +0 -0
  14. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/exceptions.py +0 -0
  15. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/exec.py +0 -0
  16. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/integrity.py +0 -0
  17. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/logger.py +0 -0
  18. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/models.py +0 -0
  19. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/p2p.py +0 -0
  20. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/packages.py +0 -0
  21. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/restore.py +0 -0
  22. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/snapshot_crypto.py +0 -0
  23. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/storage.py +0 -0
  24. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/terminal.py +0 -0
  25. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/uploader.py +0 -0
  26. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli/utils.py +0 -0
  27. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/SOURCES.txt +0 -0
  28. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/dependency_links.txt +0 -0
  29. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/entry_points.txt +0 -0
  30. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/requires.txt +0 -0
  31. {akashcli-4.6.0 → akashcli-4.6.1}/akashcli.egg-info/top_level.txt +0 -0
  32. {akashcli-4.6.0 → akashcli-4.6.1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: akashcli
3
- Version: 4.6.0
3
+ Version: 4.6.1
4
4
  Summary: Akash CLI — secure remote shell relay, file vault, and device management
5
5
  License: MIT
6
6
  Keywords: akash,cli,relay,remote-shell,vault
@@ -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 — creates a new session
214
- and attaches the slave PTY as the controlling terminal so bash gets
215
- full job control (no 'cannot set terminal process group' errors)."""
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
- # Run the shell directly so it gets a proper controlling terminal.
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,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: akashcli
3
- Version: 4.6.0
3
+ Version: 4.6.1
4
4
  Summary: Akash CLI — secure remote shell relay, file vault, and device management
5
5
  License: MIT
6
6
  Keywords: akash,cli,relay,remote-shell,vault
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "akashcli"
3
- version = "4.6.0"
3
+ version = "4.6.1"
4
4
  description = "Akash CLI — secure remote shell relay, file vault, and device management"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.9"
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