Pebble Stream Flow Workflow Server Release Notes
This page keeps track of release by release improvements in the Pebble Stream Flow
Release 2.2.0
This release further expands the capabilities of the workflow server and significantly improves performance. Flow now supports integration with Zen, CSV data source creation, enhanced download capabilities, improved error reporting, and bug fixes.
| Note | Description | Comments |
|---|---|---|
| Feature | New generate-rows, prune, apportion, and relieve directives approved for general use. | Provides more data transformation options. |
| Feature | Custom function support | Pebble Stream Flow's debut of custom functions prefixed with PS. |
| Feature | Organization custom functions | We can now create custom functions for your company or organization. |
Release 2.1.0-beta
This release further expands the capabilities of the workflow server and significantly improves performance. Flow now supports integration with Zen, CSV data source creation, enhanced download capabilities, improved error reporting, and bug fixes.
| Note | Description | Comments |
|---|---|---|
| Feature | Implement a visual cue on the target spreadsheet to highlight the group or each worksheet. | On larger workflows, it was hard to distinguish connection types if the connection lines crossed. |
| Feature | If the target worksheet is a subset of the source worksheet's headers, Flow will now allow that connection. | Previously, Flow only allowed worksheet connections where all the headers and types were matched. |
| Feature | Data files are written to the blob store using Azure append logic | This dramatically reduces the number of files written to the blobstore. |
| Feature | The initial data source feature supports uploading CSV files as data sources. | Additional data sources shall be added in the next release. |
| Feature | Workflows can specify default data sources for a worksheet. | For workflows with worksheets backed by data sources, developers can omit submitting input files for those worksheets. |
| Feature | Workflow designer can be expanded to full-screen view. | This makes it easier to present larger workflows. |
| Feature | The workflow designer will assign the same color to spreadsheets that can be executed in parallel. | This makes the workflow's spreadsheet parallelization plan obvious to the designer. |
| Feature | Enhance the status API call to make basic downloads simpler, while offering a mechanism to perform parallel downloads for a given resource. | By default, Flow's status provides a single URI for downloading a worksheet's data, but when provided with the correct parameters, it returns multiple URIs to support parallel download requests. |
| Feature | Flow will now provide a list of downloadable files as they become available. | Before a workflow is completed, if data is available for download, Flow will provide it as it becomes available, provided the appropriate status flags are set in a status request. |
| Feature | Flow admin can register a Flow server with Zen using a domain name | Zen integration can be limited to specific domain names. |
| Feature | Flow designers can assign workflows to teams. | Members of teams can submit requests via Zen to all workflows that belong to that team. |
| Feature | Flow admins can assign users to a team | Users can be added to zero or more teams. |
| Feature | Flow admins can bulk upload Flow users | A flow admin can upload a CSV file of users. |
| Feature | Flow now accepts exponential numbers and does not return them when using high-precision decimal arithmetic. | Previously, Flow would not accept exponential numbers and, under some circumstances, would produce them when using the high-precision decimal arithmetic option. If double precision is chosen, Flow may return exponents. |
| Deprecated | Scenario testing is no longer available | This feature was not used. |
| Fixed | Warnings are not reported when a job is completed. | Warnings are now reported. |
| Fixed | CSV processing is slow and memory-intensive. | Rendering CSVs is now at least 10 times faster. |
| Fixed | Warnings were not retrievable when a request is completed. | Warnings are now retrievable via the API |
| Fixed | When a user or process passes a string to a number type column on input, Flow provides a cryptic error | This error is now plainly reported. |
| Fixed | The orchestrator no longer reports that it failed to delete a message. | This happens when the orchestrator tries to delete a message that has already been deleted. |
| Fixed | When one worksheet has a name that is the prefix of another, upon retrieving any worksheet, Flow will return data from both worksheets. | This no longer happens. |
| Fixed | When a spreadsheet in a workflow returns an error, the orchestrator does not immediately terminate that workflow | Now the orchestrator immediately terminates any workflow that has a spreadsheet error. |
| Fixed | Flow complains when an input file with just headers is provided | Flow no longer complains when a file with valid headers but no input data is provided. |
| Fixed | Allowed value errors were not returned by the workflow | These are now returned. |
| Fixed | When a number is too big to convert from its string representation, Flow does not report this error. | Flow now reports this error. |
| Fixed | Flow did not provide detailed errors when it detected a header type mismatch. | Flow now provides a detailed error report. |
Release 1.1.164
This is a bug fix release.
| Note | Description | Comments |
|---|---|---|
| Fixed | On some reboots, Pebble Flow will not restart. An Application Error screen is shown. | This was due to an Azure publishing SAS token expiring after several days. On reboot, this token is no longer needed for restart. |
| Fixed | The workflow will fail to complete when different input grouping options are chosen for the same output worksheet. | Workflows now support choosing different input worksheet groupings for the same output worksheet. |
Release 1.1.160
This release introduces workflow release management, greatly expanding the capabilities of the workflow server! Of particular interest is the ability to attach notes to workflows, pebbles, and releases. Releases allow administrators and pebbles to move pebbles and workflows between environments and will form the basis for automated DevOps integration.
| Note | Description | Comments |
|---|---|---|
| Feature | Release functionality—Users can create workflow releases. Releases can be downloaded as binary files and uploaded to another Pebble Flow Server. | Releases consist of a collection of workflows and their associated pebbles. A downloaded release can be manually uploaded to another Pebble Flow server for execution. |
| Feature | With the added release API, programmers may query the Pebble Flow server for available releases and download the list of pebbles and workflow URIs for a given release. | This supports the ability to dynamically offer multiple service functionalities to systems that integrate with Pebble Flow |
| Feature | Workflow callback performance | For improved performance, workflow callbacks are now distributed across all Pebble Stream worker threads. |
| Feature | Added the runner role | Runners can only run pebbles and workflows, but cannot create new versions of pebbles or workflows |
| Feature | Changed the rotate keys functionality | 3 keys are initially created; each can be rotated independently. |
| Feature | User-friendly pebble versioning | pebblers can now create a new pebble version on the pebble detail page. The pebble's description and name will be pulled from the previous version. |
| Feature | Workflow versioning | Pebbles can now create a new version of a workflow on the workflow detail page. The workflow's name and description will be pulled from the previous version, and the current workflow's state will also be copied to the new version. |
| Fix | An error occurred due to empty worksheets generated by the workflow. | Now, this will terminate the workflow as expected. |
| Fix | Sometimes, error messages are not serialized correctly. | This has been fixed. |
| Fix | The describe API returned 404 Not Found for pebbles and workflows. This has been fixed. | This has been fixed. |
Release 1.1.135
This release features workflow capabilities. This feature greatly expands the capabilities of the workflow server!
| Note | Description | Comments |
|---|---|---|
| Feature | Wire together individual spreadsheets to create performant workflows | Users may create individual spreadsheets and then connect them to create elaborate calculation workflows |
| Feature | Execute workflows via the UI | An authorized user may provide CSV inputs for execution. |
| Feature | Execute workflows via the API | Workflows can be executed via a RESTful API. |
| Technical | A separate app server called the orchestrator is part of the deployment. | The orchestrator is dedicated to managing workflow state via Azure queue messages. Do not apply scaling rules to this server, as there should always be just one. |
| Technical | Timeouts related to message leases have been removed | All environment variables related to message timeouts have been deprecated. Messages are now deleted from the queue immediately after the request is submitted. Pebble Flow does its best to ensure a request is completed. |
| Technical | Upgrade to Java 21 | Moved from Java 11 to Java 21 to take advantage of Azure's improved memory management facilities. |
| Bug | Describe endpoint returns 404 Not Found for pebble and workflows | Will be fixed in the next release. |
Release 1.0.0
This is our first release of the Pebble Flow workflow server! The following features are available in this release.
| Note | Description | Comments |
|---|---|---|
| Feature | Execute pebbles via UI | A spreadsheet that is compiled with Pebble Stream is called a pebble. An authorized user may provide CSV inputs for execution. |
| Feature | Execute pebbles via API | Pebbles can be executed via a RESTful API |
| Feature | Download pebbles via API | A compiled pebble can be programmatically downloaded via the API and executed by the Pebble Stream runtime. |
| Feature | Compile pebbles via UI | A spreadsheet can be compiled into a pebble by a user |
| Feature | Version control spreadsheets and pebbles | Pebble Flow maintains all compiled spreadsheets over time in the order they were compiled. |
| Feature | Manage users | Pebble Flow users can be activated and deactivated. Supported roles are admin, pebbler, and viewer. |
| Feature | Maintain a library of spreadsheets. | Pebble Flow has a library interface that displays all compiled pebbles. |
Updated 5 days ago
