What's the use case?
Summary
dagster-dbt currently surfaces some common setup and configuration issues as low-level Python exceptions, which can make troubleshooting difficult.
Examples include:
ModuleNotFoundError: No module named 'dbt.adapters'
AttributeError: 'str' object has no attribute 'joinpath'
- Invalid project or profile path configuration
- Missing dbt adapter packages
Ideas of implementation
Proposed Improvement
Provide more actionable error messages for common dependency and configuration failures by validating inputs earlier and adding context to raised exceptions.
For example, instead of:
ModuleNotFoundError: No module named 'dbt.adapters'
display:
dbt adapter package could not be found.
Please install the appropriate dbt adapter (for example: dbt-postgres, dbt-bigquery, or dbt-snowflake).
Original error:
ModuleNotFoundError: No module named 'dbt.adapters'
Similarly, invalid project/profile paths could be validated before execution and return a clearer explanation of the expected input.
Benefits
Easier troubleshooting for new users
Faster identification of missing dependencies
More user-friendly configuration errors
Reduced support and debugging effort
This would improve the developer experience without changing existing functionality.
Additional information
No response
Message from the maintainers
Impacted by this issue? Give it a 👍! We factor engagement into prioritization.
What's the use case?
Summary
dagster-dbtcurrently surfaces some common setup and configuration issues as low-level Python exceptions, which can make troubleshooting difficult.Examples include:
ModuleNotFoundError: No module named 'dbt.adapters'AttributeError: 'str' object has no attribute 'joinpath'Ideas of implementation
Proposed Improvement
Provide more actionable error messages for common dependency and configuration failures by validating inputs earlier and adding context to raised exceptions.
For example, instead of:
Similarly, invalid project/profile paths could be validated before execution and return a clearer explanation of the expected input.
Benefits
Easier troubleshooting for new users
Faster identification of missing dependencies
More user-friendly configuration errors
Reduced support and debugging effort
This would improve the developer experience without changing existing functionality.
Additional information
No response
Message from the maintainers
Impacted by this issue? Give it a 👍! We factor engagement into prioritization.