Blog
Dagster 1.10: Mambo No 5

Dagster 1.10: Mambo No 5

February 12, 2025
Dagster 1.10: Mambo No 5
Dagster 1.10: Mambo No 5

Intuitive Concurrency Controls, Improved ELT integrations, and Developer Experience Upgrades

We're excited to announce the release of Dagster 1.10 Mambo No. 5!

This release focuses on bringing clarity and consistency across the platform, making existing features more intuitive and enjoyable to learn. We've significantly improved core areas like concurrency management, ELT integrations, and developer experience.

Let's dive into the major improvements in this release.

Intuitive Concurrency Controls

One of the biggest challenges in managing data pipelines is controlling concurrent execution. With Dagster 1.10, we've completely revamped how concurrency works to make it easier to understand, configure, and monitor.

Concurrency Improvements

  • Unified Concurrency Pools: Rather than having separate APIs for run and operation concurrency, we've introduced the concept of concurrency "pools" that can be enforced at different granularities.
  • Enhanced UI Visibility: Concurrency information is now easily accessible and configurable directly in the UI.
  • # Before: Using tags for concurrency groups
    @asset(tags={"dagster/concurrency_key": "heavy_process"})
    def process_data():
        pass
    
    # After: Using explicit concurrency argument
    @asset(pool="heavy_process")
    def process_data():
        pass
  • Improved Configuration: Concurrency settings are now logically grouped under a dedicated concurrency block in deployment settings.

The new approach immediately clarifies what concurrency controls are in place and how they affect your pipelines.

Modernized ELT Integrations

We've refreshed our integrations with popular ELT tools like Fivetran and Airbyte to leverage Dagster's asset-based patterns better and provide enhanced visibility into your data pipelines.

Key Improvements

  • Customizable Asset Loading: A new translator pattern allows fine-grained control over how external tool assets are represented in Dagster
  • Simplified Interfaces: Consolidated multiple configuration methods into a single, intuitive get_asset_spec() method
  • from dagster_fivetran import (
        DagsterFivetranTranslator,
        FivetranConnectorTableProps,
        FivetranWorkspace,
        load_fivetran_asset_specs,
    )
    
    import dagster as dg
    
    fivetran_workspace = FivetranWorkspace(
        account_id=dg.EnvVar("FIVETRAN_ACCOUNT_ID"),
        api_key=dg.EnvVar("FIVETRAN_API_KEY"),
        api_secret=dg.EnvVar("FIVETRAN_API_SECRET"),
    )
    
    
    class MyCustomFivetranTranslator(DagsterFivetranTranslator):
        def get_asset_spec(self, props: FivetranConnectorTableProps) -> dg.AssetSpec:
            default_spec = super().get_asset_spec(props)
            return default_spec.replace_attributes(
                key=default_spec.key.with_prefix("prefix"),
            ).merge_attributes(metadata={"custom": "metadata"})
    
    
    fivetran_specs = load_fivetran_asset_specs(
        fivetran_workspace, dagster_fivetran_translator=MyCustomFivetranTranslator()
    )
    
    defs = dg.Definitions(assets=fivetran_specs, resources={"fivetran": fivetran_workspace})
  • Enhanced Metadata Visibility: Better surfacing of pipeline status and performance data

Developer Experience Improvements

We've made several quality-of-life improvements to make development with Dagster more seamless:

GRPC Server Consolidation

The dagster dev command now launches a single centralized server per code location, reducing computational overhead and minimizing process-related errors.

Enhanced Asset APIs

  • Flexible Dependency Declaration: Mix and match between deps parameter and argument-based dependencies
  • Improved IO Manager Support: Now works seamlessly with multi_asset_check
  • Per-Partition Metadata: Add specific metadata to individual partitions during materialization
  • @asset(deps=["upstream1", "upstream2"])
    def my_asset(upstream2):  # Only need argument for IO manager access
        pass
    
    @multi_asset_check(
        specs=[
            AssetCheckSpec("check1", asset=asset1),
            AssetCheckSpec("check2", asset=asset2),
        ]
    )
    def multi_check(asset1: int, asset2: int) -> Iterable[AssetCheckResult]:
        pass

New Module Loading APIs

We've introduced new APIs to simplify loading definitions from modules:

import dagster as dg
import package.submodule as my_submodule

defs = dg.load_definitions_from_module(my_submodule)

New API lifecycle

We've introduced new API lifecycle stages, with their own decorators, annotations and warnings, to help developers make informed decisions about which APIs to use in their projects.

  • Preview: Features at an early stage of development and testing are marked as preview.
  • Beta: Features that are still under development, but are ready for use in non-critical production environments, are marked as beta.
  • Superseded: Features that are still available, but no longer considered best practice, are marked as superseded.

Discover all API lifecycle stages in our guide.

Looking Forward

Dagster 1.10 represents our commitment to making data orchestration more intuitive and powerful. These improvements lay the groundwork for exciting features coming later this year.

pip install -U dagster

Want to try out these new features? Upgrade to Dagster 1.10 today:

Check out our updated documentation to learn more about these new features and improvements.

As always, we'd love to hear your feedback! Join us on Slack to share your thoughts and experiences with the new release.

Acknowledgments

We want to thank all community contributors for their efforts and innovations in making this release possible.

Fábio | HynekBlaha | Matthew Kuzyk | Meg McRoberts | Simon Heather | Alexander Grueneberg | Alexander Bogdanowicz | Aksel Stokseth | Alex Harris | Aleksei Kozharin | ARookieDS | Avril Aysha | Axell | Benoit Perigaud | Daniel | Anton Burnashev | Charles Lariviere | Chris Histe | Christopher Tee | Cooper Ellidge | Daniel Gafni | Jonas Thelemann | Dinis Rodrigues | divyanshu | David Liu | Danny Xie | Dan Schafer | Tyler Eason | Edson Nogueira | Egor Dmitriev | Ethan Wolinsky | Đỗ Trọng Hải | Ion Koutsouris | izzy | ja14000 | Judah Rand | kevin-longe-unmind | Kristian André Jakobsen | Louis Guitton | Marijn Valk | Matt Weingarten | Matthew Heguy | Niko | Oral Ersoy Dokumacı | ollie-bell | Pablo Recio | tianzedavid | Tiberiu Ana | Shane Zarechian | Adam Skärbo Jonsson | Andrew Ardill | Fredrik Bakken | GBBBAS | Marek H | Anton | HynekBlaha | Morten Kuhlwein | Francisco | Oren Lederman | Quinten Bruynseraede | Rhiyo | kamthanev | abhinavDhulipala | aimeecodes | Alex Harris| Alex Rasmussen | Aidas Petryla | Ben Gotow | Brian Tu | Charles Augello | Christopher Tee | Daniel Gafni | David Aktas-Beckschulte | David Baker | Daniel Bartley | Orestis Herodotou | Dinis Rodrigues | Dragos Pop | dwisdom-tk | Tyler Eason | Sergei Nikiforov | Gianfranco Demarco | David Beran | Ion Koutsouris | Ian Jenkins | jj | Joscha Feth | Josh Taylor | Josmar Cristello | kang | Marijn Valk | Melnikov Levy | Maryam Khan | Matt Weingarten | Michael Mussato | hvle | Rune Hessner | Pavel Roslovets | shimon pats | stigmarl | Eric Yoo | Thiago Azevedo | Martin Erpicum | V | Thanabodee Charoenpiriyakij | Thierry Jean | zyd14

Stay tuned for more updates and enhancements in future releases.

Have feedback or questions? Start a discussion in Slack or Github.

Interested in working with us? View our open roles.

Want more content like this? Follow us on LinkedIn.

Dagster Newsletter

Get updates delivered to your inbox

