@@ -88,32 +88,54 @@ async def format_robot_tidy(
8888
8989 from difflib import SequenceMatcher
9090
91- from robotidy .api import RobotidyAPI
9291 from robotidy .version import __version__
9392
9493 try :
94+ robotidy_version = create_version_from_str (__version__ )
95+
9596 model = await self .parent .documents_cache .get_model (document , False )
9697 if model is None :
9798 return None
9899
99- robot_tidy = RobotidyAPI (document .uri .to_path (), None )
100+ if robotidy_version >= (3 , 0 ):
101+ from robotidy .api import get_robotidy
102+ from robotidy .disablers import RegisterDisablers
100103
101- if range is not None :
102- robot_tidy .formatting_config .start_line = range .start .line
103- robot_tidy .formatting_config .end_line = range .end .line + 1
104+ robot_tidy = get_robotidy (document .uri .to_path (), None )
104105
105- if create_version_from_str (__version__ ) >= (2 , 2 ):
106- from robotidy .disablers import RegisterDisablers
106+ if range is not None :
107+ robot_tidy .config .formatting .start_line = range .start .line
108+ robot_tidy .config .formatting .end_line = range .end .line + 1
107109
108110 disabler_finder = RegisterDisablers (
109- robot_tidy .formatting_config . start_line , robot_tidy .formatting_config .end_line
111+ robot_tidy .config . formatting . start_line , robot_tidy .config . formatting .end_line
110112 )
111113 disabler_finder .visit (model )
112114 if disabler_finder .file_disabled :
113115 return None
114116 changed , _ , new = robot_tidy .transform (model , disabler_finder .disablers )
117+
115118 else :
116- changed , _ , new = robot_tidy .transform (model )
119+ from robotidy .api import RobotidyAPI
120+
121+ robot_tidy = RobotidyAPI (document .uri .to_path (), None )
122+
123+ if range is not None :
124+ robot_tidy .formatting_config .start_line = range .start .line
125+ robot_tidy .formatting_config .end_line = range .end .line + 1
126+
127+ if robotidy_version >= (2 , 2 ):
128+ from robotidy .disablers import RegisterDisablers
129+
130+ disabler_finder = RegisterDisablers (
131+ robot_tidy .formatting_config .start_line , robot_tidy .formatting_config .end_line
132+ )
133+ disabler_finder .visit (model )
134+ if disabler_finder .file_disabled :
135+ return None
136+ changed , _ , new = robot_tidy .transform (model , disabler_finder .disablers )
137+ else :
138+ changed , _ , new = robot_tidy .transform (model )
117139
118140 if not changed :
119141 return None
0 commit comments