Skip to content

Releases: snowplow/dbt-snowplow-web

snowplow-web v1.0.1

01 May 10:10
Compare
Choose a tag to compare

Summary

This version aligns the full refresh protection on manifest tables with other packages, requiring both snowplow__allow_refresh to be true and a --full-refresh flag.

Features

  • Require full refresh flag to refresh manifest tables

Upgrading

Bump the snowplow-web version in your packages.yml file.

snowplow-web v1.0.0

05 Dec 11:10
Compare
Choose a tag to compare

Summary

This version marks a major milestone as we move the package into a 1.0.0 release. The release itself only makes a few fixes for some issues, but this state marks the package as stable and production ready. This package will only receive critical bug fixes going forward as we invest our effort in new packages and projects.

Breaking changes

  • We now require a dbt version >=1.6.0 to run this package

Fixes

  • Set default variables for contexts (Close #54)
  • Replace old macro in custom example (Close #236)
  • Remove full version number for core web vitals from bigquery (Close #235)

Upgrading

Bump the snowplow-web version in your packages.yml file.

snowplow-web v0.16.2

20 Oct 08:47
Compare
Choose a tag to compare

Summary

This version fixes an incorrect default value for the snowplow__cwv_context variable for Redshift/Postgres users. There is no action needed from any users on this change.

Fixes

  • Fix incorrect default table name for core web vitals on redshift

Upgrading

Bump the snowplow-web version in your packages.yml file.

snowplow-web v0.16.1

06 Oct 12:23
Compare
Choose a tag to compare

Summary

This version fixes an issue where the app_id filter was being ignored in the new models.

Fixes

  • Correctly process app id filter

Upgrading

Bump the snowplow-web version in your packages.yml file.

snowplow-web v0.16.0

19 Sep 14:45
Compare
Choose a tag to compare

Summary

This version adds a load of new features, powered by a complete refactor of the core processing of the package by moving it out to the new base macro functionality provided in snowplow_utils. This enables users to now specify custom fields for sessionization and user identification, to add custom entities/SDEs fields to the base events table for redshift/postgres, and to add passthrough fields to the derived tables so you can now more easily add your own fields to our tables. In addition we've increased the flexibility of how you apply user stitching, and made it available on the page views table!

From this release onwards, the package is being released under the Snowplow Community License, Version 1.0. If you are uncertain how it applies to your use case, check our answers to frequently asked questions.

🚨 Breaking Changes 🚨

  • Bumped required dbt version to 1.5.0
  • Added new fields (original_domain_sessionid and original_domain_userid) to all tables to support custom identifiers
  • Bumped snowplow_utils required version to 0.15.0
  • Altered entity/self-describing table variables to only be table names, instead of source strings
  • Renamed columns in quarantined sessions and sessions lifecycle manifest table (please run the ALTER TABLE statements in the migration guide or do a full-refresh)
  • Seeds have been renamed to be prefixed with snowplow_web_* to align with the rest of the package, and now you can use your own seed files or tables in their place (see the package config)

Features

  • Migrate base models to the new base macros for flexibility and consistency
  • Add ability to add custom entity/self-describing event columns to the base_events_this_run table for Redshift/Postgres
  • Add ability to use a custom session identifier and user identifier
  • Add new fields original_domain_sessionid and original_domain_userid to derived tables (where applicable)
  • Add ability to pass fields through to derived page views, sessions, and user tables
  • Add option to choose the logged user_id field that session stitching uses
  • Add ability to run user stitching on the derived page views table

Under the hood

  • Aligned variables to follow the public docs
  • Contexts are now joined and de-duped via a macro for Postgres/Redshift
  • But filtering is now case insensitive

Upgrading

Bump the snowplow-web version in your packages.yml file and follow all the other steps in our migration guide.

snowplow-web v0.16.0-rc1

31 Aug 13:57
Compare
Choose a tag to compare
Pre-release

Summary

This release candidate adds a load of new features, powered by a complete refactor of the core processing of the package by moving it out to the new base macro functionality provided in snowplow_utils. This enables users to now specify custom fields for sessionization and user identification, to add custom entities/SDEs fields to the base events table for redshift/postgres, and to add passthrough fields to the derived tables so you can now more easily add your own fields to our tables. In addition we've increased the flexibility of how you apply user stitching, and made it available on the page views table!

As always with a release candidate please feedback any issues you find, either via Github or Discourse, and the new docs for this version of the package are available at a temporary preview docs site before they are deployed to the main site when the full version of the package is released.

From this release onwards, the package is being released under the Snowplow Community License, Version 1.0. If you are uncertain how it applies to your use case, check our answers to frequently asked questions.

🚨 Breaking Changes 🚨

  • Bumped required dbt version to 1.5.0
  • Added new fields (original_domain_sessionid and original_domain_userid) to all tables to support custom identifiers
  • Bumped snowplow_utils required version to 0.15.0
  • Altered entity/self-describing table variables to only be table names, instead of source strings
  • Renamed columns in quarantined sessions and sessions lifecycle manifest table (please run the ALTER TABLE statements in the migration guide or do a full-refresh)
  • Seeds have been renamed to be prefixed with snowplow_web_* to align with the rest of the package, and now you can use your own seed files or tables in their place (see the package config)

Features

  • Migrate base models to the new base macros for flexibility and consistency
  • Add ability to add custom entity/self-describing event columns to the base_events_this_run table for Redshift/Postgres
  • Add ability to use a custom session identifier and user identifier
  • Add new fields original_domain_sessionid and original_domain_userid to derived tables (where applicable)
  • Add ability to pass fields through to derived page views, sessions, and user tables
  • Add option to choose the logged user_id field that session stitching uses
  • Add ability to run user stitching on the derived page views table

Under the hood

  • Aligned variables to follow the public docs
  • Contexts are now joined and de-duped via a macro for Postgres/Redshift

Upgrading

Bump the snowplow-web version in your packages.yml file and follow all the other steps in our migration guide.

snowplow-web v0.15.2

28 Jul 07:55
Compare
Choose a tag to compare

Summary

This version fixes a rare bug in the event of null values on specific fields used by the Core Web Vitals optional module.

Fixes

  • Prevent duplicates in web vital measurements (Close #215)

Upgrading

Bump the snowplow-web version in your packages.yml file.

snowplow-web v0.15.1

25 Jul 08:47
Compare
Choose a tag to compare

Summary

This version brings Redshift/Postgres support for the optional Core Web Vitals module, adds the default channel group field to the derived page_views table, contains a fix for Redshift users based on a default column size, another for Core Web Vital users and also adds the package name to the run limits log. Note the snowplow_utils minimum version has now increased to 0.14.3.

Features

  • Add Redshift/Postgres support for Core Web Vitals
  • Add default channel group to page views (Close #211)
  • Added package name to run limits log message
  • Handle unexpected high web vital values (Close #208)

Fixes

  • Fix issue with new runs of Redshift due to default column size.

🚨 Breaking Changes 🚨

Existing Core Web Vital optional module users on Snowflake and Databricks will need to make changes to one of their derived tables. For a full sql script on how to achieve this, check out the relevant migration guide The other option is to do a complete refresh of the package.

Upgrading

Bump the snowplow-web version in your packages.yml file.

snowplow-web v0.15.0

21 Jun 11:06
Compare
Choose a tag to compare

Summary

The main change in this version is the addition of many new fields to the derived tables (sessions, pageviews, users), including the ability to define your conversion events that are aggregated per session. You can read more about it in our docs here! We also add the (optional) count of events per event type for each session, you can enable it by turning on the snowplow__list_event_counts variable.

There is a new optional module called core web vitals which will allow you to model raw events sent from the Snowplow Web Vitals plugin (@snowplow/browser-plugin-web-vitals) of the JavaScript tracker to measure and evaluate the speed, responsiveness, and visual stability of websites.

This version also moves the iab, ua, and yauaa contexts into the base events this run table for Postgres/Redshift, completing the work to decouple our sessions models from the page view models for all warehouses.

🚨 Breaking Changes 🚨

Please note that we have added a variable, snowplow__enable_consent to enable the models in the consent module. Please make sure you set this variable to true in your dbt_project.yml file to be able to run them:

# dbt_project.yml

vars:
  snowplow_web:
    snowplow__enable_consent: true

While not breaking in that your models should all still run, there are many new columns in the sessions, pageviews and users tables that will be automatically added to your derived tables, which may have unintended consequences with existing queries or BI tools that use column position (although dbt usually appends these columns to the end). New columns will only be populated from new runs onwards, if you wish to populate them for older records you will need to do a full refresh.

Features

  • Move contexts into base table for redshift (Close #185)
  • Add support for user-defined conversion aggregation to sessions
  • Add new fields to the sessions table including enhanced and last geo data, default channel group, marketing source platform, event count, and optional count by event_name
  • Add new fields to the users table relating to the latest event geo and browser information
  • Add core web vitals module

Under the hood

  • Optimizes a filter in the snowplow_web_user_sessions_this_run model (Close #186)
  • Ensure deterministic modeling when two genuine events occur at the same time in a session (Close #178)

Docs

  • Remove docs that are no longer necessary

Upgrading

Bump the snowplow-web version in your packages.yml file.

Some of the tables are relying now on seeds that have just been introduced with this version (dim_ga4_source_categories, dim_geo_country_mapping,dim_rfc_5646_language_mapping). Please run dbt seed --select snowplow_web --full-refresh on your first run.

snowplow-web v0.14.1

23 May 15:32
Compare
Choose a tag to compare

Summary

This version fixes an issue for new runs of the package on redshift where empty text field sizes were set to a length of 1.

Fixes

  • Fixes error with new install on redshift for character varying field sizes.

Upgrading

To upgrade bump the snowplow-web version in your packages.yml file.