Latest writings

The latest news, technologies, and resources from our team.

Multi-Tenancy for Modern Data Platforms
Webinar

April 13, 2026

Multi-Tenancy for Modern Data Platforms

Learn the patterns, trade-offs, and production-tested strategies for building multi-tenant data platforms with Dagster.

Deep Dive: Building a Cross-Workspace Control Plane for Databricks
Webinar

March 24, 2026

Deep Dive: Building a Cross-Workspace Control Plane for Databricks

Learn how to build a cross-workspace control plane for Databricks using Dagster — connecting multiple workspaces, dbt, and Fivetran into a single observable asset graph with zero code changes to get started.

Dagster Running Dagster: How We Use Compass for AI Analytics
Webinar

February 17, 2026

Dagster Running Dagster: How We Use Compass for AI Analytics

In this Deep Dive, we're joined by Dagster Analytics Lead Anil Maharjan, who demonstrates how our internal team utilizes Compass to drive AI-driven analysis throughout the company.

Dagster 1.13: Octopus's Garden
Dagster 1.13: Octopus's Garden
Blog

April 9, 2026

Dagster 1.13: Octopus's Garden

Dagster skills, partitioned asset checks, state backed components, virtual assets, and stronger integrations.

Monorepos, the hub-and-spoke model, and Copybara
Monorepos, the hub-and-spoke model, and Copybara
Blog

April 3, 2026

Monorepos, the hub-and-spoke model, and Copybara

How we configure Copybara for bi-directional syncing to enable a hub-and-spoke model for Git repositories

Making Dagster Easier to Contribute to in an AI-Driven World
Making Dagster Easier to Contribute to in an AI-Driven World
Blog

April 1, 2026

Making Dagster Easier to Contribute to in an AI-Driven World

AI has made contributing to open source easier but reviewing contributions is still hard. At Dagster, we’re improving the contributor experience with smarter review tooling, clearer guidelines, and a focus on contributions that are easier to evaluate, merge, and maintain.

How Magenta Telekom Built the Unsinkable Data Platform
Case study

February 25, 2026

How Magenta Telekom Built the Unsinkable Data Platform

Magenta Telekom rebuilt its data infrastructure from the ground up with Dagster, cutting developer onboarding from months to a single day and eliminating the shadow IT and manual workflows that had long slowed the business down.

Scaling FinTech: How smava achieved zero downtime with Dagster
Case study

November 25, 2025

Scaling FinTech: How smava achieved zero downtime with Dagster

smava achieved zero downtime and automated the generation of over 1,000 dbt models by migrating to Dagster's, eliminating maintenance overhead and reducing developer onboarding from weeks to 15 minutes.

Zero Incidents, Maximum Velocity: How HIVED achieved 99.9% pipeline reliability with Dagster
Case study

November 18, 2025

Zero Incidents, Maximum Velocity: How HIVED achieved 99.9% pipeline reliability with Dagster

UK logistics company HIVED achieved 99.9% pipeline reliability with zero data incidents over three years by replacing cron-based workflows with Dagster's unified orchestration platform.

Modernize Your Data Platform for the Age of AI
Guide

January 15, 2026

Modernize Your Data Platform for the Age of AI

While 75% of enterprises experiment with AI, traditional data platforms are becoming the biggest bottleneck. Learn how to build a unified control plane that enables AI-driven development, reduces pipeline failures, and cuts complexity.

Download the eBook on How to Scale Data Teams
Guide

November 5, 2025

Download the eBook on How to Scale Data Teams

From a solo data practitioner to an enterprise-wide platform, learn how to build systems that scale with clarity, reliability, and confidence.

Download the eBook Primer on How to Build Data Platforms
Guide

February 21, 2025

Download the eBook Primer on How to Build Data Platforms

Learn the fundamental concepts to build a data platform in your organization; covering common design patterns for data ingestion and transformation, data modeling strategies, and data quality tips.