New
AssetMaterialization
now has ametadata
property, which allows accessing the materialization’s metadata as a dictionary.DagsterInstance
now has aget_latest_materialization_event
method, which allows fetching the most recent materialization event for a particular asset key.RepositoryDefinition.load_asset_value
andAssetValueLoader.load_asset_value
now work with IO managers whoseload_input
implementation accesses theop_def
andname
attributes on theInputContext
.RepositoryDefinition.load_asset_value
andAssetValueLoader.load_asset_value
now respect theDAGSTER_HOME
environment variable.InMemoryIOManager
, theIOManager
that backsmem_io_manager
, has been added to the public API.- The
multi_asset_sensor
(experimental) now supports marking individual partitioned materializations as “consumed”. Unconsumed materializations will appear in future calls to partitioned context methods. - The
build_multi_asset_sensor_context
testing method (experimental) now contains a flag to set the cursor to the newest events in the Dagster instance. TableSchema
now has a static constructor that enables building it from a dictionary of column names to column types.- Added a new CLI command
dagster run migrate-repository
which lets you migrate the run history for a given job from one repository to another. This is useful to preserve run history for a job when you have renamed a repository, for example. - [dagit] The run timeline view now shows jobs grouped by repository, with each repository section collapsible. This feature was previously gated by a feature flag, and is now turned on for everyone.
- [dagster-airbyte] Added option to specify custom request params to the Airbyte resource, which can be used for auth purposes.
- [dagster-airbyte] When loading Airbyte assets from an instance or from YAML, a filter function can be specified to ignore certain connections.
- [dagster-airflow]
DagsterCloudOperator
andDagsterOperator
now support Airflow 2. Previously, installing the library on Airflow 2 would break due to an import error. - [dagster-duckdb] A new integration with DuckDB allows you to store op outputs and assets in an in-process database.
Bugfixes
- Previously, if retries were exceeded when running with
execute_in_process
, no error would be raised. Now, aDagsterMaxRetriesExceededError
will be launched off. - [dagster-airbyte] Fixed generating assets for Airbyte normalization tables corresponding with nested union types.
- [dagster-dbt] When running assets with
load_assets_from_...(..., use_build=True)
, AssetObservation events would be emitted for each test. These events would have metadata fields which shared names with the fields added to the AssetMaterialization events, causing confusing historical graphs for fields such as Compilation Time. This has been fixed. - [dagster-dbt] The name for the underlying op for
load_assets_from_...
was generated in a way which was non-deterministic for dbt projects which pulled in external packages, leading to errors when executing across multiple processes. This has been fixed.
Dependency changes
- [dagster-dbt] The package no longer depends on pandas and dagster-pandas.
Community Contributions
- [dagster-airbyte] Added possibility to change request timeout value when calling Airbyte. Thanks @FransDel!
- [dagster-airflow] Fixed an import error in
dagster_airflow.hooks
. Thanks @bollwyvl! - [dagster-gcp] Unpin Google dependencies.
dagster-gcp
now supports google-api-python-client 2.x. Thanks @amarrella! - [dagstermill] Fixed an issue where DagsterTranslator was missing an argument required by newer versions of papermill. Thanks @tizz98!
Documentation
- Added an example, underneath examples/assets_smoke_test, that shows how to write a smoke test that feeds empty data to all the transformations in a data pipeline.
- Added documentation for
build_asset_reconciliation_sensor
. - Added documentation for monitoring partitioned materializations using the
multi_asset_sensor
and kicking off subsequent partitioned runs. - [dagster-cloud] Added documentation for running the Dagster Cloud Docker agent with Docker credential helpers.
- [dagster-dbt] The class methods of the dbt_cli_resource are now visible in the API docs for the dagster-dbt library.
- [dagster-dbt] Added a step-by-step tutorial for using dbt models with Dagster software-defined assets
All Changes
1.0.12...1.0.13
See All Contributors
[dagit] Run timeline: reduce scheduled tick width, reduce chunk min width (#9913)
by @hellendag
[dagster-airflow] Add DagsterOperator and associated airflow abstractions (#9780)
by @Ramshackle-Jamathon
partition_key and upstream_output.asset_key in load_asset_value (#9914)
by @sryza
Pin dask-kubernetes until we switch KubeCluster (#9918)
by @jmsanders
Fix executor test (#9919)
by @gibsondan
Automation: versioned docs for 1.0.12
by @elementl-devtools
change log for 1.0.12 (#9923)
by @sryza
respect DAGSTER_HOME in AssetValueLoader (#9922)
by @sryza
[dagit] Create Overview root (#9907)
by @hellendag
fix 1.0.12 changelog (#9925)
by @sryza
[dagit] Bucketed virtualized tables for Jobs, Schedules, Sensors (#9909)
by @hellendag
[Feature] Add possibility to change request timeout value when calling airbyte (#9906)
by @FransDel
asset selection diff apidoc (#9917)
by @sryza
add InMemoryIOManager to public API (#9882)
by @sryza
add SDAs to fs_io_manager docstring examples (#9872)
by @sryza
Explicitly error when retries are exceeded if raise_on_error is set (#9934)
by @dpeng817
add cli command to migrate job runs from one repo to another (#9376)
by @prha
add empty
init.pyto make
dagster_airflow.hooks,
.links importable (#9932)
by @bollwyvl
Add metadata hooks for making grpc client calls (#9825)
by @gibsondan
TableSchema.from_name_type_dict (#9926)
by @sryza
linting fixups for dagster-airflow (#9948)
by @Ramshackle-Jamathon
add name and op_def to asset value load context (#9942)
by @sryza
[dagster-io/ui] Middle truncation (#9933)
by @hellendag
Unpin google dependencies (#9319)
by @amarrella
[dagster-dbt] Fix dbt asset op name (#9963)
by @OwenKephart
Add asset_selection arg to execute_job (#9876)
by @dpeng817
Convert definitions tests to use graph/job/op APIs (#9736)
by @dpeng817
make it easier to fetch asset materialization metadata (#9951)
by @sryza
Data pipeline smoke test example (#9945)
by @sryza
remove dagster-dbt deps on pandas and dagster-pandas (#9953)
by @sryza
Add skipped events to multi asset sensor context (#9903)
by @clairelin135
[dagstermill] update DagsterTranslator to support newer versions of papermill (#9901)
by @tizz98
[dagster-io/ui] Test and comments for middle truncation search (#9955)
by @hellendag
[dagster-dbt] fix dbt test metadata (#9965)
by @OwenKephart
Show noteable logo on noteable backed assets/ops (#9916)
by @jamiedemaria
Flag to set cursor to latest materializations on build_multi_asset_sensor_context (#9814)
by @clairelin135
[docs] asset reconciliation sensor concept page (#9912)
by @jamiedemaria
support asset keys and asset selection for multi asset sensors (#9954)
by @jamiedemaria
[docs] - Partitioned multi asset sensor examples (#9722)
by @clairelin135
Update multi asset sensor docstring (#9971)
by @jamiedemaria
Clarify
with_resources error and update docs (#9784)
by @clairelin135
Add threading to scheduler daemon (#9885)
by @dpeng817
Ignore warnings sent from the dagster module (#9577)
by @dpeng817
[dagster-airflow] remove default param for parent init (#9966)
by @Ramshackle-Jamathon
Fix incorrect secrets_tags docs (#9980)
by @gibsondan
Document cloud Docker credential helpers (#9982)
by @jmsanders
[dagster-dbt] boldly ignore type hints (#9989)
by @OwenKephart
Increase timeout in asset sensor tests (#9990)
by @jamiedemaria
[dagster-dbt] make dbt cli resource methods public (#9973)
by @OwenKephart
duckdb integration library (#9869)
by @jamiedemaria
Fix materialization count by partition (#9979)
by @clairelin135
[dagit] Turn on timeline run bucketing for everyone (#9993)
by @hellendag
[dagster-airbyte] Support union types while generating normalization tables (#9937)
by @benpankow
[dagster-airbyte] Add option to specify custom API request params to Airbyte resource (#10000)
by @benpankow
[dagster-airbyte] Add optional connection name filter when generating assets (#9975)
by @benpankow
[docs] Update deployment settings reference with SSO default role (#9984)
by @benpankow
[docs] - dbt-focused intro tutorial (#9853)
by @jamiedemaria
1.0.13 changelog (#10010)
by @yuhan
Don't raise an exception when changing the EcsRunLauncher's container name to a new name (#10026)
by @gibsondan
1.0.13
by @elementl-devtools