# Announcing Dagster 1.4: Material Girl

> Dagster 1.4 adds enhanced dbt support and asset materialization controls to give you more orchestration power.

Source: https://dagster.io/blog/dagster-1-4-material-girl
Published: 2023-07-21

We are pleased to announce that Dagster 1.4.0 —  “Material Girl” —   is now available on Dagster Cloud and in Open Source.  Full details on the release [can be found in the release notes](https://github.com/dagster-io/dagster/releases/tag/1.4.0), but here are the highlights:

## Supercharge dbt™

The headlining act on this release is **the dagster-dbt enhancements**.  While Dagster already provided a [dagster-dbt integration](https://dagster.io/integrations/dagster-dbt) (as well as a [dbt Cloud integration](https://dagster.io/integrations/dagster-dbt-cloud)), we have gathered input from Dagster users who rely heavily on dbt and introduced brand new capabilities:

- A [new @dbt-assets decorator](https://docs.dagster.io/integrations/libraries/dbt/dagster-dbt) allows much more control over how Dagster runs your dbt project.
- A new scaffolding command line interface makes it easy to create files and directories for a Dagster project that wraps an existing dbt project.
- Improved APIs for defining asset dependencies between upstream dbt assets and downstream non-dbt assets. It is now much easier to specify dependencies between dbt models and upstream non-dbt assets by specifying Dagster asset keys in the dbt metadata for dbt sources.

[Video: Embedded article media](https://www.youtube.com/watch?v=yv97Xgbwwmo)

\>    View the Aug 2nd, 2023 event in which the Dagster team reviewed the new functionality.

#### Evolving asset materialization, improving the UI, and more

We continue to evolve asset materialization, giving you more fine-grained control and observability over when, why, and how your computations run.  These include **auto-materialization history**, **auto-materialization performance**, **asset backfill cancellation**, and a new **group-level asset status UI**.

![Dagster's new optional horizontal alignment.](https://dagster.io/blog-assets/c49ae974d9b1dc65df9e.png)

   Dagster's new auto-materialization history provides complete transparency over how materialization rules were executed.

![Dagster's new optional horizontal alignment.](https://dagster.io/blog-assets/08181b4af04e885ee070.png)

   The auto-materialization history provides granular details down to the partition level.

![Dagster's new optional horizontal alignment.](https://dagster.io/blog-assets/37e4b978e587a91135ec.png)

   The new Assets Overview dashboard shows the status of all assets in your deployment, rolled up by group.

We have introduced two new experimental features:  [**op-level concurrency limits**](https://docs.dagster.io/guides/operate/managing-concurrency) and the ability to [**observe source assets without defining jobs**](https://docs.dagster.io/guides/automate/declarative-automation#auto-materialize-policies-and-data-versions).

We have also focused on improving some of the framework ergonomics, making it more logical and accessible.  Improvements here include:

- **Deprecation of `non_argument_deps` in favor of a new `deps` parameter** (makes it clear that this is a first-class way of defining dependencies, makes code more concise, while still accepting previous parameters)
- **Renaming Dagit to Dagster UI** (reducing the number of terms that new users need to learn)
- **Auto-populating the launchpad with default field values** (reducing cognitive load).

We have moved some features out of the “experimental” stage: `DynamicPartitionDefinition` and `SensorResult`.

Finally, we have a new UI layout change that is flagged as `experimental` and open to your feedback in [the GitHub discussion found here](https://github.com/dagster-io/dagster/discussions/15426).  The new layout renders the graph horizontally left-to-right instead of vertically. You can try the new horizontal asset graph layout by enabling the `Experimental horizontal asset DAGs` feature flag in your user settings. Give it a try, and let us know what you think.

![Dagster's default vertical alignment.](https://dagster.io/blog-assets/c2b249c87b0430993f73.png)

       Dagster's default vertical alignment.

![Dagster's new optional horizontal alignment.](https://dagster.io/blog-assets/de43c7abcdf71b7c1fff.png)

       Dagster's new optional horizontal alignment.

#### 1.4 Contributors:

We would like to thank all of the contributors to the 1.4 Dagster Core release.

[askvinni](https://github.com/askvinni) | [yuvalgimmunai](https://github.com/yuvalgimmunai)  | [nigelainscoe](https://github.com/nigelainscoe) | [plaflamme](https://github.com/plaflamme)  | [danielecappuccio](https://github.com/danielecappuccio)  | [armandobelardo](https://github.com/armandobelardo)  | [boenshao](https://github.com/boenshao)  | [loerinczy](https://github.com/loerinczy)  | [akan72](https://github.com/akan72)  | [out-running-27](https://github.com/out-running-27)  | [guy-rvvup](https://github.com/guy-rvvup)  | [thijs-blom](https://github.com/thijs-blom)  | [jrouly](https://github.com/jrouly)  | [adeboyed](https://github.com/adeboyed)  | [snikch](https://github.com/snikch)  | [chrishiste](https://github.com/chrishiste)  | [renzhe-brian](https://github.com/renzhe-brian)  | chodera  | [joel-olazagasti](https://github.com/joel-olazagasti)  | [danielgafni](https://github.com/danielgafni)  | [KMontag42](https://github.com/KMontag42)  | [srggrs](https://github.com/srggrs)  | [Jinior](https://github.com/Jinior)  | [ldnicolasmay](https://github.com/ldnicolasmay)  | [Elliot2718](https://github.com/Elliot2718)  | [PeterJCLaw](https://github.com/PeterJCLaw)  | [Tanguy-LeFloch](https://github.com/Tanguy-LeFloch)  | [leehuwuj](https://github.com/leehuwuj)  | [weberdavid](https://github.com/weberdavid)  | [keyz](https://github.com/keyz)  | [pdstrnadJC](https://github.com/pdstrnadJC)  | [nina-j](https://github.com/nina-j)  | [wkeifenheim](https://github.com/wkeifenheim)  | rubikplanet
