robotcode 2.9.0.dev68__tar.gz → 2.9.0.dev79__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.
@@ -28,6 +28,10 @@ All notable changes to this project will be documented in this file. See [conven
28
28
 
29
29
  #### REPL
30
30
 
31
+ - Drive the REPL and robot-debug from separate commands with robotcode session ([4987b86](https://github.com/robotcodedev/robotcode/commit/4987b86ddd1e600baee74eb3288de437d40c9adf))
32
+
33
+ `robotcode session start repl` and `robotcode session start debug` run the REPL or a debug run in the background and print the ID of the session. `robotcode session send` gives it one input after the other and prints its output with an exit code that says how the input went; `wait`, `interrupt`, `list` and `stop` take care of the rest. When the REPL exits or the run ends, the session stays open, as a debugger does: `status` tells it, `result` prints the exit code of the REPL or the run, and `restart` starts it again in a new process, with the breakpoints as they are. So an AI agent whose tools can't type into a running program can work at the prompt turn by turn, on Linux, macOS and Windows. The output of a session stays in its memory, and where a sandbox doesn't let sessions run, `session start` says why.
34
+
31
35
  - Show the result of each statement and the prompt for AI agents ([3842b1f](https://github.com/robotcodedev/robotcode/commit/3842b1f482ea7c14f42b8787dd93567d2ab3bc54))
32
36
 
33
37
  `robotcode repl` now prints what a statement returned as `=> <value>`, as the debugger's `(rdb)` prompt does; at both prompts `None` and assignments show no such line. In the session of an AI agent the REPL also shows its `>>>` prompt on piped input, so the agent sees when a statement has ended; `--show-prompt` and `--no-show-prompt` switch it for piped input in any session.
@@ -57,6 +61,22 @@ All notable changes to this project will be documented in this file. See [conven
57
61
 
58
62
  #### REPL
59
63
 
64
+ - Let a session command follow a restart that ends its connection ([f52da1b](https://github.com/robotcodedev/robotcode/commit/f52da1b4e8e1dfb88af521e7f7926c4b1ef9a917))
65
+
66
+ A `robotcode session` command that reaches the old process of a restart just as it ends now goes on to the new process, and says that no session is open when there is none. Before, it failed with `doesn't answer:` and no reason.
67
+
68
+ - Let a session on macOS take the connections of its commands ([814d809](https://github.com/robotcodedev/robotcode/commit/814d809a3adf554293cab1c77eb32b1ad456e70c))
69
+
70
+ On macOS, a `robotcode session` command could fail with `Connection refused` right after `session start`, or find no session at all: the channel of a session kept only one connection waiting, while each command connects twice, and macOS refuses a connection to a full queue. The channel now keeps up to 16 connections waiting.
71
+
72
+ - End the documentation of .kw and .doc without empty lines ([aa9388f](https://github.com/robotcodedev/robotcode/commit/aa9388f3ac16d1e2b087eeb4c1dc2ac206e62e1f))
73
+
74
+ With the plain backend, as for AI agents or with `--plain`, the documentation that `.kw` and `.doc` print ended with up to two empty lines.
75
+
76
+ - Report a failure at a debugger stop once ([2fc88dc](https://github.com/robotcodedev/robotcode/commit/2fc88dc0693123833973308a466860c1d57b336f))
77
+
78
+ A keyword that fails at the `(rdb)` prompt printed its failure twice, as Robot Framework's `[ FAIL ]` message and once more as a `! …` line; `Pass Execution` there did the same. The prompt now leaves it at Robot Framework's message, as the `>>>` prompt does.
79
+
60
80
  - Start robotcode when only the replserver extra is installed ([c9255a3](https://github.com/robotcodedev/robotcode/commit/c9255a36131ae4e4ea058a55948f9e8043f9119a))
61
81
 
62
82
  With `robotcode[replserver]` or `robotcode-repl-server` installed
@@ -144,6 +164,16 @@ All notable changes to this project will be documented in this file. See [conven
144
164
 
145
165
 
146
166
 
167
+ ### <!-- 4 -->Refactor
168
+
169
+ #### REPL
170
+
171
+ - Use proper types in the session code ([f8575ef](https://github.com/robotcodedev/robotcode/commit/f8575ef4ae158a0730b61b5bd8f61495329df6fb))
172
+
173
+ The channel of a session, the file of a restart and the breakpoint state pass dataclasses and enums instead of dictionaries with string keys and text, so that mypy checks them. A command now also follows a session that restarts twice while it waits for its answer, a case the types brought up.
174
+
175
+
176
+
147
177
  ## [2.8.0](https://github.com/robotcodedev/robotcode/compare/v2.7.0..v2.8.0) - 2026-10-25
148
178
 
149
179
  ### <!-- 0 -->Features
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: robotcode
3
- Version: 2.9.0-dev.68
3
+ Version: 2.9.0-dev.79
4
4
  Summary: Command line interface for RobotCode
5
5
  Project-URL: Homepage, https://robotcode.io
6
6
  Project-URL: Donate, https://opencollective.com/robotcode
@@ -34,35 +34,35 @@ Classifier: Topic :: Text Editors :: Integrated Development Environments (IDE)
34
34
  Classifier: Topic :: Utilities
35
35
  Classifier: Typing :: Typed
36
36
  Requires-Python: >=3.10
37
- Requires-Dist: robotcode-core==2.9.0-dev.68
38
- Requires-Dist: robotcode-plugin==2.9.0-dev.68
39
- Requires-Dist: robotcode-robot==2.9.0-dev.68
37
+ Requires-Dist: robotcode-core==2.9.0-dev.79
38
+ Requires-Dist: robotcode-plugin==2.9.0-dev.79
39
+ Requires-Dist: robotcode-robot==2.9.0-dev.79
40
40
  Provides-Extra: all
41
41
  Requires-Dist: docutils; extra == 'all'
42
42
  Requires-Dist: pyyaml>=5.4; extra == 'all'
43
- Requires-Dist: robotcode-analyze==2.9.0-dev.68; extra == 'all'
44
- Requires-Dist: robotcode-debugger==2.9.0-dev.68; extra == 'all'
45
- Requires-Dist: robotcode-language-server==2.9.0-dev.68; extra == 'all'
46
- Requires-Dist: robotcode-repl-server==2.9.0-dev.68; extra == 'all'
47
- Requires-Dist: robotcode-repl==2.9.0-dev.68; extra == 'all'
48
- Requires-Dist: robotcode-runner==2.9.0-dev.68; extra == 'all'
43
+ Requires-Dist: robotcode-analyze==2.9.0-dev.79; extra == 'all'
44
+ Requires-Dist: robotcode-debugger==2.9.0-dev.79; extra == 'all'
45
+ Requires-Dist: robotcode-language-server==2.9.0-dev.79; extra == 'all'
46
+ Requires-Dist: robotcode-repl-server==2.9.0-dev.79; extra == 'all'
47
+ Requires-Dist: robotcode-repl==2.9.0-dev.79; extra == 'all'
48
+ Requires-Dist: robotcode-runner==2.9.0-dev.79; extra == 'all'
49
49
  Requires-Dist: robotframework-robocop>=6.0.0; extra == 'all'
50
50
  Provides-Extra: analyze
51
- Requires-Dist: robotcode-analyze==2.9.0-dev.68; extra == 'analyze'
51
+ Requires-Dist: robotcode-analyze==2.9.0-dev.79; extra == 'analyze'
52
52
  Provides-Extra: debugger
53
- Requires-Dist: robotcode-debugger==2.9.0-dev.68; extra == 'debugger'
53
+ Requires-Dist: robotcode-debugger==2.9.0-dev.79; extra == 'debugger'
54
54
  Provides-Extra: languageserver
55
- Requires-Dist: robotcode-language-server==2.9.0-dev.68; extra == 'languageserver'
55
+ Requires-Dist: robotcode-language-server==2.9.0-dev.79; extra == 'languageserver'
56
56
  Provides-Extra: lint
57
57
  Requires-Dist: robotframework-robocop>=2.0.0; extra == 'lint'
58
58
  Provides-Extra: repl
59
- Requires-Dist: robotcode-repl==2.9.0-dev.68; extra == 'repl'
59
+ Requires-Dist: robotcode-repl==2.9.0-dev.79; extra == 'repl'
60
60
  Provides-Extra: replserver
61
- Requires-Dist: robotcode-repl-server==2.9.0-dev.68; extra == 'replserver'
61
+ Requires-Dist: robotcode-repl-server==2.9.0-dev.79; extra == 'replserver'
62
62
  Provides-Extra: rest
63
63
  Requires-Dist: docutils; extra == 'rest'
64
64
  Provides-Extra: runner
65
- Requires-Dist: robotcode-runner==2.9.0-dev.68; extra == 'runner'
65
+ Requires-Dist: robotcode-runner==2.9.0-dev.79; extra == 'runner'
66
66
  Provides-Extra: yaml
67
67
  Requires-Dist: pyyaml>=5.4; extra == 'yaml'
68
68
  Description-Content-Type: text/markdown
@@ -49,26 +49,26 @@ classifiers = [
49
49
  "Framework :: Robot Framework :: Tool",
50
50
  ]
51
51
  requires-python = ">=3.10"
52
- dependencies = ["robotcode-core==2.9.0-dev.68", "robotcode-plugin==2.9.0-dev.68", "robotcode-robot==2.9.0-dev.68"]
52
+ dependencies = ["robotcode-core==2.9.0-dev.79", "robotcode-plugin==2.9.0-dev.79", "robotcode-robot==2.9.0-dev.79"]
53
53
  dynamic = ["version"]
54
54
 
55
55
  [project.optional-dependencies]
56
- debugger = ["robotcode-debugger==2.9.0-dev.68"]
57
- languageserver = ["robotcode-language-server==2.9.0-dev.68"]
58
- runner = ["robotcode-runner==2.9.0-dev.68"]
59
- analyze = ["robotcode-analyze==2.9.0-dev.68"]
56
+ debugger = ["robotcode-debugger==2.9.0-dev.79"]
57
+ languageserver = ["robotcode-language-server==2.9.0-dev.79"]
58
+ runner = ["robotcode-runner==2.9.0-dev.79"]
59
+ analyze = ["robotcode-analyze==2.9.0-dev.79"]
60
60
  yaml = ["PyYAML>=5.4"]
61
61
  lint = ["robotframework-robocop>=2.0.0"]
62
62
  rest = ["docutils"]
63
- repl = ["robotcode-repl==2.9.0-dev.68"]
64
- replserver = ["robotcode-repl-server==2.9.0-dev.68"]
63
+ repl = ["robotcode-repl==2.9.0-dev.79"]
64
+ replserver = ["robotcode-repl-server==2.9.0-dev.79"]
65
65
  all = [
66
- "robotcode-debugger==2.9.0-dev.68",
67
- "robotcode-language-server==2.9.0-dev.68",
68
- "robotcode-runner==2.9.0-dev.68",
69
- "robotcode-analyze==2.9.0-dev.68",
70
- "robotcode-repl==2.9.0-dev.68",
71
- "robotcode-repl-server==2.9.0-dev.68",
66
+ "robotcode-debugger==2.9.0-dev.79",
67
+ "robotcode-language-server==2.9.0-dev.79",
68
+ "robotcode-runner==2.9.0-dev.79",
69
+ "robotcode-analyze==2.9.0-dev.79",
70
+ "robotcode-repl==2.9.0-dev.79",
71
+ "robotcode-repl-server==2.9.0-dev.79",
72
72
  "PyYAML>=5.4",
73
73
  "robotframework-robocop>=6.0.0",
74
74
  "docutils"
@@ -0,0 +1 @@
1
+ __version__ = "2.9.0-dev.79"
@@ -1 +0,0 @@
1
- __version__ = "2.9.0-dev.68"