Context
PR #5827 added dbt integration that requires dbt-artifacts-parser dependency.
Problem
The CLI commands (feast dbt import, feast dbt list) don't explicitly catch ImportError from the parser, leading to potentially confusing error messages.
Current Behavior
# In parser.py:112
raise ImportError(
"dbt-artifacts-parser is required for dbt integration.\n"
"Install with: pip install 'feast[dbt]' or pip install dbt-artifacts-parser"
)
But CLI commands catch only FileNotFoundError and ValueError:
# In dbt_import.py:131-136
except FileNotFoundError as e:
click.echo(f"{Fore.RED}Error: {e}{Style.RESET_ALL}", err=True)
raise SystemExit(1)
except ValueError as e:
click.echo(f"{Fore.RED}Error: {e}{Style.RESET_ALL}", err=True)
raise SystemExit(1)
Proposed Solution
Add ImportError to exception handling in CLI commands with helpful message.
Files to Update
sdk/python/feast/cli/dbt_import.py (lines 131-136, 343-348)
Related
Context
PR #5827 added dbt integration that requires
dbt-artifacts-parserdependency.Problem
The CLI commands (
feast dbt import,feast dbt list) don't explicitly catchImportErrorfrom the parser, leading to potentially confusing error messages.Current Behavior
But CLI commands catch only
FileNotFoundErrorandValueError:Proposed Solution
Add
ImportErrorto exception handling in CLI commands with helpful message.Files to Update
sdk/python/feast/cli/dbt_import.py(lines 131-136, 343-348)Related