github dbt-labs/dbt v0.14.0
dbt 0.14.0

dbt 0.14.0 - Wilt Chamberlain (July 10, 2019)

Overview

This release adds an rpc server to dbt (docs), replaces Archives with Snapshots (docs, migration guide) and adds new dbt subcommands:

  • dbt ls (docs)
  • dbt run-operation (docs)

Tests can now be defined with a severity (either warning or error) (docs), in addition to a number of other workflow and quality of life improvements.

Links:

Breaking changes

  • Stub out adapter methods at parse-time to speed up parsing (#1413)
  • Removed support for the --non-destructive flag (#1419, #1415)
  • Removed support for the sql_where config to incremental models (#1408, #1351)
  • Changed expand_target_column_types to take a Relation instead of a string (#1478)
  • Replaced Archives with Snapshots
    • Normalized meta-column names in Snapshot tables (#1361, #251)

Features

  • Add run-operation command which invokes macros directly from the CLI (#1328) (docs)
  • Add a dbt ls command which lists resources in your project (#1436, #467) (docs)
  • Add Snapshots, an improvement over Archives (#1361, #1175) (docs)
    • Add the 'check' snapshot strategy (#1361, #706)
    • Support Snapshots across logical databases (#1455)
    • Implement Snapshots using a merge statement where supported (#1478)
    • Support Snapshot selection using --select (#1520, #1512)
  • Add an RPC server via dbt rpc (#1301, #1274) (docs)
  • Made printer width configurable (#1026, #1247) (docs)
  • Retry package downloads from the hub.getdbt.com (#1451, #1491)
  • Add a test "severity" level, presented as a keyword argument to schema tests (#1410, #1005) (docs)
  • Add a generate_alias_name macro to configure alias names dynamically (#1363) (docs)
  • Add a node argument to generate_schema_name to configure schema names dynamically (#1483, #1463) (docs)
  • Use create or replace on Snowflake to rebuild tables and views atomically (#1101, #1409)
  • Use merge statement for incremental models on Snowflake (#1414, #1307, #1409) (docs)
  • Add support seed CSV files that start with a UTF-8 Byte Order Mark (BOM) (#1452, #1177)
  • Add a warning when git packages are not pinned to a version (#1453, #1446)
  • Add logging for on-run-start and on-run-end hooks to console output (#1440, #696)
  • Add modules and tracking information to the rendering context for configuration files (#1441, #1320)
  • Add support for null vars, and distinguish null vars from unset vars (#1426, #608)
  • Add support for the search_path configuration in Postgres/Redshift profiles (#1477, #1476) (docs (postgres), docs (redshift))
  • Add support for persisting documentation as descriptions for tables and views on BigQuery (#1031, #1285) (docs)
  • Add a --project-dir path which will invoke dbt in the specified directory (#1549, #1544)

dbt docs Changes

  • Add searching by tag name (#32)
  • Add context menu link to export graph viz as a PNG (#34)
  • Fix for clicking models in left-nav while search results are open (#31)

Fixes

  • Fix for unduly long timeouts when anonymous event tracking is blocked (#1445, #1063)
  • Fix for error with mostly-duplicate git urls in packages, picking the one that came first. (#1428, #1084)
  • Fix for unrendered description field as jinja in top-level Source specification (#1484, #1494)
  • Fix for API error when very large temp tables are created in BigQuery (#1423, #1478)
  • Fix for compiler errors that occurred if jinja code was present outside of a docs blocks in .md files (#1513, #988)
  • Fix TEXT handling on postgres and redshift (#1420, #781)
  • Fix for compiler error when vars are undefined but only used in disabled models (#1429, #434)
  • Improved the error message when iterating over the results of a macro that doesn't exist (#1425, #1424)
  • Improved the error message when tests have invalid parameter definitions (#1427, #1325)
  • Improved the error message when a user tries to archive a non-existent table (#1361, #1066)
  • Fix for archive logic which tried to create already-existing destination schemas (#1398, #758)
  • Fix for incorrect error codes when Operations exit with an error (#1406, #1377)
  • Fix for missing compiled SQL when the rpc server encounters a database error (#1381, #1371)
  • Fix for broken link in the profile.yml generated by dbt init (#1366, #1344)
  • Fix the sample test.env file's redshift password field (#1364)
  • Fix collisions on models running concurrently that have duplicate names but have distinguishing aliases (#1342, #1321)
  • Fix for a bad error message when a version is missing from a package spec in packages.yml (#1551, #1546)
  • Fix for wrong package scope when the two-arg method of ref is used (#1515, #1504)
  • Fix missing import in test suite (#1572)
  • Fix for a Snowflake error when an external table exists in a schema that dbt operates on (#1571, #1505)

Under the hood

  • Use pytest for tests (#1417)
  • Use flake8 for linting (#1361, #1333)
  • Added a flag for wrapping models and tests in jinja blocks (#1407, #1400)
  • Connection management: Bind connections threads rather than to names (#1336, #1312)
  • Add deprecation warning for dbt users on Python2 (#1534, #1531)
  • Upgrade networkx to v2.x (#1509, #1496)
  • Anonymously track adapter type and rpc requests when tracking is enabled (#1575, #1574)
  • Fix for test warnings and general test suite cleanup (#1578)

Contributors:

Over a dozen contributors wrote code for this release of dbt! Thanks for taking the time, and nice work y'all! :)

Wilt Chamberlain

Thanks to @amychen1776 for the following biography of Wilt Chamberlain.

Wilton Norman Chamberlain, better known as Wilt Chamberlain, was born in Philadelphia, PA on August 21, 1936. His nicknames were unironically “Goliath” and “Wilt the Stilt” and standing at 7ft 1 in, he had his fair share of “How’s the weather up there?”. He made his place in history as one of the greatest basketball players ever, having played for Overbrook High School Panthers, Philadelphia Warriors, Philadelphia 76ers, and Los Angeles Lakers along with, for the Scooby Doo fans out there, the Harlem Globetrotters.

Wilt Chamberlain is the only player in NBA history to have ever averaged at least 30 points and 20 rebounds per game in a season, accomplishing this feat seven times. In recognition of his athleticism, he has won countless accolades including Rookie of the Year and a place in the Basketball of Fame. His fingerprints on basketball extend further than the impressive statistics, Wilt was directly responsible to several rule changes in the sport due to his size. Due to his 50-inch vertical leap, his dunks undermined the difficulty of a foul shot, leading to the change in widening the lane to keep bigger men farther away from the hoop.

After retirement in 1974, Wilt shifted his focus to being an entrepreneur and humanitarian, creating many successful businesses and supporting teams for track, field, and volleyball. He became very invested in the sport of volleyball to the extent that he was a board member on the International Volleyball Association in 1974 and later its president. His use of fame to uplift the sport led him to even be named in the Volleyball Hall of Fame, one of the few athletes to be enshrined in different sports. Anything he spiked at, he scored.

To add on to this renaissance man, he expanded into the film industry, forming a film production and distribution company and even acting in the film Conan the Destroyer (1984) as the villain Bombaata to Arnold Schwarzenegger. A successful athletic to the end, even in his mid-forties, he humbled the rookie Magic Johnson in practice and was offered a return to basketball twice. Sadly his history of heart troubles caught up with his and he passed away in October 1999 at the age of 63.

May his prolific life inspire you in this new release of dbt. Slam Dunk that project!

latest releases: v0.20.0, v0.20.0rc2, v0.19.2...
2 years ago