Skip to content

v1.0.0

Compare
Choose a tag to compare
@tomasfarias tomasfarias released this 12 Mar 17:28
· 30 commits to master since this release
v1.0.0

v1.0.0 of airflow-dbt-python is finally here 🎉

I feel very confident in the API we have established, and even if there is still work to do, I want to start building on this API instead of dealing with old inconsistencies.

Due to the size of this release, I encourage folks who haven't had a chance to test the pre-release versions available for at least 3 weeks, to do so now before upgrading. As always, we thank any bug reports which can be opened as a GitHub issue.

Changes

  • airflow-dbt-python operators no longer handle temporary directories.
    • airflow-dbt-python operators should be about defining what to execute, not how.
    • airflow-dbt-python hooks are the ones that should worry about setting up directories.
    • This significantly reduces the complexity in operators.
  • Refactored the dbt remote interface (previously dbt backends).
    • The interface has been simplified to two methods: upload and download.
    • Now utilizes a more specific URL class for all URL-like arguments.
    • All dbt remotes are now hooks too, which means they can use Airflow Connections.
  • Implemented a new DbtRemoteGitHook to utilize git repositories as remotes.
  • tar file is a new supported archive format for dbt projects.
  • Moved dbt configurations to the utilities module.
    • dbt configurations are a wrapper to dbt. They exist purely because dbt doesn't have a formalized API outside the CLI.
    • Once dbt as a library moves along (see dbt-core as a library dbt-labs/dbt-core#6356), we may drop all of these configurations.
  • Much better understanding of how dbt logs things (as in, we now don't log things multiple times).
  • Support for Python 3.11.
  • Updated documentation.
  • Update CI versions.
  • Clear up test state to allow tests to be run more than once.

Breaking changes

  • Dropped support for Airflow major version 1.
    • It required too much work to maintain, and AWS MWAA has offered Airflow >= 2.x for a while now.
  • New hook and operator interfaces are incompatible with <=1.0.0 versions.
    • Developers extending airflow-dbt-python should be aware of these changes and review the documentation.