robotcode-debugger 0.100.2__tar.gz → 0.102.0__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 (22) hide show
  1. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/PKG-INFO +3 -3
  2. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/pyproject.toml +2 -2
  3. robotcode_debugger-0.102.0/src/robotcode/debugger/__version__.py +1 -0
  4. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/debugger.py +22 -6
  5. robotcode_debugger-0.100.2/src/robotcode/debugger/__version__.py +0 -1
  6. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/.gitignore +0 -0
  7. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/LICENSE.txt +0 -0
  8. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/README.md +0 -0
  9. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/__init__.py +0 -0
  10. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/cli.py +0 -0
  11. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/dap_types.py +0 -0
  12. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/hooks.py +0 -0
  13. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/launcher/__init__.py +0 -0
  14. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/launcher/cli.py +0 -0
  15. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/launcher/client.py +0 -0
  16. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/launcher/run.py +0 -0
  17. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/launcher/server.py +0 -0
  18. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/listeners.py +0 -0
  19. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/protocol.py +0 -0
  20. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/py.typed +0 -0
  21. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/run.py +0 -0
  22. {robotcode_debugger-0.100.2 → robotcode_debugger-0.102.0}/src/robotcode/debugger/server.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: robotcode-debugger
3
- Version: 0.100.2
3
+ Version: 0.102.0
4
4
  Summary: RobotCode Debugger for Robot Framework
5
5
  Project-URL: Homepage, https://robotcode.io
6
6
  Project-URL: Donate, https://opencollective.com/robotcode
@@ -24,8 +24,8 @@ Classifier: Programming Language :: Python :: Implementation :: PyPy
24
24
  Classifier: Topic :: Utilities
25
25
  Classifier: Typing :: Typed
26
26
  Requires-Python: >=3.8
27
- Requires-Dist: robotcode-jsonrpc2==0.100.2
28
- Requires-Dist: robotcode-runner==0.100.2
27
+ Requires-Dist: robotcode-jsonrpc2==0.102.0
28
+ Requires-Dist: robotcode-runner==0.102.0
29
29
  Requires-Dist: robotframework>=4.1.0
30
30
  Provides-Extra: debugpy
31
31
  Requires-Dist: debugpy; extra == 'debugpy'
@@ -28,8 +28,8 @@ classifiers = [
28
28
  dynamic = ["version"]
29
29
  dependencies = [
30
30
  "robotframework>=4.1.0",
31
- "robotcode-jsonrpc2==0.100.2",
32
- "robotcode-runner==0.100.2",
31
+ "robotcode-jsonrpc2==0.102.0",
32
+ "robotcode-runner==0.102.0",
33
33
  ]
34
34
 
35
35
  [project.optional-dependencies]
@@ -0,0 +1 @@
1
+ __version__ = "0.102.0"
@@ -33,7 +33,6 @@ from robot.api.parsing import get_model
33
33
  from robot.errors import VariableError
34
34
  from robot.output import LOGGER
35
35
  from robot.running import EXECUTION_CONTEXTS, Keyword, TestCase, TestSuite
36
- from robot.utils import NormalizedDict
37
36
  from robot.variables import evaluate_expression
38
37
 
39
38
  from robotcode.core.event import event
@@ -96,6 +95,19 @@ class Undefined:
96
95
  UNDEFINED = Undefined()
97
96
 
98
97
 
98
+ class DebugRepr(reprlib.Repr):
99
+ def __init__(self) -> None:
100
+ super().__init__()
101
+ self.maxtuple = 50
102
+ self.maxlist = 50
103
+ self.maxarray = 50
104
+ self.maxdict = 500
105
+ self.maxset = 50
106
+ self.maxfrozenset = 50
107
+ self.maxdeque = 50
108
+ self.maxstring = 500
109
+
110
+
99
111
  class EvaluateResult(NamedTuple):
100
112
  result: str
101
113
  type: Optional[str] = None
@@ -1375,17 +1387,20 @@ class Debugger:
1375
1387
  self._variables_object_cache.append(o)
1376
1388
  return id(o)
1377
1389
 
1390
+ debug_repr = DebugRepr()
1391
+
1378
1392
  def _create_variable(self, name: str, value: Any) -> Variable:
1379
1393
  if isinstance(value, Mapping):
1380
1394
  v_id = self._new_cache_id()
1381
1395
  self._variables_cache[v_id] = value
1382
1396
  return Variable(
1383
1397
  name=name,
1384
- value=reprlib.repr(value),
1398
+ value=self.debug_repr.repr(value),
1385
1399
  type=repr(type(value)),
1386
1400
  variables_reference=v_id,
1387
1401
  named_variables=len(value) + 1,
1388
1402
  indexed_variables=0,
1403
+ presentation_hint=VariablePresentationHint(kind="data"),
1389
1404
  )
1390
1405
 
1391
1406
  if isinstance(value, Sequence) and not isinstance(value, str):
@@ -1393,14 +1408,15 @@ class Debugger:
1393
1408
  self._variables_cache[v_id] = value
1394
1409
  return Variable(
1395
1410
  name=name,
1396
- value=reprlib.repr(value),
1411
+ value=self.debug_repr.repr(value),
1397
1412
  type=repr(type(value)),
1398
1413
  variables_reference=v_id,
1399
1414
  named_variables=1,
1400
1415
  indexed_variables=len(value),
1416
+ presentation_hint=VariablePresentationHint(kind="data"),
1401
1417
  )
1402
1418
 
1403
- return Variable(name=name, value=repr(value), type=repr(type(value)))
1419
+ return Variable(name=name, value=self.debug_repr.repr(value), type=repr(type(value)))
1404
1420
 
1405
1421
  if get_robot_version() >= (7, 0):
1406
1422
 
@@ -1420,7 +1436,7 @@ class Debugger:
1420
1436
  count: Optional[int] = None,
1421
1437
  format: Optional[ValueFormat] = None,
1422
1438
  ) -> List[Variable]:
1423
- result: MutableMapping[str, Any] = NormalizedDict(ignore="_")
1439
+ result: MutableMapping[str, Any] = {}
1424
1440
 
1425
1441
  if filter is None:
1426
1442
  entry = next(
@@ -1520,7 +1536,7 @@ class Debugger:
1520
1536
 
1521
1537
  padding = len(str(len(value)))
1522
1538
 
1523
- for i, v in enumerate(value, start or 0):
1539
+ for i, v in enumerate(value[start:], start or 0):
1524
1540
  result[str(i)] = self._create_variable(str(i).zfill(padding), v)
1525
1541
  c += 1
1526
1542
  if count is not None and c >= count:
@@ -1 +0,0 @@
1
- __version__ = "0.100.2"