Skip to content

0.15.5 (2022-07-07)

Compare
Choose a tag to compare
@jmsanders jmsanders released this 07 Jul 21:57
· 7241 commits to master since this release

New

  • Added documentation and helm chart configuration for threaded sensor evaluations.
  • Added documentation and helm chart configuration for tick retention policies.
  • Added descriptions for default config schema. Fields like execution, loggers, ops, and resources are now documented.
  • UnresolvedAssetJob objects can now be passed to run status sensors.
  • [dagit] A new global asset lineage view, linked from the Asset Catalog and Asset Group pages, allows you to view a graph of assets in all loaded asset groups and filter by query selector and repo.
  • [dagit] A new option on Asset Lineage pages allows you to choose how many layers of the upstream / downstream graph to display.
  • [dagit] Dagit's DAG view now collapses large sets of edges between the same ops for improved readability and rendering performance.

Bugfixes

  • Fixed a bug with materialize that would cause required resources to not be applied correctly.
  • Fixed issue that caused repositories to fail to load when build_schedule_from_partitioned_job and define_asset_job were used together.
  • Fixed a bug that caused auto run retries to always use the FROM_FAILURE strategy
  • Previously, it was possible to construct Software-Defined Assets from graphs whose leaf ops were not mapped to assets. This is invalid, as these ops are not required for the production of any assets, and would cause confusing behavior or errors on execution. This will now result in an error at definition time, as intended.
  • Fixed issue where the run monitoring daemon could mark completed runs as failed if they transitioned quickly between STARTING and SUCCESS status.
  • Fixed stability issues with the sensor daemon introduced in 0.15.3 that caused the daemon to fail heartbeat checks if the sensor evaluation took too long.
  • Fixed issues with the thread pool implementation of the sensor daemon where race conditions caused the sensor to fire more frequently than the minimum interval.
  • Fixed an issue with storage implementations using MySQL server version 5.6 which caused SQL syntax exceptions to surface when rendering the Instance overview pages in Dagit.
  • Fixed a bug with the default_executor_def argument on repository where asset jobs that defined executor config would result in errors.
  • Fixed a bug where an erroneous exception would be raised if an empty list was returned for a list output of an op.
  • [dagit] Clicking the "Materialize" button for assets with configurable resources will now present the asset launchpad.
  • [dagit] If you have an asset group and no jobs, Dagit will display it by default rather than directing you to the asset catalog.
  • [dagit] DAG renderings of software-defined assets now display only the last component of the asset's key for improved readability.
  • [dagit] Fixes a regression where clicking on a source asset would trigger a GraphQL error.
  • [dagit] Fixed issue where the “Unloadable” section on the sensors / schedules pages in Dagit were populated erroneously with loadable sensors and schedules
  • [dagster-dbt] Fixed an issue where an exception would be raised when using the dbt build command with Software-Defined Assets if a test was defined on a source.

Deprecations

  • Removed the deprecated dagster-daemon health-check CLI command

Community Contributions

  • TimeWindow is now exported from the dagster package (Thanks @nvinhphuc!)
  • Added a fix to allow customization of slack messages (Thanks @solarisa21!)
  • [dagster-databricks] The databricks_pyspark_step_launcher now allows you to configure the following (Thanks @Phazure!):
    • the aws_attributes of the cluster that will be spun up for the step.
    • arbitrary environment variables to be copied over to databricks from the host machine, rather than requiring these variables to be stored as secrets.
    • job and cluster permissions, allowing users to view the completed runs through the databricks console, even if they’re kicked off by a service account.

Experimental

  • [dagster-k8s] Added k8s_job_op to launch a Kubernetes Job with an arbitrary image and CLI command. This is in contrast with the k8s_job_executor, which runs each Dagster op in a Dagster job in its own k8s job. This op may be useful when you need to orchestrate a command that isn't a Dagster op (or isn't written in Python). Usage:

    from dagster_k8s import k8s_job_op
    
    my_k8s_op = k8s_job_op.configured({
     "image": "busybox",
     "command": ["/bin/sh", "-c"],
     "args": ["echo HELLO"],
     },
     name="my_k8s_op",
    )
  • [dagster-dbt] The dbt asset-loading functions now support partitions_def and partition_key_to_vars_fn parameters, adding preliminary support for partitioned dbt assets. To learn more, check out the Github issue!

All Changes

0.15.4...0.15.5

