@@ -883,6 +883,35 @@ async def visit_TemplateArguments(self, node: ast.AST) -> None: # noqa: N802
883
883
884
884
await self .generic_visit (node )
885
885
886
+ async def visit_ForceTags (self , node : ast .AST ) -> None : # noqa: N802
887
+ from robot .parsing .lexer .tokens import Token as RobotToken
888
+ from robot .parsing .model .statements import ForceTags
889
+
890
+ if get_robot_version () >= (6 , 0 ):
891
+ tag = cast (ForceTags , node ).get_token (RobotToken .FORCE_TAGS )
892
+ if tag .value .upper () == "FORCE TAGS" :
893
+ self .append_diagnostics (
894
+ range = range_from_node_or_token (node , tag ),
895
+ message = "`Force Tags` is deprecated in favour of new `Test Tags` setting." ,
896
+ severity = DiagnosticSeverity .INFORMATION ,
897
+ tags = [DiagnosticTag .DEPRECATED ],
898
+ code = "DeprecatedHyphenTag" ,
899
+ )
900
+
901
+ async def visit_DefaultTags (self , node : ast .AST ) -> None : # noqa: N802
902
+ from robot .parsing .lexer .tokens import Token as RobotToken
903
+ from robot .parsing .model .statements import ForceTags
904
+
905
+ if get_robot_version () >= (6 , 0 ):
906
+ tag = cast (ForceTags , node ).get_token (RobotToken .DEFAULT_TAGS )
907
+ self .append_diagnostics (
908
+ range = range_from_node_or_token (node , tag ),
909
+ message = "`Force Tags` is deprecated in favour of new `Test Tags` setting." ,
910
+ severity = DiagnosticSeverity .INFORMATION ,
911
+ tags = [DiagnosticTag .DEPRECATED ],
912
+ code = "DeprecatedHyphenTag" ,
913
+ )
914
+
886
915
async def visit_Tags (self , node : ast .AST ) -> None : # noqa: N802
887
916
from robot .parsing .lexer .tokens import Token as RobotToken
888
917
from robot .parsing .model .statements import Tags
@@ -895,7 +924,7 @@ async def visit_Tags(self, node: ast.AST) -> None: # noqa: N802
895
924
self .append_diagnostics (
896
925
range = range_from_node_or_token (node , tag ),
897
926
message = f"Settings tags starting with a hyphen using the '[Tags]' setting "
898
- f"is deprecated. In Robot Framework 5.2 this syntax will be used "
927
+ f"is deprecated. In Robot Framework 7.0 this syntax will be used "
899
928
f"for removing tags. Escape '{ tag .value } ' like '\\ { tag .value } ' to use the "
900
929
f"literal value and to avoid this warning." ,
901
930
severity = DiagnosticSeverity .WARNING ,
0 commit comments