pywebexec 1.7.15__tar.gz → 1.7.18__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 (51) hide show
  1. {pywebexec-1.7.15/pywebexec.egg-info → pywebexec-1.7.18}/PKG-INFO +1 -1
  2. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/__init__.py +0 -1
  3. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/pywebexec.py +3 -2
  4. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/script.js +2 -2
  5. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/version.py +2 -2
  6. {pywebexec-1.7.15 → pywebexec-1.7.18/pywebexec.egg-info}/PKG-INFO +1 -1
  7. {pywebexec-1.7.15 → pywebexec-1.7.18}/.github/workflows/python-publish.yml +0 -0
  8. {pywebexec-1.7.15 → pywebexec-1.7.18}/.gitignore +0 -0
  9. {pywebexec-1.7.15 → pywebexec-1.7.18}/LICENSE +0 -0
  10. {pywebexec-1.7.15 → pywebexec-1.7.18}/README.md +0 -0
  11. {pywebexec-1.7.15 → pywebexec-1.7.18}/pyproject.toml +0 -0
  12. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/host_ip.py +0 -0
  13. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/css/Consolas NF.ttf +0 -0
  14. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/css/style.css +0 -0
  15. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/css/xterm.css +0 -0
  16. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/aborted.svg +0 -0
  17. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/copy.svg +0 -0
  18. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/copy_ok.svg +0 -0
  19. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/down-arrow.svg +0 -0
  20. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/failed.svg +0 -0
  21. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/favicon.svg +0 -0
  22. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/fit-tty.svg +0 -0
  23. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/fit-win.svg +0 -0
  24. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/font-decrease.svg +0 -0
  25. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/font-increase.svg +0 -0
  26. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/norun.svg +0 -0
  27. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/pause.svg +0 -0
  28. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/popup.svg +0 -0
  29. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/resume.svg +0 -0
  30. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/running.svg +0 -0
  31. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/images/success.svg +0 -0
  32. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/commands.js +0 -0
  33. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/popup.js +0 -0
  34. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/xterm/LICENSE +0 -0
  35. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/xterm/addon-canvas.js +0 -0
  36. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/xterm/addon-canvas.js.map +0 -0
  37. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/xterm/addon-fit.js +0 -0
  38. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/xterm/addon-fit.js.map +0 -0
  39. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/xterm/addon-unicode11.js +0 -0
  40. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/xterm/addon-unicode11.js.map +0 -0
  41. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/xterm/xterm.js +0 -0
  42. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/static/js/xterm/xterm.js.map +0 -0
  43. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/templates/__init__.py +0 -0
  44. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/templates/index.html +0 -0
  45. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec/templates/popup.html +0 -0
  46. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec.egg-info/SOURCES.txt +0 -0
  47. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec.egg-info/dependency_links.txt +0 -0
  48. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec.egg-info/entry_points.txt +0 -0
  49. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec.egg-info/requires.txt +0 -0
  50. {pywebexec-1.7.15 → pywebexec-1.7.18}/pywebexec.egg-info/top_level.txt +0 -0
  51. {pywebexec-1.7.15 → pywebexec-1.7.18}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pywebexec
3
- Version: 1.7.15
3
+ Version: 1.7.18
4
4
  Summary: Simple Python HTTP Exec Server
5
5
  Home-page: https://github.com/joknarf/pywebexec
6
6
  Author: Franck Jouvanceau
@@ -2,4 +2,3 @@
2
2
 
3
3
  __author__ = "Franck Jouvanceau"
4
4
 
5
- from .pywebexec import start_gunicorn
@@ -25,6 +25,7 @@ import termios
25
25
  import struct
26
26
  import subprocess
27
27
  import logging
28
+ from pathlib import Path
28
29
  import pyte
29
30
  from . import host_ip
30
31
 
@@ -720,6 +721,7 @@ def run_command_endpoint():
720
721
  'from': request.remote_addr,
721
722
  })
722
723
 
724
+ Path(get_output_file_path(command_id)).touch()
723
725
  # Run the command in a separate thread
724
726
  thread = threading.Thread(target=run_command, args=(request.remote_addr, user, command_path, params, command_id, rows, cols))
725
727
  thread.start()
@@ -848,9 +850,8 @@ def main():
848
850
  COMMAND_STATUS_DIR = f"{os.getcwd()}/{COMMAND_STATUS_DIR}"
849
851
  check_processes()
850
852
  sys.argv.remove("shareterm")
851
- sys.argv[0] = PYWEBEXEC
852
853
  with open(basef + ".log", "a") as log:
853
- pywebexec = subprocess.Popen([sys.executable] + sys.argv, stdout=log, stderr=log, bufsize=1)
854
+ pywebexec = subprocess.Popen(sys.argv, stdout=log, stderr=log, bufsize=1)
854
855
  print_urls(term_command_id)
855
856
  res = start_term()
856
857
  print("Stopping server")
@@ -270,7 +270,7 @@ async function viewOutput(command_id) {
270
270
  try {
271
271
  const response = await fetch(`/command_status/${command_id}${urlToken}`);
272
272
  if (!response.ok) {
273
- return;
273
+ outputInterval = setInterval(() => fetchOutput(nextOutputLink), 500);
274
274
  }
275
275
  const data = await response.json();
276
276
  const commandInfo = document.getElementById('commandInfo');
@@ -428,7 +428,7 @@ function sliderUpdateOutput()
428
428
  {
429
429
  const percentage = slider.value/10;
430
430
  outputLength = Math.floor((fullOutput.length * percentage) / 100);
431
- const limitedOutput = fullOutput.slice(0, outputLength);
431
+ limitedOutput = fullOutput.slice(0, outputLength);
432
432
  terminal.clear();
433
433
  terminal.reset();
434
434
  terminal.write(limitedOutput);
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '1.7.15'
21
- __version_tuple__ = version_tuple = (1, 7, 15)
20
+ __version__ = version = '1.7.18'
21
+ __version_tuple__ = version_tuple = (1, 7, 18)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pywebexec
3
- Version: 1.7.15
3
+ Version: 1.7.18
4
4
  Summary: Simple Python HTTP Exec Server
5
5
  Home-page: https://github.com/joknarf/pywebexec
6
6
  Author: Franck Jouvanceau
File without changes
File without changes
File without changes
File without changes
File without changes