Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).

## [Unreleased]

## [0.4.0] - 2026-05-18

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The release 0.4.0 contains a critical bug in the data dependency resolution logic. In src/radical/asyncflow/workflow_manager.py at line 1140, the code attempts to access item["target"], where item is the result of self.backend.link_explicit_data_deps. However, in src/radical/asyncflow/backends.py, LocalExecutionBackend.link_explicit_data_deps returns None (line 410), which will cause a TypeError whenever explicit data dependencies are used with the local backend. Additionally, LocalExecutionBackend.shutdown (line 404) performs a blocking call to executor.shutdown(wait=True) within an async context, which will block the event loop.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Please ensure the package version is updated in the project metadata (e.g., pyproject.toml), as src/radical/asyncflow/__init__.py relies on importlib.metadata to report the version. Also, note that the use of signal.SIGUSR1 in workflow_manager.py (line 1256) will cause a crash on Windows, as that signal is not available on that platform. Consider using a more portable approach for internal shutdown signaling.


### Added

- **`WorkflowEngine.workflow_scope(workflow_id=None)`** — new async context
Expand Down
Loading