robotcode-repl 2.9.0.dev79__py3-none-any.whl → 2.9.0.dev87__py3-none-any.whl

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.
@@ -1 +1 @@
1
- __version__ = "2.9.0-dev.79"
1
+ __version__ = "2.9.0-dev.87"
@@ -618,7 +618,12 @@ class SessionServer:
618
618
  idle_timeout=idle_timeout,
619
619
  last_request=now,
620
620
  )
621
- _write_entry(self._entry)
621
+ try:
622
+ _write_entry(self._entry)
623
+ except OSError as e:
624
+ # A sandbox can keep the process from writing there, even where `session start` could create the folder.
625
+ self._listener.close()
626
+ raise SessionError(f"Can't create the files of the session in {sessions_dir()}: {e.strerror or e}.") from e
622
627
  threading.Thread(target=self._accept, name="robotcode-session", daemon=True).start()
623
628
  # Only once the file exists: until then, `session start` reads the pipe itself if the process ends before it is
624
629
  # ready.
@@ -1144,7 +1149,13 @@ class SessionServer:
1144
1149
  _write_entry(self._entry)
1145
1150
 
1146
1151
  def _signal(self, signum: int) -> None:
1147
- """Let the interpreter, in the main thread, handle `signum` as when the signal arrives."""
1152
+ """Let the interpreter, in the main thread, handle `signum` as when the signal arrives. Robot Framework handles
1153
+ signals only during a run; without its handlers, as in the new process of a restart that is still starting, the
1154
+ signal would end the process at once. So it waits for them, unless the REPL or the run has ended already."""
1155
+ while signal.getsignal(signum) in (signal.SIG_DFL, signal.default_int_handler):
1156
+ if self._run_ended:
1157
+ return
1158
+ time.sleep(0.01)
1148
1159
  if sys.platform == "win32":
1149
1160
  signal.raise_signal(signum)
1150
1161
  else:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: robotcode-repl
3
- Version: 2.9.0-dev.79
3
+ Version: 2.9.0-dev.87
4
4
  Summary: RobotCode REPL for Robot Framework
5
5
  Project-URL: Homepage, https://robotcode.io
6
6
  Project-URL: Donate, https://opencollective.com/robotcode
@@ -27,7 +27,7 @@ Classifier: Topic :: Utilities
27
27
  Classifier: Typing :: Typed
28
28
  Requires-Python: >=3.10
29
29
  Requires-Dist: prompt-toolkit!=3.0.52
30
- Requires-Dist: robotcode-runner==2.9.0-dev.79
30
+ Requires-Dist: robotcode-runner==2.9.0-dev.87
31
31
  Description-Content-Type: text/markdown
32
32
 
33
33
  # robotcode-repl
@@ -1,10 +1,10 @@
1
1
  robotcode/repl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- robotcode/repl/__version__.py,sha256=v9ZsHq3uFixxjVmkGl_oIz0HlfBtYBNCWuHr9KV-HMo,29
2
+ robotcode/repl/__version__.py,sha256=beOklIzsZ_RTE6dLeNVgEzmkZPKrnZskp1prKoYYu7U,29
3
3
  robotcode/repl/_backends.py,sha256=s7PV-HBhnAvwjn2le0cbOJ5hwLb4MjahUo6KWtRC3lc,110
4
4
  robotcode/repl/_indent.py,sha256=jwFKaHNvTWYpUwIWHu6JHoaCz7ljOxneR5sBrKcAjpI,3303
5
5
  robotcode/repl/_keyword_lookup.py,sha256=c8InMUDGKsw4wYmiqJzBr9GGxPC-59sRZHI0C-GWjFA,7748
6
6
  robotcode/repl/_progress.py,sha256=BaSbDGOy5UOXvD855Kd-lDrYbqPrYIWRVs507vJznK4,2586
7
- robotcode/repl/_session.py,sha256=XEdqkrvuMr9L3xUXlTM3SMtB-bP8-oWQSiq-xd6IoCc,50348
7
+ robotcode/repl/_session.py,sha256=ltjuqOqU5aEWzi0KlASnkaEsl2AFDhraIDQ3cU4I0Q8,51096
8
8
  robotcode/repl/_session_export.py,sha256=sTSkLEMoSxNQOsII3xfDY8h-nV-mrem-4h6Iug7VQv4,2841
9
9
  robotcode/repl/base_interpreter.py,sha256=ep1xqH5QCtkn2U2P77IJQCk_Q5TTBsYOcRjGC5hV5cY,30176
10
10
  robotcode/repl/cli.py,sha256=RcjFT1yvcDy8HMzVO6r0cuqWCKqFofrs7XdkJPUpp1E,26878
@@ -26,7 +26,7 @@ robotcode/repl/_pt/components.py,sha256=kuYVXJc4bFJq4b3-JtAtBYymvS7ssSwlKDldWYFG
26
26
  robotcode/repl/_pt/doc_viewer.py,sha256=iazNOQEvRygPSUyqKH2qOYShzdYqd7vufZcxPziJx8Q,71648
27
27
  robotcode/repl/_pt/history.py,sha256=Rvbdu4LtbYk9dPgYJY7D1JpfyT1SETUdNmtevxo21H4,1591
28
28
  robotcode/repl/_pt/lexer.py,sha256=YXtDMWQXPIocwceMXFlvULWyGXCDmqeAtTer_Ecuvwk,13925
29
- robotcode_repl-2.9.0.dev79.dist-info/METADATA,sha256=_-oj0uaPOkOd9Na5K78HvySd1dpfcngD5NC1aGwJXjY,2833
30
- robotcode_repl-2.9.0.dev79.dist-info/WHEEL,sha256=2iZrJkDIkeDh0k9SikKMqFuRP-ua6mb4Ir1AsER4BEw,87
31
- robotcode_repl-2.9.0.dev79.dist-info/entry_points.txt,sha256=lI4idVOEmSWxmmioejg-_QvHXTLySK6ZxJ13R_v8ykU,40
32
- robotcode_repl-2.9.0.dev79.dist-info/RECORD,,
29
+ robotcode_repl-2.9.0.dev87.dist-info/METADATA,sha256=cLPONlpD1SU_KqLLnI3iVHTTlc_euorqaEWPwQK6chU,2833
30
+ robotcode_repl-2.9.0.dev87.dist-info/WHEEL,sha256=2iZrJkDIkeDh0k9SikKMqFuRP-ua6mb4Ir1AsER4BEw,87
31
+ robotcode_repl-2.9.0.dev87.dist-info/entry_points.txt,sha256=lI4idVOEmSWxmmioejg-_QvHXTLySK6ZxJ13R_v8ykU,40
32
+ robotcode_repl-2.9.0.dev87.dist-info/RECORD,,