Skip to content

dbt-core v1.2.0

Compare
Choose a tag to compare
@github-actions github-actions released this 26 Jul 14:59
c7652f6

dbt-core 1.2.0 - Henry George (July 26, 2022)

Features

  • Add selector method when reading selector definitions (#4821, #4827)
  • Add set and zip function to contexts (#2345, #5107)
  • Adds itertools to modules Jinja namespace (#5130, #5140)
  • allow target as an option in profile_template.yml (#5179, #5184)
  • seed: Add new macro get_csv_sql (#5206, #5207)
  • Grants as Node Configs (#5189, #5230)
  • Adds file selectors and support for file selectors in the default method selector (#5240, #5241)
  • Move cross-db macros from dbt-utils into dbt-core global project (#4813, #5265)
  • Prettify duration message at the end of execution (#5253, #5364)
  • Early return from dbt init if no available adapters (#5365, #5366)
  • Allow customizing target-path and log-path through environment variables and CLI flags. (#5399, #5402)
  • Move type_* macros from dbt-utils into dbt-core, with tests (#5317, #5428)
  • Add support for ratio metrics (#4884, #5027)
  • Allow users to define grants as a reasonable default in the dbt_project.yml or within each model sql or yml file combined. (#5263, #5369)
  • Add reusable function for retrying adapter connections. Utilize said function to add retries for Postgres (and Redshift). (#5022, #5432)

Fixes

  • Adding new cols to check_cols in snapshots (#3146, #4893)
  • Truncate relation names when appending a suffix that will result in len > 63 characters using make_temp_relation and make_backup_relation macros (#2869, #4921)
  • Restore ability to utilize updated_at for check_cols snapshots (#5076, #5077)
  • Use yaml renderer (with target context) for rendering selectors (#5131, #5136)
  • Fix retry logic to return values after initial try (#5023, #5137)
  • Scrub secret env vars from CommandError in exception stacktrace (#5151, #5152)
  • Ensure the metric name does not contain spaces (#4572, #5173)
  • When parsing 'all_sources' should be a list of unique dirs (#5120, #5176)
  • Add warning if yaml contains duplicate keys (#5114, #5146)
  • Modifying the drop_test_schema to work better with Redshift issues around locked tables and current transactions (#5200, #5198)
  • Fix column comparison in snapshot_check_all_get_existing_columns for check-strategy snapshots with explicit check_cols defined (#5222, #5223)
  • Changed how --select state:modified detects changes for macros nodes depend on (#5202, #5224)
  • Fix column comparison in snapshot_check_all_get_existing_columns to use adapter.get_columns_in_relation (#5222, #5232)
  • Remove docs file from manifest when removing doc node (#4146, #5270)
  • Remove duplicate dbt script entry (#5314, #5304)
  • Change node ancestor/descendant algo, fixes issue where downstream models aren't run when using networkx >= 2.8.1 (#5286, #5326)
  • Fixing Windows color regression (#5191, #5327)
  • Define compatibility for older manifest versions when using state: selection methods (#5213, #5346)
  • Add inheritance to materialization macro resolution (#4646, #5348)
  • Improve pluralizations for Documentation and SqlOperation NodeTypes (#5352, #5356)
  • Properly use quotes for Snowflake snapshots when checking all columns (#2975, #5389)
  • fixes handling of RESET color code with USE_COLORS=False (#5288, #5394)
  • Remove duplicate key checking introduced in 1.2.0a1 (#5331, #5403)
  • Rename try to strict for more intuitiveness (#5475, #5477)

Docs

  • Fixed sample SQL Code for sources when no database is defined (#5255, #5446)
  • Add support for file: selector in DAG viz (#5255, #5446)
  • [Snyk] Upgrade prismjs from 1.27.0 to 1.28.0 (#5255, #5446)
  • Run build and tests in CI checks (#5255, #5446)
  • Improve metrics DAG viz and documentation page (#5255, #5446)
  • Upgrade cytoscape.js fork (#5255, #5446)

Under the Hood

  • Migrating 005_simple_seed to the new test framework. (#200, #5013)
  • Convert 029_docs_generate tests to new framework (#5035, #5058)
  • Move package deprecation check outside of package cache (#5068, #5069)
  • removal of scaffold first attempt and create_adapter_plugin.py as they are deprecated new scaffold can be found https://github.com/dbt-labs/dbt-database-adapter-scaffold (#4980, #5117)
  • Mypy -> 0.942 + fixed import logic to allow for full mypy coverage (#4805, #5171)
  • Converted dbt list tests to pytest (#5049, #5178)
  • Fix: Call str and repr for UnsetProfileConfig without a RuntimeException (#5081, #5209)
  • Improve tracking error logging message (#5197, #5211)
  • Clean up materialization logic: more consistent relation names, loading from cache (#2869, #4921)
  • Use the default Python version for local dev and test instead of requiring Python 3.8 (#5257, #5269)
  • Fix test for context set function (#5266, #5272)
  • Fix pip upgrade step in CI for Windows (#5321, #5320)
  • Fix unit test test_graph_selection (#5323, #5324)
  • Update context readme + clean up context code" (#4796, #5334)
  • removed script meant for snowflake to snowflake (#5361, #5362)
  • Added the suggested RegEx to check the SemVer string within a package dependency and improved invalid version error handling. (#5201, #5370)
  • Add annotation to render_value method reimplemented in #5334 (#4796, #5382)
  • Bump manifest version to v6 (#5417, #5430)
  • Add tests for SQL grants (#5437, #5447)

Dependencies

  • Bump ubuntu from 20.04 to 22.04 (#4904, #5141)
  • Bumping hologram version (#5219, #5218)
  • Bump mypy from 0.942 to 0.961 (#4904, #5337)
  • Bump python from 3.10.3-slim-bullseye to 3.10.5-slim-bullseye in /docker (#4904, #5367)
  • Update colorama requirement from <0.4.5,>=0.3.9 to >=0.3.9,<0.4.6 in /core (#4904, #5388)
  • Bump black from 22.3.0 to 22.6.0 (#4904, #5420)

Security

  • Move string interpolation of "secret" env vars outside of Jinja context. Update "contexts" README (#4796, #5334)

Contributors


Henry George (1839 – 1897)

Thanks to @heysweet for writing this biography of Henry George —a famous Philadelphian, and the namesake of this dbt Core release.

“Men like Henry George are rare unfortunately. One cannot imagine a more beautiful combination of intellectual keenness, artistic form and fervent love of justice. Every line is written as if for our generation. The spreading of these works is a really deserving cause, for our generation especially has many and important things to learn from Henry George.”

— Albert Einstein

The boardgame of Monopoly has long been credited to Philadelphian Charles Darrow — a rags to riches story of a man down on his luck struck with a brilliant idea. In reality, Charles Darrow stole the idea while playing a boardgame **at a dinner party with friends. Poet, comedian, actress, and engineer Lizzie Magie designed the original, called The Landlord’s Game, which was intended to demonstrate the political theories of Henry George (Georgism). While the Capitalist ruleset was the more popular and ended up as the base of Monopoly itself, the game was designed with an alternate ruleset for how to play, which involved all players being rewarded during wealth creation. These two playstyles demonstrate the harm of natural monopolies and the societal benefit that comes to all from a land value tax. (Charles Darrow went on to become the first millionaire game designer, and though Magie had a patent, she made $500 from the game she designed).

Henry George was a prominent political economist and journalist, who advocated strongly for women’s suffrage, universal basic income, a land value tax, free or affordable public services in place of natural monopolies (utilities, mass transit, libraries), and campaign finance reform.

His first book Progress and Poverty (1879) popularized many of the ideas of Georgism (alternatively Geoism or the single tax movement), which argued that people should own the value they produce themselves, and that rent on land, natural resources, and the commons should belong equally to all members of society, to be paid out in the form of a citizen’s dividend. A leading figure of the Progressive Movement John Peter Altgeld wrote that George “made almost as great an impression on the economic thought of the age as Darwin did on the world of science.”

While George’s ideas were popular across the political spectrum among socialists, libertarians, and conservatives alike, George never won a political election. Henry ran for Mayor of New York City as the candidate for the United Labor Party in New York City’s mayoral election, losing to Theodore Roosevelt, came in third in the election for Secretary of State of New York, and in 1897 during his second run for mayor of New York City, succumbed to a fatal stroke during the campaign.

Henry George was born in Philadelphia on September 2, 1839 and died of a stroke four days before his second run for the mayor of New York City on October 29, 1897.