1313 PythonLinter ,
1414)
1515from databricks .labs .ucx .source_code .linters .python_infer import InferredValue
16- from databricks .labs .ucx .source_code .queries import FromTable
16+ from databricks .labs .ucx .source_code .queries import FromTableSqlLinter
1717from databricks .labs .ucx .source_code .linters .python_ast import Tree , TreeHelper
1818
1919
@@ -37,12 +37,12 @@ def matches(self, node: NodeNG):
3737
3838 @abstractmethod
3939 def lint (
40- self , from_table : FromTable , index : MigrationIndex , session_state : CurrentSessionState , node : Call
40+ self , from_table : FromTableSqlLinter , index : MigrationIndex , session_state : CurrentSessionState , node : Call
4141 ) -> Iterator [Advice ]:
4242 """raises Advices by linting the code"""
4343
4444 @abstractmethod
45- def apply (self , from_table : FromTable , index : MigrationIndex , node : Call ) -> None :
45+ def apply (self , from_table : FromTableSqlLinter , index : MigrationIndex , node : Call ) -> None :
4646 """applies recommendations"""
4747
4848 def _get_table_arg (self , node : Call ):
@@ -78,7 +78,7 @@ def _check_call_context(self, node: Call) -> bool:
7878class QueryMatcher (Matcher ):
7979
8080 def lint (
81- self , from_table : FromTable , index : MigrationIndex , session_state : CurrentSessionState , node : Call
81+ self , from_table : FromTableSqlLinter , index : MigrationIndex , session_state : CurrentSessionState , node : Call
8282 ) -> Iterator [Advice ]:
8383 table_arg = self ._get_table_arg (node )
8484 if table_arg :
@@ -93,7 +93,7 @@ def lint(
9393 )
9494
9595 @classmethod
96- def _lint_table_arg (cls , from_table : FromTable , call_node : NodeNG , inferred : InferredValue ):
96+ def _lint_table_arg (cls , from_table : FromTableSqlLinter , call_node : NodeNG , inferred : InferredValue ):
9797 if inferred .is_inferred ():
9898 for advice in from_table .lint (inferred .as_string ()):
9999 yield advice .replace_from_node (call_node )
@@ -104,7 +104,7 @@ def _lint_table_arg(cls, from_table: FromTable, call_node: NodeNG, inferred: Inf
104104 node = call_node ,
105105 )
106106
107- def apply (self , from_table : FromTable , index : MigrationIndex , node : Call ) -> None :
107+ def apply (self , from_table : FromTableSqlLinter , index : MigrationIndex , node : Call ) -> None :
108108 table_arg = self ._get_table_arg (node )
109109 assert isinstance (table_arg , Const )
110110 new_query = from_table .apply (table_arg .value )
@@ -115,7 +115,7 @@ def apply(self, from_table: FromTable, index: MigrationIndex, node: Call) -> Non
115115class TableNameMatcher (Matcher ):
116116
117117 def lint (
118- self , from_table : FromTable , index : MigrationIndex , session_state : CurrentSessionState , node : Call
118+ self , from_table : FromTableSqlLinter , index : MigrationIndex , session_state : CurrentSessionState , node : Call
119119 ) -> Iterator [Advice ]:
120120 table_arg = self ._get_table_arg (node )
121121 table_name = table_arg .as_string ().strip ("'" ).strip ('"' )
@@ -137,7 +137,7 @@ def lint(
137137 node = node ,
138138 )
139139
140- def apply (self , from_table : FromTable , index : MigrationIndex , node : Call ) -> None :
140+ def apply (self , from_table : FromTableSqlLinter , index : MigrationIndex , node : Call ) -> None :
141141 table_arg = self ._get_table_arg (node )
142142 assert isinstance (table_arg , Const )
143143 dst = self ._find_dest (index , table_arg .value , from_table .schema )
@@ -162,7 +162,7 @@ def matches(self, node: NodeNG):
162162 )
163163
164164 def lint (
165- self , from_table : FromTable , index : MigrationIndex , session_state : CurrentSessionState , node : Call
165+ self , from_table : FromTableSqlLinter , index : MigrationIndex , session_state : CurrentSessionState , node : Call
166166 ) -> Iterator [Advice ]:
167167 assert isinstance (node .func , Attribute ) # always true, avoids a pylint warning
168168 yield Advisory .from_node (
@@ -171,7 +171,7 @@ def lint(
171171 node = node ,
172172 )
173173
174- def apply (self , from_table : FromTable , index : MigrationIndex , node : Call ) -> None :
174+ def apply (self , from_table : FromTableSqlLinter , index : MigrationIndex , node : Call ) -> None :
175175 # No transformations to apply
176176 return
177177
@@ -200,7 +200,7 @@ def matches(self, node: NodeNG):
200200 )
201201
202202 def lint (
203- self , from_table : FromTable , index : MigrationIndex , session_state : CurrentSessionState , node : NodeNG
203+ self , from_table : FromTableSqlLinter , index : MigrationIndex , session_state : CurrentSessionState , node : NodeNG
204204 ) -> Iterator [Advice ]:
205205 table_arg = self ._get_table_arg (node )
206206 if not isinstance (table_arg , Const ):
@@ -223,7 +223,7 @@ def lint(
223223 node = node ,
224224 )
225225
226- def apply (self , from_table : FromTable , index : MigrationIndex , node : Call ) -> None :
226+ def apply (self , from_table : FromTableSqlLinter , index : MigrationIndex , node : Call ) -> None :
227227 # No transformations to apply
228228 return
229229
@@ -327,11 +327,11 @@ def matchers(self):
327327 return self ._matchers
328328
329329
330- class SparkSql (PythonLinter , Fixer ):
330+ class SparkSqlPyLinter (PythonLinter , Fixer ):
331331
332332 _spark_matchers = SparkMatchers ()
333333
334- def __init__ (self , from_table : FromTable , index : MigrationIndex , session_state ):
334+ def __init__ (self , from_table : FromTableSqlLinter , index : MigrationIndex , session_state ):
335335 self ._from_table = from_table
336336 self ._index = index
337337 self ._session_state = session_state
0 commit comments