From 4ba755430a9df3b6fab97e7b39e5d473f685780b Mon Sep 17 00:00:00 2001 From: Can Bekleyici Date: Fri, 27 Dec 2024 12:10:01 +0100 Subject: [PATCH 1/4] chore(deps): upgrade dbt-core to ~=1.9.0 --- dbt/adapters/clickhouse/__version__.py | 2 +- dev_requirements.txt | 6 +++--- setup.py | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dbt/adapters/clickhouse/__version__.py b/dbt/adapters/clickhouse/__version__.py index f22f38bf..bb58ec9c 100644 --- a/dbt/adapters/clickhouse/__version__.py +++ b/dbt/adapters/clickhouse/__version__.py @@ -1 +1 @@ -version = '1.8.6' +version = '1.9.0' diff --git a/dev_requirements.txt b/dev_requirements.txt index abbd0573..f48ef645 100644 --- a/dev_requirements.txt +++ b/dev_requirements.txt @@ -1,6 +1,6 @@ -dbt-core~=1.8.0 -dbt-adapters~=1.1.1 -dbt-tests-adapter==1.8.0 +dbt-core~=1.9.0 +dbt-adapters~=1.10.0 +dbt-tests-adapter==1.9.0 clickhouse-connect>=0.7.6 clickhouse-driver>=0.2.7 pytest>=7.2.0 diff --git a/setup.py b/setup.py index 43b2151e..13c57ca2 100644 --- a/setup.py +++ b/setup.py @@ -25,7 +25,7 @@ def _dbt_clickhouse_version(): package_version = _dbt_clickhouse_version() description = '''The Clickhouse plugin for dbt (data build tool)''' -dbt_version = '1.8.0' +dbt_version = '1.9.0' dbt_minor = '.'.join(dbt_version.split('.')[0:2]) if not package_version.startswith(dbt_minor): From e581078af7e0368aed937457cd9384344e841ca8 Mon Sep 17 00:00:00 2001 From: Can Bekleyici Date: Tue, 18 Feb 2025 11:28:52 +0100 Subject: [PATCH 2/4] deps: upgrade dev requirements --- dev_requirements.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dev_requirements.txt b/dev_requirements.txt index f48ef645..0850b4b7 100644 --- a/dev_requirements.txt +++ b/dev_requirements.txt @@ -1,6 +1,6 @@ -dbt-core~=1.9.0 -dbt-adapters~=1.10.0 -dbt-tests-adapter==1.9.0 +dbt-core>=1.8.0 +dbt-adapters>=1.10,<2.0 +dbt-tests-adapter>=1.10,<2.0 clickhouse-connect>=0.7.6 clickhouse-driver>=0.2.7 pytest>=7.2.0 From 21b4a00b184b5adb8c72c9afd1193fe283f04e9a Mon Sep 17 00:00:00 2001 From: Can Bekleyici Date: Tue, 18 Feb 2025 11:44:43 +0100 Subject: [PATCH 3/4] fix: create relation from source config --- dbt/adapters/clickhouse/relation.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dbt/adapters/clickhouse/relation.py b/dbt/adapters/clickhouse/relation.py index 87134c5a..95fb7f05 100644 --- a/dbt/adapters/clickhouse/relation.py +++ b/dbt/adapters/clickhouse/relation.py @@ -113,12 +113,15 @@ def create_from( # schema with the database instead, since that's presumably what's intended for clickhouse schema = relation_config.schema - cluster = quoting.credentials.cluster or '' can_on_cluster = None + cluster = "" # We placed a hardcoded const (instead of importing it from dbt-core) in order to decouple the packages if relation_config.resource_type == NODE_TYPE_SOURCE: if schema == relation_config.source_name and relation_config.database: schema = relation_config.database + else: + # quoting is only available for non-source nodes + cluster = quoting.credentials.cluster or "" if cluster and str(relation_config.config.get("force_on_cluster")).lower() == "true": can_on_cluster = True From aea21f571b151aca4e024aaf3b7535e65f38f5c9 Mon Sep 17 00:00:00 2001 From: Can Bekleyici Date: Tue, 18 Feb 2025 12:03:19 +0100 Subject: [PATCH 4/4] deps: pin dbt-core to >= 1.8 for backwards compability --- setup.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/setup.py b/setup.py index a149ed61..815786eb 100644 --- a/setup.py +++ b/setup.py @@ -25,13 +25,12 @@ def _dbt_clickhouse_version(): package_version = _dbt_clickhouse_version() description = '''The Clickhouse plugin for dbt (data build tool)''' -dbt_version = '1.9.0' -dbt_minor = '.'.join(dbt_version.split('.')[0:2]) +dbt_versions = ['1.8', '1.9'] -if not package_version.startswith(dbt_minor): +if not any([package_version.startswith(ver) for ver in dbt_versions]): raise ValueError( f'Invalid setup.py: package_version={package_version} must start with ' - f'dbt_version={dbt_minor}' + f'dbt_versions={str(dbt_versions)}' ) @@ -54,7 +53,7 @@ def _dbt_clickhouse_version(): ] }, install_requires=[ - f'dbt-core~={dbt_version}', + f'dbt-core>=1.8.0', 'clickhouse-connect>=0.6.22', 'clickhouse-driver>=0.2.6', 'setuptools>=0.69',