robotcode-language-server 0.76.2__tar.gz → 0.77.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 (73) hide show
  1. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/PKG-INFO +3 -3
  2. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/pyproject.toml +2 -2
  3. robotcode_language_server-0.77.0/src/robotcode/language_server/__version__.py +1 -0
  4. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/diagnostics.py +10 -9
  5. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/semantic_tokens.py +14 -10
  6. robotcode_language_server-0.76.2/src/robotcode/language_server/__version__.py +0 -1
  7. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/.gitignore +0 -0
  8. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/LICENSE.txt +0 -0
  9. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/README.md +0 -0
  10. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/__init__.py +0 -0
  11. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/cli.py +0 -0
  12. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/__init__.py +0 -0
  13. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/decorators.py +0 -0
  14. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/__init__.py +0 -0
  15. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/code_action.py +0 -0
  16. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/code_lens.py +0 -0
  17. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/commands.py +0 -0
  18. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/completion.py +0 -0
  19. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/declaration.py +0 -0
  20. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/definition.py +0 -0
  21. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/document_highlight.py +0 -0
  22. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/document_symbols.py +0 -0
  23. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/documents.py +0 -0
  24. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/folding_range.py +0 -0
  25. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/formatting.py +0 -0
  26. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/hover.py +0 -0
  27. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/implementation.py +0 -0
  28. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/inlay_hint.py +0 -0
  29. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/inline_value.py +0 -0
  30. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/linked_editing_ranges.py +0 -0
  31. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/protocol_part.py +0 -0
  32. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/references.py +0 -0
  33. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/rename.py +0 -0
  34. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/selection_range.py +0 -0
  35. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/semantic_tokens.py +0 -0
  36. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/signature_help.py +0 -0
  37. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/window.py +0 -0
  38. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/parts/workspace.py +0 -0
  39. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/protocol.py +0 -0
  40. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/common/server.py +0 -0
  41. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/hooks.py +0 -0
  42. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/py.typed +0 -0
  43. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/__init__.py +0 -0
  44. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/configuration.py +0 -0
  45. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/__init__.py +0 -0
  46. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/code_action_documentation.py +0 -0
  47. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/code_action_helper_mixin.py +0 -0
  48. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/code_action_quick_fixes.py +0 -0
  49. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/code_action_refactor.py +0 -0
  50. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/code_lens.py +0 -0
  51. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/completion.py +0 -0
  52. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/debugging_utils.py +0 -0
  53. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/diagnostics.py +0 -0
  54. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/document_highlight.py +0 -0
  55. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/document_symbols.py +0 -0
  56. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/documents_cache.py +0 -0
  57. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/folding_range.py +0 -0
  58. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/formatting.py +0 -0
  59. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/goto.py +0 -0
  60. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/hover.py +0 -0
  61. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/http_server.py +0 -0
  62. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/inlay_hint.py +0 -0
  63. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/inline_value.py +0 -0
  64. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/keywords_treeview.py +0 -0
  65. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/protocol_part.py +0 -0
  66. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/references.py +0 -0
  67. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/rename.py +0 -0
  68. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/robocop_diagnostics.py +0 -0
  69. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/robot_workspace.py +0 -0
  70. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/selection_range.py +0 -0
  71. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/parts/signature_help.py +0 -0
  72. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/protocol.py +0 -0
  73. {robotcode_language_server-0.76.2 → robotcode_language_server-0.77.0}/src/robotcode/language_server/robotframework/server.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: robotcode-language-server
3
- Version: 0.76.2
3
+ Version: 0.77.0
4
4
  Summary: RobotCode Language Server for Robot Framework
5
5
  Project-URL: Homepage, https://robotcode.io
6
6
  Project-URL: Donate, https://github.com/sponsors/d-biehl
@@ -25,8 +25,8 @@ Classifier: Programming Language :: Python :: Implementation :: PyPy
25
25
  Classifier: Topic :: Utilities
26
26
  Classifier: Typing :: Typed
27
27
  Requires-Python: >=3.8
28
- Requires-Dist: robotcode-jsonrpc2==0.76.2
29
- Requires-Dist: robotcode==0.76.2
28
+ Requires-Dist: robotcode-jsonrpc2==0.77.0
29
+ Requires-Dist: robotcode==0.77.0
30
30
  Requires-Dist: robotframework>=4.1.0
31
31
  Description-Content-Type: text/markdown
32
32
 
@@ -27,8 +27,8 @@ classifiers = [
27
27
  ]
28
28
  dependencies = [
29
29
  "robotframework>=4.1.0",
30
- "robotcode-jsonrpc2==0.76.2",
31
- "robotcode==0.76.2",
30
+ "robotcode-jsonrpc2==0.77.0",
31
+ "robotcode==0.77.0",
32
32
  ]
33
33
  dynamic = ["version"]
34
34
 
@@ -109,7 +109,8 @@ class DiagnosticsProtocolPart(LanguageServerProtocolPart):
109
109
  self.parent.documents.on_document_cache_invalidated.add(self._on_document_cache_invalidated)
110
110
  self.parent.documents.did_close.add(self.on_did_close)
111
111
 
112
- self.in_get_workspace_diagnostics = Event()
112
+ self.in_get_workspace_diagnostics_event = Event()
113
+ self.workspace_diagnostics_started_event = Event()
113
114
 
114
115
  self.client_supports_pull = False
115
116
 
@@ -345,10 +346,12 @@ class DiagnosticsProtocolPart(LanguageServerProtocolPart):
345
346
  check_current_task_canceled()
346
347
 
347
348
  self.on_workspace_diagnostics_start(self)
349
+ self.in_get_workspace_diagnostics_event.clear()
350
+ self.workspace_diagnostics_started_event.set()
351
+ done_something = False
348
352
 
349
353
  try:
350
354
  self._break_diagnostics_loop_event.clear()
351
- self.in_get_workspace_diagnostics.clear()
352
355
 
353
356
  documents = sorted(
354
357
  [doc for doc in self.parent.documents.documents if self._doc_need_update(doc)],
@@ -361,8 +364,6 @@ class DiagnosticsProtocolPart(LanguageServerProtocolPart):
361
364
 
362
365
  self._logger.debug(lambda: f"start collecting workspace diagnostics for {len(documents)} documents")
363
366
 
364
- done_something = False
365
-
366
367
  self.on_workspace_diagnostics_analyze(self)
367
368
 
368
369
  if self._break_diagnostics_loop_event.is_set():
@@ -428,8 +429,6 @@ class DiagnosticsProtocolPart(LanguageServerProtocolPart):
428
429
  self.on_workspace_diagnostics_break(self)
429
430
  continue
430
431
 
431
- self.in_get_workspace_diagnostics.set()
432
-
433
432
  self.on_workspace_diagnostics_collect(self)
434
433
 
435
434
  documents_to_collect = [
@@ -506,9 +505,6 @@ class DiagnosticsProtocolPart(LanguageServerProtocolPart):
506
505
  with self._current_diagnostics_task_lock:
507
506
  self._current_diagnostics_task = None
508
507
 
509
- if not done_something:
510
- check_current_task_canceled(1)
511
-
512
508
  self._logger.debug(
513
509
  lambda: f"collecting workspace diagnostics for {len(documents_to_collect)} "
514
510
  f"documents takes {time.monotonic() - start}s"
@@ -519,8 +515,13 @@ class DiagnosticsProtocolPart(LanguageServerProtocolPart):
519
515
  except BaseException as e:
520
516
  self._logger.exception(e)
521
517
  finally:
518
+ self.workspace_diagnostics_started_event.clear()
519
+ self.in_get_workspace_diagnostics_event.set()
522
520
  self.on_workspace_diagnostics_end(self)
523
521
 
522
+ if not done_something:
523
+ check_current_task_canceled(1)
524
+
524
525
  def reset_document_diagnostics_data(self, document: TextDocument) -> None:
525
526
  with self.get_diagnostics_data(document) as data:
526
527
  data.force = False
@@ -109,6 +109,7 @@ class RobotSemTokenTypes(Enum):
109
109
  FOR_SEPARATOR = "forSeparator"
110
110
  VARIABLE_BEGIN = "variableBegin"
111
111
  VARIABLE_END = "variableEnd"
112
+ VARIABLE_EXPRESSION = "variableExpression"
112
113
  ESCAPE = "escape"
113
114
  NAMESPACE = "namespace"
114
115
  ERROR = "error"
@@ -355,27 +356,30 @@ class RobotSemanticTokenProtocolPart(RobotLanguageServerProtocolPart):
355
356
  length = token.end_col_offset - token.col_offset
356
357
 
357
358
  last_index = token.value.rfind("}")
359
+
360
+ is_expr = token.value[1:2] == "{" and token.value[last_index - 1 : last_index] == "}"
361
+
358
362
  if last_index >= 0:
359
363
  yield SemTokenInfo(
360
364
  token.lineno,
361
365
  col_offset,
362
- 2,
366
+ 3 if is_expr else 2,
363
367
  RobotSemTokenTypes.VARIABLE_BEGIN,
364
368
  sem_mod,
365
369
  )
366
370
 
367
- yield SemTokenInfo.from_token(
368
- token,
369
- sem_type,
370
- sem_mod,
371
- col_offset + 2,
372
- last_index - 2,
373
- )
371
+ # yield SemTokenInfo.from_token(
372
+ # token,
373
+ # RobotSemTokenTypes.VARIABLE_EXPRESSION if is_expr else sem_type,
374
+ # sem_mod,
375
+ # col_offset + (3 if is_expr else 2),
376
+ # last_index - (4 if is_expr else 2),
377
+ # )
374
378
 
375
379
  yield SemTokenInfo(
376
380
  token.lineno,
377
- col_offset + last_index,
378
- 1,
381
+ col_offset + ((last_index - 1) if is_expr else last_index),
382
+ 2 if is_expr else 1,
379
383
  RobotSemTokenTypes.VARIABLE_END,
380
384
  sem_mod,
381
385
  )
@@ -1 +0,0 @@
1
- __version__ = "0.76.2"