Skip to content

Commit a4143a5

Browse files
fix: install elementary without [vertica] extra to prevent dbt-core downgrade (#966)
The 'Install Elementary' step was using pip install './elementary[vertica]' which re-resolved dbt-vertica's dependencies, causing dbt-core to be downgraded to ~1.7.3. The older dbt-core is incompatible with newer protobuf (MessageToJson() missing 'including_default_value_fields' arg), breaking the subsequent 'Install dependencies' step (dbt deps). Since dbt-vertica is already installed with --no-deps in the prior step, we install elementary without the [vertica] extra to preserve the correct dbt-core version. Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Co-authored-by: Itamar Hartstein <haritamar@gmail.com>
1 parent 11c1374 commit a4143a5

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

.github/workflows/test-warehouse.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,15 @@ jobs:
183183
curl -fsSL https://public.cdn.getdbt.com/fs/install/install.sh | sh -s --
184184
185185
- name: Install Elementary
186-
run: pip install "./elementary[${{ (inputs.warehouse-type == 'databricks_catalog' && 'databricks') || inputs.warehouse-type }}]"
186+
run: |
187+
# For Vertica, dbt-vertica is already installed with --no-deps above;
188+
# using ".[vertica]" would re-resolve dbt-vertica's deps and downgrade
189+
# dbt-core to ~=1.8. Install elementary without the adapter extra.
190+
if [ "${{ inputs.warehouse-type }}" = "vertica" ]; then
191+
pip install "./elementary"
192+
else
193+
pip install "./elementary[${{ (inputs.warehouse-type == 'databricks_catalog' && 'databricks') || inputs.warehouse-type }}]"
194+
fi
187195
188196
- name: Write dbt profiles
189197
env:

0 commit comments

Comments
 (0)