From e01453601faa9a65850912f415b853fec1167659 Mon Sep 17 00:00:00 2001 From: Doug Beatty Date: Wed, 1 May 2024 15:42:58 -0600 Subject: [PATCH 1/4] Cross-database `date` macro --- .changes/unreleased/Features-20240501-151902.yaml | 6 ++++++ dbt/include/bigquery/macros/utils/date.sql | 3 +++ tests/functional/adapter/utils/test_utils.py | 5 +++++ 3 files changed, 14 insertions(+) create mode 100644 .changes/unreleased/Features-20240501-151902.yaml create mode 100644 dbt/include/bigquery/macros/utils/date.sql diff --git a/.changes/unreleased/Features-20240501-151902.yaml b/.changes/unreleased/Features-20240501-151902.yaml new file mode 100644 index 000000000..401867424 --- /dev/null +++ b/.changes/unreleased/Features-20240501-151902.yaml @@ -0,0 +1,6 @@ +kind: Features +body: Cross-database `date` macro +time: 2024-05-01T15:19:02.929676-06:00 +custom: + Author: dbeatty10 + Issue: https://github.com/dbt-labs/dbt-core/issues/8831 diff --git a/dbt/include/bigquery/macros/utils/date.sql b/dbt/include/bigquery/macros/utils/date.sql new file mode 100644 index 000000000..0f3b85aca --- /dev/null +++ b/dbt/include/bigquery/macros/utils/date.sql @@ -0,0 +1,3 @@ +{% macro bigquery__date(year, month, day) -%} + date({{ year }}, {{ month }}, {{ day }}) +{%- endmacro %} diff --git a/tests/functional/adapter/utils/test_utils.py b/tests/functional/adapter/utils/test_utils.py index 58cecdc7e..7ad4bdd6e 100644 --- a/tests/functional/adapter/utils/test_utils.py +++ b/tests/functional/adapter/utils/test_utils.py @@ -11,6 +11,7 @@ from dbt.tests.adapter.utils.test_cast_bool_to_text import BaseCastBoolToText from dbt.tests.adapter.utils.test_concat import BaseConcat from dbt.tests.adapter.utils.test_current_timestamp import BaseCurrentTimestampAware +from dbt.tests.adapter.utils.test_date import BaseDate from dbt.tests.adapter.utils.test_dateadd import BaseDateAdd from dbt.tests.adapter.utils.test_datediff import BaseDateDiff from dbt.tests.adapter.utils.test_date_spine import BaseDateSpine @@ -117,6 +118,10 @@ class TestCurrentTimestamp(BaseCurrentTimestampAware): pass +class TestDate(BaseDate): + pass + + class TestDateAdd(BaseDateAdd): pass From b46183aea28c684592b68e6dae7d2396b0fe02bc Mon Sep 17 00:00:00 2001 From: Doug Beatty Date: Wed, 1 May 2024 15:58:09 -0600 Subject: [PATCH 2/4] Temporary dev requirements for testing --- dev-requirements.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dev-requirements.txt b/dev-requirements.txt index cf7b1b87c..f23f49215 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -1,9 +1,9 @@ # install latest changes in dbt-core # TODO: how to automate switching from develop to version branches? -git+https://github.com/dbt-labs/dbt-core.git#egg=dbt-core&subdirectory=core -git+https://github.com/dbt-labs/dbt-common.git -git+https://github.com/dbt-labs/dbt-adapters.git -git+https://github.com/dbt-labs/dbt-adapters.git#subdirectory=dbt-tests-adapter +git+https://github.com/dbt-labs/dbt-core.git@main#egg=dbt-core&subdirectory=core +git+https://github.com/dbt-labs/dbt-common.git@main +git+https://github.com/dbt-labs/dbt-adapters.git@dbeatty/date-macro +git+https://github.com/dbt-labs/dbt-adapters.git@dbeatty/date-macro#subdirectory=dbt-tests-adapter # if version 1.x or greater -> pin to major version # if version 0.x -> pin to minor black>=24.3 From 408aaa5fe2d727627d5cf9f7f44e2328a7863880 Mon Sep 17 00:00:00 2001 From: Doug Beatty Date: Thu, 2 May 2024 07:00:49 -0600 Subject: [PATCH 3/4] Update changelog entry --- .changes/unreleased/Features-20240501-151902.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changes/unreleased/Features-20240501-151902.yaml b/.changes/unreleased/Features-20240501-151902.yaml index 401867424..1522e9775 100644 --- a/.changes/unreleased/Features-20240501-151902.yaml +++ b/.changes/unreleased/Features-20240501-151902.yaml @@ -3,4 +3,4 @@ body: Cross-database `date` macro time: 2024-05-01T15:19:02.929676-06:00 custom: Author: dbeatty10 - Issue: https://github.com/dbt-labs/dbt-core/issues/8831 + Issue: 1221 From b76eff84bf2ab4c1769a468495b4975dddb59f24 Mon Sep 17 00:00:00 2001 From: Doug Beatty Date: Thu, 2 May 2024 07:02:47 -0600 Subject: [PATCH 4/4] Revert "Temporary dev requirements for testing" This reverts commit b46183aea28c684592b68e6dae7d2396b0fe02bc. --- dev-requirements.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dev-requirements.txt b/dev-requirements.txt index f23f49215..cf7b1b87c 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -1,9 +1,9 @@ # install latest changes in dbt-core # TODO: how to automate switching from develop to version branches? -git+https://github.com/dbt-labs/dbt-core.git@main#egg=dbt-core&subdirectory=core -git+https://github.com/dbt-labs/dbt-common.git@main -git+https://github.com/dbt-labs/dbt-adapters.git@dbeatty/date-macro -git+https://github.com/dbt-labs/dbt-adapters.git@dbeatty/date-macro#subdirectory=dbt-tests-adapter +git+https://github.com/dbt-labs/dbt-core.git#egg=dbt-core&subdirectory=core +git+https://github.com/dbt-labs/dbt-common.git +git+https://github.com/dbt-labs/dbt-adapters.git +git+https://github.com/dbt-labs/dbt-adapters.git#subdirectory=dbt-tests-adapter # if version 1.x or greater -> pin to major version # if version 0.x -> pin to minor black>=24.3