Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR introduces a recursive compile feature for workflows that contain workflow components (i.e., a workflow within a workflow). Previously, users had to manually navigate through each nested workflow component and compile them one by one, which is be tedious especially for deep workflows. With this update, recursive compilation is now automated.
Key Updates:
Backend / Jupyter Server Backend:
.xircuits
file, detects workflow components using the conditionif extras.get('type') == "xircuits_workflow"
, and recursively compiles them.Frontend (JupyterLab):
xircuits compile workflow.xircuits
from the CLI will invoke the recursive compile function by default.--no-recursive
flag is added for users who prefer to compile only the top-level workflow without its components.Pull Request Type
Please check the box that most accurately describes the type of changes in this PR:
Type of Change
Select the appropriate change type:
Tests
Please follow these steps to verify the changes:
Set up a workflow containing nested workflow components:
Front-end Tests:
CLI Tests:
xircuits compile workflow.xircuits
command and confirm that the recursive compile works.--no-recursive
flag to ensure only the top-level workflow is compiled.Tested on:
Please indicate the platforms where these changes were tested: