Skip to content

Latest commit

 

History

History
executable file
·
369 lines (294 loc) · 29.6 KB

CHANGELOG.md

File metadata and controls

executable file
·
369 lines (294 loc) · 29.6 KB

dbt Core Changelog

  • This file provides a full account of all changes to dbt-core and dbt-postgres
  • Changes are listed under the (pre)release in which they first appear. Subsequent releases include changes from previous releases.
  • "Breaking changes" listed under a version may require action from end users or external maintainers when upgrading to that version.
  • Do not edit this file directly. This file is auto-generated using changie. For details on how to document a change, see the contributing guide

dbt-core 1.5.11 - March 28, 2024

Dependencies

  • Restrict protobuf to 4.* versions (#9566)

dbt-core 1.5.10 - February 28, 2024

Under the Hood

  • Restrict protobuf to major version 4. (#9566)

Security

dbt-core 1.5.9 - October 31, 2023

Fixes

  • Add back contract enforcement for temporary tables on postgres (#8857)

dbt-core 1.5.8 - October 11, 2023

Fixes

  • Support global flags passed in after subcommands (#6497)
  • Foreign key constraint on incremental model results in Database Error (#8022)
  • Support docs blocks on versioned model column descriptions (#8540)
  • Enable seeds to be handled from stored manifest data (#6875)
  • Group updates on unmodified nodes are handled gracefully for state:modified (#8371)

dbt-core 1.5.7 - September 28, 2023

Features

  • Accept a dbt-cloud config in dbt_project.yml (#8438)

Fixes

  • Fix snapshot success message (#7583)
  • update dbt show to include limit in DWH query (#8496,, #8417)
  • Support quoted parameter list for MultiOption CLI options. (#8598)
  • avoid double-rendering sql_header in dbt show (#8739)

dbt-core 1.5.6 - August 21, 2023

Under the Hood

  • Use python version 3.10.7 in Docker image. (#8444)

dbt-core 1.5.5 - August 17, 2023

Fixes

  • Copy target_schema from config into snapshot node (#6745)
  • Add status to Parse Inline Error (#8173)
  • Fix using list command with path selector and project-dir (#8385)

Under the Hood

  • A way to control maxBytes for a single dbt.log file (#8199)

Dependencies

  • Update pin for click<9 (#8232)
  • Add upper bound to sqlparse pin of <0.5 (#8236)

dbt-core 1.5.4 - July 28, 2023

Fixes

  • Ensure warn_error_options get serialized in invocation_args_dict (#7694)
  • Improve handling of CTE injection with ephemeral models (#8213)

Under the Hood

  • Refactor flaky test pp_versioned_models (#7781)

dbt-core 1.5.3 - July 17, 2023

Fixes

  • Add --target-path to more CLI subcommands (#7646)
  • Remove limitation on use of sqlparse 0.4.4 (#7515)
  • Move project_root contextvar into events.contextvars (#7937)
  • Inline query emit proper error message (#7940)
  • Allow on_schema_change = fail for contracted incremental models (#7975)
  • Nicer error message if model with enforced contract is missing 'columns' specification (#7943)
  • Detect breaking contract changes to versioned models (#8030)

Dependencies

  • Pin click>=7.0,<8.1.4 (#8050)

Contributors

dbt-core 1.5.2 - June 22, 2023

Features

  • add access selection syntax (#7738)
  • Add AdapterRegistered event log message (#7038)

Fixes

  • Add --target-path to dbt snapshot command. (#7418)
  • Constraint rendering fixes: wrap check expression in parentheses, foreign key 'references', support expression in all constraint types (#7417, #7480, #7416)
  • Fix warning messages for deprecated dbt_project.yml configs (#7424)
  • Respect column 'quote' config in model contracts (#7370)
  • Improve warnings for constraints and materialization types (#7335)
  • Incorrect paths used for "target" and "state" directories (#7465)
  • Using version 0 works when resolving single model (#7372)
  • Fix empty --warn-error-options error message (#7730)
  • send sql header on contract enforcement (#7714)
  • Fix path selector when using project-dir (#7819)
  • Allow dbt show --inline preview of private models (#7837)
  • Updating this error message to point to the correct URL (#7789)

Contributors

dbt-core 1.5.1 - May 30, 2023

Fixes

  • fix typo in unpacking statically parsed ref (#7364)
  • Fix inverted --print/--no-print flag (#7517)
  • Back-compat for previous return type of 'collect_freshness' macro (#7489)
  • print model version in dbt show if specified (#7407)
  • Allow missing profiles.yml for dbt deps and dbt init (#7511)
  • Do not rewrite manifest.json during 'docs serve' command (#7553)
  • Pin protobuf to greater than 4.0.0 (#7565)
  • Throw error for duplicated versioned and unversioned models (#7487)
  • Fix: Relative project paths weren't working with deps (#7491)
  • Fall back if rendering the password field fails. (#7629)
  • Stringify flag paths for Jinja context (#7495)

Under the Hood

  • Remove legacy file logger code (#NA)

Contributors

dbt-core 1.5.0 - April 27, 2023

Breaking Changes

  • Allow --select and --exclude multiple times (#7158)
  • Specifying "log-path" and "target-path" in "dbt_project.yml" is deprecated. This functionality will be removed in a future version of dbt-core. If you need to specify a custom path for logs or artifacts, please set via CLI flag or env var instead. (#6882)
  • Remove exception functions marked as deprecated in 1.4 release (#6578)

Features

  • Data type constraints are now native to SQL table materializations. Enforce columns are specific data types and not null depending on database functionality. (#6079)
  • Have dbt debug spit out structured json logs with flags enabled. (#5353)
  • ✨ add unix-style wildcard selector method (#6598)
  • add adapter_response to dbt test and freshness result (#2964)
  • add support for DBT_PROJECT_DIR env var (#6078)
  • Improve error message for packages missing dbt_project.yml (#6663)
  • Make project version optional (#6603)
  • Adjust makefile to have clearer instructions for CI env var changes. (#6689)
  • Stand-alone Python module for PostgresColumn (#6772)
  • Enable diff based partial parsing (#6592)
  • Exposure owner requires one of name or email keys, and accepts additional arbitrary keys (#6833)
  • Parse 'group' resource (#6921)
  • parse 'group' config on groupable nodes (#6823)
  • Implemented new log cli parameters for finer-grained control. (#6639)
  • Add access attribute to parsed nodes (#6824)
  • Enforce contracts on models materialized as tables, views, and incremental (#6751, #7034, #6756, #7154)
  • Add ability to select by group resource (#6825)
  • Disallow refing private model across groups (#6826)
  • make version configs optional (#7054)
  • [CT-1584] New top level commands: interactive compile (#6358)
  • Make model contracts agnostic to ordering (#6975, #7064)
  • Unified constraints and check_constraints properties for columns and models (#7066)
  • Switch from betterproto to google protobuf and enable more flexible meta dictionary in logs (#6832)
  • Ignore duplicate edges in subgraph to speed up dbt build (#7191)
  • Support setting of callbacks for programmatic uses of dbtRunner (#6763)
  • Detect breaking changes to contracts in state:modified check (#6869)
  • New command: dbt show (#7207, #7179, #6359)
  • Added prettier printing to ContractError class (#7209)
  • Add support for model-level constraints (#6754)
  • model versions (##7263)
  • Add relation info (database, schema, alias) to node_info dictionary in structured logging (#6724)
  • Add --no-populate-cache to optionally skip relation cache population (#1751)
  • select resources by patch path (#7315)
  • Add version selector method (#7199)

Fixes

  • Remove trailing slashes from source paths (#6102) (#6102)
  • add merge_exclude_columns adapter tests (#6699)
  • Include adapter_response in NodeFinished run_result log event (#6703)
  • Sort cli vars before hashing for partial parsing (#6710)
  • [Regression] exposure_content referenced incorrectly (#6738)
  • Snapshot strategies: add a newline for subquery (#6781)
  • Remove pin on packaging and stop using it for prerelease comparisons (#6834)
  • Readd depends_on.macros to SeedNode, to support seeds with hooks calling macros (#6806)
  • Fix regression of --quiet cli parameter behavior (#6749)
  • Add double type to list of float column types for the column class (#6876)
  • Ensure results from hooks contain nodes when processing them (#6796)
  • Always flush stdout after logging (#6901)
  • Reapply logging fixes which were accidentally reverted (#6936)
  • Set relation_name in test nodes at compile time (#6930)
  • Readd initialization events, --log-cache-events in new CLI (#6933)
  • Fix previous state tests and disabled exposures, metrics (#6752, #6753)
  • Make use of hashlib.md5() FIPS compliant (#6900)
  • add timeout for dbt --version command (#6992)
  • Fix compilation logic for ephemeral nodes (#6885)
  • Fix semver comparison logic by ensuring numeric values (#7039)
  • add pytz dependency (#7077)
  • allow adapters to change model name resolution in py models (#7114)
  • Add exception handling in postflight decorator to address exit codes (#7010)
  • Recreates missing tracking events (#6097, #6098)
  • Fix partial parsing error due to not requiring "version" (#7236)
  • Handle internal exceptions (#7118)
  • Improved failed event serialization handling and associated tests (#7113, #7108, #6568)
  • Fix handling of artifacts in read_and_check_versions (#7252)
  • Stringify datetimes in logging for prettier messages (#7255)
  • avoid dbtRunner default callbacks being shared across instances (#7278)
  • Ensure same_contract is called for state:modified (#7282)
  • Avoid revoking grants for views when copy_grants=true (#7280)
  • Duplicated flags now throw errors instead of being overidden by parent-level flag (#6913)
  • Ensure that invocation_id changes between programmatic invocations. (#7197)
  • Adding a new column is not a breaking contract change (#7332)
  • fix versioned model selection in subdirectories (#7348)
  • safe version attribute access in _check_resource_uniqueness (#7375)
  • Fix dbt command missing target-path param ([# 7411](https://github.com/dbt-labs/dbt-core/issues/ 7411))
  • Fix v0 ref resolution (#7408)
  • fix groupable node partial parsing, raise DbtReferenceError at runtime for safety (#7437)
  • Fix partial parsing of latest_version changes for downstream references (#7369)

Docs

Under the Hood

  • [CT-921] dbt compile works in click (#5545)
  • Fix use of ConnectionReused logging event (#6168)
  • Port docs tests to pytest (#6573)
  • Update deprecated github action command (#6153)
  • dbt snapshot works in click (#5554)
  • dbt list working with click (#5549)
  • Add dbt run-operation to click CLI (#5552)
  • dbt build working with new click framework (#5541)
  • dbt docs generate works with new click framework (#5543)
  • Replaced the EmptyLine event with a more general Formatting event, and added a Note event. (#6481)
  • Small optimization on manifest parsing benefitting large DAGs (#6697)
  • Revised and simplified various structured logging events (#6664, #6665, #6666)
  • dbt init works with click (#5548)
  • [CT-920][CT-1900] Create Click CLI runner and use it to fix dbt docs commands (#5544, #6722)
  • Migrate debug task to click (#5546)
  • Optimized GraphQueue to remove graph analysis bottleneck in large dags. (#6759)
  • Implement --version for click cli (#6757)
  • [CT-1841] Convert custom target test to Pytest (#6638)
  • Remove BigQuery-specific btye abbreviations (#6741)
  • warn_error/warn_error_options mutual exclusivity in click (#6579)
  • Enables the new Click Cli on the commandline! 🚀 (#6784)
  • Lazily call --version (#6812)
  • Moving simple_seed to adapter zone to help adapter test conversions (#CT-1959)
  • flags.THREADS defaults to None (#6887)
  • Fixing target type exposure error (#6928)
  • Test binary serialization of logging events (#6852)
  • Treat contract config as a python object (#6748, #7184)
  • Add deprecation warning for DBT_NO_PRINT (#6960)
  • Make output_keys click param multi-option instead of a string (#6676)
  • Remove cli doc generation workflow (#7088)
  • Move validation of group earlier (#7087)
  • Deprecate additional environment variables (#6903)
  • Add CommandCompleted event, and fire it upon completion of every command (#6878)
  • Improves build times for common selections by improving subgraph calculation (#7195)
  • Remove upper pin for hologram/jsonschema (#6775)
  • Generalize constraint compatibility warnings (#7067)
  • Add kwargs support to dbtRunner (#7070)
  • Add unique_id to ShowNode and CompiledNode logging events (#7305)
  • Prettify message for ListRelations event (#7310)
  • Parse now returns manifest when invoked via dbtRunner (#6547)
  • Track data about group, access, contract, version usage (#7170, #7171)
  • Update docs link in ContractBreakingChangeError message (#7366)
  • Update --help text for cache-related parameters (#7381)
  • Small UX improvements to model versions: Support defining latest_version in unsuffixed file by default. Notify on unpinned ref when a prerelease version is available. (#7443)

Dependencies

  • Update pathspec requirement from <0.11,>=0.9 to >=0.9,<0.12 in /core (#6737)
  • Bump ubuntu from 22.04 to 23.04 (#6865)
  • Revert hoisting dbt.cli.main into the dbt.name namespace (#)
  • Bump python from 3.11.1-slim-bullseye to 3.11.2-slim-bullseye in /docker (#7196)
  • Bump black from 22.12.0 to 23.3.0 (#7243)
  • Bump mashumaro[msgpack] from 3.3.1 to 3.6 (#7294)

Dependency

  • Bump mypy from 0.971 to 0.981 (#4904)
  • Bump python from 3.10.7-slim-bullseye to 3.11.1-slim-bullseye in /docker (#4904)
  • Bump black from 22.10.0 to 22.12.0 (#4904)

Contributors

Previous Releases

For information on prior major and minor releases, see their changelogs: