Install

Works with Drupal: ^11.3 || ^12

Using Composer to manage Drupal site dependencies

Alternative installation files

Download tar.gz 3 MB
MD5: 633d9324acfd09d57de50cdde8ef6c72
SHA-1: 6d8f8fc314531ab767b70637b7c32e0cf92d2371
SHA-256: 654bcf46d1f5270aca67a73f826618b2b1ba71eb91251d597c0fe97985836741
Download zip 4.3 MB
MD5: 0efc0959aa498928e81c9bb236cbe626
SHA-1: edf203acac28949d6d7e7d800ce490c274cc238e
SHA-256: 2c9150625e78f23ee6635900fc55ab25e004006ad8e3a1e4668e8fe8a326e3b7

Release notes

WARNING: THERE IS NO MIGRATION PATH. YOU MUST REINSTALL FROM SCRATCH.

Do not update an existing site to this release. Orchestra ships no update hooks, and none is coming until the first beta release. A site on an earlier alpha holds a database and configuration this code does not match.

Uninstall the Orchestra modules, drop what they leave behind, and install 1.0.0-alpha25 fresh. Every instance, token, task, incident, variable, attachment and delegation from an earlier alpha is lost, and that is expected.

Between alpha24 and alpha25 in particular, a subprocess node no longer has relaunch_attempts and relaunch_backoff: the step's retry policy does that job now. A step can carry a new on_failure feature, the engine settings gain max_parked_step_attempts, and the audit trail settings gain a failed event. The inbox history is a view of its own, orchestra_inbox_history, and the inbox and requests views render their rows with a new row style. Two sites talking to each other must run the same release: the wire version goes back to 1 and stays there until the first beta.

New

Fixes worth naming

Changed

  • A subprocess node's Re-launch on failure and Re-launch delay are gone: set the step's retry policy instead. #3633774
  • A step's failure handling reads If this step fails, and the site setting If a step fails. #3634075: Word a step's failure handling as "If this step fails" instead of "fails for good"
  • The inbox history is a view of its own, orchestra_inbox_history, at /orchestra/views/inbox/history, instead of a display of the inbox view. #3633526
  • The modeler warns, when a workflow is saved, about settings that are valid but often a mistake, such as credentials sent over plain http, or a failure outcome whose step has a flow with no condition, which a failed step takes too. #3633763 #3633764

For theme developers

  • The inbox and requests cards come from a views row style, Orchestra card, instead of a preprocess keyed on the view ids, so a copy of a shipped view keeps its card. views-view-fields--orchestra-inbox.html.twig and views-view-fields--orchestra-requests.html.twig are removed; views-view-orchestra-card.html.twig is new. #3633526

For module developers

  • A step's work can fail while it is parked: ProcessControlInterface::failParkedStep() and isWaitingForRetry(), and StepFailedException for work found to have failed while the step runs. WorkflowEngineInterface gains OUTCOME_FAILED and OUTCOME_CANCELED. ProcessControlInterface::launchChild() and the relaunch methods of SubprocessTaskInterface are removed. #3633763 #3633774
  • A node feature or a task type can warn about a workflow when it is saved, through NodeFeatureWarningsInterface and TaskTypeWarningsInterface. #3633763 #3633764
  • Drupal\orchestra\VariableSplitter replaces Drupal\orchestra_webform\SubmissionValueSplitter. #3633987
  • SubprocessEndingRulesInterface::getOutputVariables() replaces getResumeVariables(): it is the child's output under the parent's names, read when the child ends and by the live pass-up. WorkflowDefinitionInterface::getFlow() finds a flow by its id. TimeoutActionBase::getTimeoutOutcome() and FALLBACK_OUTCOME give the timeout outcome one home. #3634195
  • The BPMN.io editor scripts share one wait for the modeler, Drupal.orchestraBpmnIo.whenReady() in the orchestra_bpmn_io/modeler_ready library. #3634195
  • WireVersion::CURRENT is 1 again, like MINIMUM, until the first beta. #3634193

Housekeeping

  • The codebase metrics page is refreshed: 1,697 files and 165,722 lines of code.
Created by: mably
Created on: 29 Oct 2026 at 23:03 UTC
Last updated: 29 Oct 2026 at 23:03 UTC
Bug fixes
New features

Other releases