See All Contributors
  • 5192aa0 - Remove unused check_heartbeats arg (#8673) by @johannkm
  • 45e5019 - docs: use dagster brand colors for README (#8660) by @rexledesma
  • a09234a - fix: use absolute url for README images (#8676) by @rexledesma
  • 7a34e49 - Expose TimeWindow in dagster package (#8643) by @nvinhphuc
  • 9842ba8 - hold shift to force asset config modal (#8668) by @smackesey
  • d0ffb1e - add helm values for configuring instance sensor config (#8657) by @prha
  • b335d19 - [dagit] If you have no jobs, prefer routing to asset group over asset catalog (#8613) by @bengotow
  • 44bac29 - [dagit] Add control for graph depth on the Asset Lineage page, default to 5 (#8531) by @bengotow
  • 593cfc4 - [assets] Fix issue with graph backed assets + partitions (#8682) by @OwenKephart
  • eeb23e6 - [dagster-dbt] rework dagster dbt logging, cleanup (#8681) by @OwenKephart
  • b6396aa - Yield run requests from run status sensors (#8635) by @jamiedemaria
  • f53d5f4 - fix docs build (#8688) by @OwenKephart
  • 62801c8 - apidoc for AssetSelection and AssetsDefinition (#8618) by @sryza
  • 17b5233 - Materialize has resources arg, materialize_to_memory sets mem_io_manager for all io managers (#8659) by @dpeng817
  • 44d95b1 - Load asset launchpad for assets with configurable resources (#8677) by @smackesey
  • 01cfe05 - docs: update external links for github issues (#8661) by @rexledesma
  • c1cb62b - docs: convert github issue templates to forms (#8663) by @rexledesma
  • d338a0e - switch unloadable states to dedupe by selector id (#8656) by @prha
  • d3678bc - 0.15.3 changelog (#8690) by @dpeng817
  • e0d5dcb - Automation: versioned docs for 0.15.3 by @elementl-devtools
  • dc91a2d - docs: remove extra cruft from issue form (#8701) by @rexledesma
  • ca432f7 - docs: improve left nav for items with children DREL-359 (#8693) by @yuhan
  • b88b33e - docs: fix prev/next pagination (#8697) by @yuhan
  • 47118bb - docs: docs test should capture Next Image broken links and fix broken links (#8702) by @yuhan
  • 293db00 - [dagit] Display last asset key component on DAG rather than truncated full path (#8692) by @bengotow
  • 0d65304 - [dagit] Collapsed DAG rendering of multiple edges between the same ops (#8479) by @bengotow
  • 7d5bcc8 - [dagit] Add Analytics context (#8674) by @hellendag
  • 3e2fe7e - order the backfill partitions before creating (#8703) by @prha
  • 0533455 - skip threadpool sensor daemon tests (#8717) by @prha
  • 863ba80 - skip threaded sensor tests in py36 (#8726) by @prha
  • dc0fbe8 - Allow run status sensors to support unresolved asset jobs (#8689) by @smackesey
  • 979d644 - [dagster_databricks] - support configuration of job / cluster permissions (#8683) by @Phazure
  • a9ff7ca - [dagster_databricks] support aws_attributes (#8684) by @Phazure
  • 150a06b - [Job Log perf] Use rAF to call throttleSetNodes (#8735) by @salazarm
  • 33f059f - [dagster_databricks] support arbitrary env variables (#8685) by @Phazure
  • c72634c - minor changes to make dev_install (#8745) by @smackesey
  • bc227bb - Remove deprecated daemon health-check cli (#8751) by @johannkm
  • a57caf3 - Add reexecution strategy to auto run retries (#8718) by @johannkm
  • d90fc4a - Fix for blocks_fn option (#8448) by @clairelin135
  • 2d9a9e7 - Automation: versioned docs for 0.15.4 by @elementl-devtools
  • d4735dc - Improve race condition in run monitor (#8729) by @brad-alexander
  • 6f4b300 - Add get_daemon_statuses instance method (#8752) by @johannkm
  • b974184 - 0.15.4 changelog here (#8766) by @prha
  • bdca087 - add retention helm values (#8724) by @prha
  • 823a5d8 - Op that runs a kubernetes job (#8161) by @gibsondan
  • 62f41c4 - [op] fix empty list output bug (#8763) by @alangenfeld
  • 4d88332 - [dagster-dbt] Allow SDAs generated with load_assets_from_dbt* to be partitioned (#8725) by @OwenKephart
  • 874a368 - add validation for graph backed asset graphs (#8754) by @OwenKephart
  • 38ae84b - docs: update config schema descriptions for default executors (#8757) by @rexledesma
  • 0779ab7 - [dagster-dbt] Fix error that occurs when generating events for tests that depend on sources (#8775) by @OwenKephart
  • 5f92ca1 - Restore sensor daemon yielding when evaluating sensors synchronously (#8756) by @prha
  • 4176e42 - bypass bucketed queries for mysql versions that do not support it (#8753) by @prha
  • fd1a3d9 - prevent multiple sensor evaluations from multithreaded race conditions (#8720) by @prha
  • 4058bb5 - Fold asset_defs submodule into main dagster structure (#8446) by @smackesey
  • 87e291e - Fix config case for default executor (#8777) by @dpeng817
  • 1544643 - Ensure graph inputs/outputs are included in all_dagster_types (#8736) by @smackesey
  • eeeb82c - [dagit] Bring back the global asset graph as an “all asset groups” view (#8709) by @bengotow
  • e40122e - fix source asset regression (#8784) by @smackesey
  • 2fe13df - improve error for build_schedule_from_partitioned_job with non-partitioned asset job (#8776) by @sryza
  • a42146f - fix issue with repos and partitioned scheduled asset jobs (#8779) by @sryza
  • 798e9c1 - 0.15.5 Changelog (#8781) by @prha
  • 39fecd4 - Fix bug with how resources are applied in materialize (#8790) by @dpeng817
  • 8f9f0d0 - 0.15.5 by @elementl-devtools