Building and executing BPMN diagrams with SpiffWorkflow keeps getting faster and easier. We've shipped dozens of improvements since early January — here are three highlights worth knowing about.
Easier, Faster BPMN Development with Auto-Complete of Variables
We've added intelligent code completion for user tasks, manual tasks and script tasks — making it far easier to pick up existing variables and use them in follow-on steps. Check out our demo video.
Simpler, Cleaner Connections to All of Your Other Systems
Connecting to external services just got simpler. Service tasks can now wait for async callbacks natively — no more pairing a service task with a separate message receive task. There is a video of this as well.
More Secure Integration Layer
Added an optional API key authentication for connector proxy calls. You can still secure API calls at the individual connector level, but this enhancement allows you to secure all of your connectors at once through a single configuration.
More Features, Bug Fixes, Docs and Updates
- Testing BPMN Messages from your Browser — Some of our users work heavily with messages. This quick video explains how to send messages into a BPMN process from another tab in your browser.
- Extracted BPMN Editor from Spiff Arena into Separate Package — We extracted the BPMN editor, viewer and debugger from Spiff Arena into a standalone package. Improves code modularity and reusability and makes it easier for others to develop and integrate BPMN editors into their own systems. While most of our effort is in the new ED Editor, this package is available for adoption and extension for the open source community. spiff-arena #2684
- Human Task Webhook Notifications — Sends webhook events when human tasks are created or removed. Enables real-time task change monitoring. spiff-arena #2697
- GitLab Sync Integration — Adds GitLab support to sync functionality. Enables version control with GitLab repositories. aggregate-connector-proxy #167
- Fix Parallel Human Task Submission — Fixes race condition in parallel task submission with processor-level locking. Adds load testing for parallel tasks. spiff-arena #2678
- Add Connector and Editor Docs — Adds comprehensive documentation for Connector Proxy deployment and ED Editor BPMN editing features. spiff-arena #2671
- Data Item Name Validation — Incorporates data item name validation from bpmn-js-spiffworkflow library. Prevents invalid variable names. spiff-arena #2689
- Cancel Unused Message Models — Marks message models as cancelled when process instances stop listening. Cleans up orphaned messages in database. spiff-arena #2682
- Refresh Call Activity DMN — Ensures DMN from first-level call activities stay current. Prevents stale decision model data. aggregate-connector-proxy #185
- Display Step Error Information — Shows detailed step information when errors occur. Improves error debugging experience. aggregate-connector-proxy #177
- Validate Data Item IDs — Validates data input/output and object IDs, preventing dashes and invalid Python variable names. Auto-converts dashes to underscores on creation. bpmn-js-spiffworkflow #140
- Link Subworkflows in Event Logs — Adds variables to event logs connecting subworkflows with parent processes. Improves process hierarchy tracking. spiff-arena #2681
- Move Test Runner to Common — Migrates BPMN unit test runner and task coverage to common package. spiff-arena #2691
- Add Unit Test Strategy — Introduces unittest strategy that completes tasks when test fixtures exist. Supports upcoming CI/CD diagram testing. spiff-arena #2688
- Filter Files During Sync — Adds file filtering during sync operations. Prevents unwanted files from syncing. aggregate-connector-proxy #175
- Fix PNPM Installation Issue — Allows pnpm install without deleting node_modules first. Simplifies dependency management. aggregate-connector-proxy #170