robotcode 2.5.0__tar.gz → 2.5.1__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.
@@ -2,6 +2,56 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [conventional commits](https://www.conventionalcommits.org/) for commit guidelines.
4
4
 
5
+ ## [2.5.1](https://github.com/robotcodedev/robotcode/compare/v2.5.0..v2.5.1) - 2026-04-01
6
+
7
+ ### Bug Fixes
8
+
9
+ - **analyzer:** Do not report embedded arguments as VariableNotFound in template keywords ([c34455f](https://github.com/robotcodedev/robotcode/commit/c34455fe3a2a485bf361b65a6b52b55650d674b7))
10
+
11
+ When a test case uses [Template] or Test Template with a keyword that has
12
+ embedded arguments (e.g. "The result of ${calculation} should be ${expected}"),
13
+ the embedded argument placeholders were incorrectly analyzed as unresolved
14
+ variables, producing false VariableNotFound diagnostics.
15
+
16
+ Skip variable analysis for embedded argument tokens when the keyword call
17
+ originates from a template declaration.
18
+
19
+ - **robot:** Match longest BDD prefix first for multi-word prefixes ([dad536e](https://github.com/robotcodedev/robotcode/commit/dad536ecc44e4cdad9f222b3387f276dc7e6ee0a))
20
+
21
+ French BDD prefixes like "Étant donné que", "Et que",
22
+ "Mais que" were not fully recognized because shorter prefixes (e.g.
23
+ "Et") matched before longer ones (e.g. "Et que").
24
+
25
+ Replaced manual iteration and set lookups with a regex-based approach
26
+ matching Robot Framework's own strategy: prefixes sorted by length
27
+ (longest first), compiled into a cached regex pattern. This applies to
28
+ keyword_finder, model_helper (split/strip/is_bdd), and semantic tokens.
29
+
30
+ - **robot:** Fix ${CURDIR} replacement in variable values and unify handling ([13bf36b](https://github.com/robotcodedev/robotcode/commit/13bf36b8639887ff21d807a0045f8432b81fce8c))
31
+
32
+ Extract replace_curdir_in_variable_values() helper into utils/variables.py
33
+ to deduplicate the ${CURDIR} substitution logic from _MyResourceBuilder and
34
+ NamespaceAnalyzer. Fixes incorrect double-backslash escaping in
35
+ _MyResourceBuilder that caused ${CURDIR} resolution to fail on Windows.
36
+
37
+
38
+
39
+ ### Documentation
40
+
41
+ - **news:** Add v2.5.1 release notes ([b0d9fb9](https://github.com/robotcodedev/robotcode/commit/b0d9fb94fc6dc36ae4ff9fba0f8a5c3ba3888dd0))
42
+
43
+
44
+ ### Refactor
45
+
46
+ - **diagnostics:** Add debug logging for namespace cache misses ([99e322d](https://github.com/robotcodedev/robotcode/commit/99e322d8d9be298fbb22bb46d2283fa2db26e223))
47
+
48
+ Log specific reasons when namespace cache entries are invalidated,
49
+ including source mtime changes, config fingerprint mismatches, and
50
+ dependency changes (libraries, resources, variables). Uses debug
51
+ level with context_name="cache" for targeted activation.
52
+
53
+
54
+
5
55
  ## [2.5.0](https://github.com/robotcodedev/robotcode/compare/v2.4.0..v2.5.0) - 2026-03-31
6
56
 
7
57
  ### Bug Fixes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: robotcode
3
- Version: 2.5.0
3
+ Version: 2.5.1
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
@@ -48,23 +48,23 @@ Requires-Dist: robotcode-repl-server; extra == 'all'
48
48
  Requires-Dist: robotcode-runner; extra == 'all'
49
49
  Requires-Dist: robotframework-robocop>=6.0.0; extra == 'all'
50
50
  Provides-Extra: analyze
51
- Requires-Dist: robotcode-analyze==2.5.0; extra == 'analyze'
51
+ Requires-Dist: robotcode-analyze==2.5.1; extra == 'analyze'
52
52
  Provides-Extra: colored
53
53
  Requires-Dist: rich; extra == 'colored'
54
54
  Provides-Extra: debugger
55
- Requires-Dist: robotcode-debugger==2.5.0; extra == 'debugger'
55
+ Requires-Dist: robotcode-debugger==2.5.1; extra == 'debugger'
56
56
  Provides-Extra: languageserver
57
- Requires-Dist: robotcode-language-server==2.5.0; extra == 'languageserver'
57
+ Requires-Dist: robotcode-language-server==2.5.1; extra == 'languageserver'
58
58
  Provides-Extra: lint
59
59
  Requires-Dist: robotframework-robocop>=2.0.0; extra == 'lint'
60
60
  Provides-Extra: repl
61
- Requires-Dist: robotcode-repl==2.5.0; extra == 'repl'
61
+ Requires-Dist: robotcode-repl==2.5.1; extra == 'repl'
62
62
  Provides-Extra: replserver
63
- Requires-Dist: robotcode-repl-server==2.5.0; extra == 'replserver'
63
+ Requires-Dist: robotcode-repl-server==2.5.1; extra == 'replserver'
64
64
  Provides-Extra: rest
65
65
  Requires-Dist: docutils; extra == 'rest'
66
66
  Provides-Extra: runner
67
- Requires-Dist: robotcode-runner==2.5.0; extra == 'runner'
67
+ Requires-Dist: robotcode-runner==2.5.1; extra == 'runner'
68
68
  Provides-Extra: yaml
69
69
  Requires-Dist: pyyaml>=5.4; extra == 'yaml'
70
70
  Description-Content-Type: text/markdown
@@ -52,15 +52,15 @@ dependencies = ["robotcode-core", "robotcode-plugin", "robotcode-robot"]
52
52
  dynamic = ["version"]
53
53
 
54
54
  [project.optional-dependencies]
55
- debugger = ["robotcode-debugger==2.5.0"]
56
- languageserver = ["robotcode-language-server==2.5.0"]
57
- runner = ["robotcode-runner==2.5.0"]
58
- analyze = ["robotcode-analyze==2.5.0"]
55
+ debugger = ["robotcode-debugger==2.5.1"]
56
+ languageserver = ["robotcode-language-server==2.5.1"]
57
+ runner = ["robotcode-runner==2.5.1"]
58
+ analyze = ["robotcode-analyze==2.5.1"]
59
59
  yaml = ["PyYAML>=5.4"]
60
60
  lint = ["robotframework-robocop>=2.0.0"]
61
61
  rest = ["docutils"]
62
- repl = ["robotcode-repl==2.5.0"]
63
- replserver = ["robotcode-repl-server==2.5.0"]
62
+ repl = ["robotcode-repl==2.5.1"]
63
+ replserver = ["robotcode-repl-server==2.5.1"]
64
64
  colored = ["rich"]
65
65
  all = [
66
66
  "robotcode-debugger",
@@ -145,7 +145,10 @@ build_command = "pip install hatch && hatch build"
145
145
  [tool.pytest.ini_options]
146
146
  minversion = "6.0"
147
147
  addopts = "-ra -vv -rf --ignore=bundled --ignore=.hatch"
148
- filterwarnings = "ignore:.*Using or importing the ABCs from 'collections' instead of from 'collections.abc'.*:DeprecationWarning"
148
+ filterwarnings = [
149
+ "ignore:.*Using or importing the ABCs from 'collections' instead of from 'collections.abc'.*:DeprecationWarning",
150
+ "ignore:cannot collect test class 'TestCaseDefinition'.*:pytest.PytestCollectionWarning",
151
+ ]
149
152
  testpaths = ["tests"]
150
153
  junit_suite_name = "robotcode"
151
154
  # console_output_style = "classic"
@@ -0,0 +1 @@
1
+ __version__ = "2.5.1"
@@ -1 +0,0 @@
1
- __version__ = "2.5.0"
File without changes
File without changes
File without changes
File without changes