|
21 | 21 | from databricks.labs.ucx.hive_metastore.federation import HiveMetastoreFederation, HiveMetastoreFederationEnabler |
22 | 22 | from databricks.labs.ucx.hive_metastore.table_migration_status import TableMigrationIndex |
23 | 23 | from databricks.labs.ucx.progress.install import ProgressTrackingInstallation |
24 | | -from databricks.labs.ucx.source_code.base import CurrentSessionState |
25 | 24 | from databricks.labs.ucx.source_code.linters.context import LinterContext |
26 | 25 | from databricks.labs.ucx.source_code.linters.folders import LocalCodeLinter |
27 | 26 | from databricks.labs.ucx.source_code.notebooks.loaders import NotebookLoader |
@@ -213,24 +212,22 @@ class LocalCheckoutContext(WorkspaceContext): |
213 | 212 | """Local context extends Workspace context to provide extra properties |
214 | 213 | for running local operations.""" |
215 | 214 |
|
216 | | - def linter_context_factory(self, session_state: CurrentSessionState | None = None): |
| 215 | + @cached_property |
| 216 | + def _migration_index(self) -> TableMigrationIndex: |
217 | 217 | try: |
218 | 218 | index = self.tables_migrator.index() |
219 | 219 | except NotFound: |
220 | 220 | logger.warning("Metastore does not seem to exist yet. Skipping loading of migration status.") |
221 | 221 | index = TableMigrationIndex([]) |
222 | | - if session_state is None: |
223 | | - session_state = CurrentSessionState() |
224 | | - return LinterContext(index, session_state) |
| 222 | + return index |
225 | 223 |
|
226 | 224 | @cached_property |
227 | 225 | def local_code_linter(self) -> LocalCodeLinter: |
228 | | - session_state = CurrentSessionState() |
229 | 226 | return LocalCodeLinter( |
230 | 227 | self.notebook_loader, |
231 | 228 | self.file_loader, |
232 | 229 | self.folder_loader, |
233 | 230 | self.path_lookup, |
234 | 231 | self.dependency_resolver, |
235 | | - lambda: self.linter_context_factory(session_state), |
| 232 | + lambda: LinterContext(self._migration_index), |
236 | 233 | ) |
0 commit comments