Taverna has now moved to the Apache Software Foundation. For updated information, see Apache Taverna (incubating).

Release notes

Changes in 2.5.0

Taverna 2.5.0 includes additional functionality (interaction service, PROV support, components), a simplified installation, user interface improvements and bug-fixes.


To simplify installation on common operating systems, Taverna distributions for Windows/Linux/OSX now come bundled with the Java Runtime Environment from OpenJDK and the required Graphviz binaries. The installation also no longer requires you to install the JCE Strong Encryption policy.

Available services

To improve start-up time and simplify Taverna for users in a wide range of scientific fields, Available Services are tailored for the scientific domain. For example, the Astronomy distribution includes VAMDC services.

Interaction service

The Interaction Service has been added to the Workbench. This provides the ability to ask questions and inform users during the running of the workflow. Unlike the previous interactive local workers, this service uses web pages, and therefore also works if using the Command Line tool or the Taverna Server.


The Taverna-PROV export has been added. This adds a new button “Save Provenance Bundle” when clicking “Save All” from the results perspective.

The provenance bundle is a ZIP file containing all input, output and intermediate values as separate files, along with the provenance of the workflow run. The bundle is based on the Research Object Bundle specification, and complies with the W3C PROV-O provenance specification.

For details, see https://github.com/myGrid/taverna-prov

Component service

The Component capability has been added. This allows the usage of component services, which encapsulate a nested Taverna workflow that has been constructed and described for compatiblity with other components within a chosen Component Family.

This allows for publication of reusable workflow fragments, which appear as single services within the master workflow.


Added Help->About, which includes debug information that can be posted with support requests. (T3-1015)

Help has been added to several dialogs (T3-1074, T3-1075, T3-1076, T3-1077, T3-1078)

Help and example workflows are now available for services (T3-1069, T3-1072)

Service panel

The Service panel no longer flickers as new services are added (T3-611)

Credential Manager

Rather than requiring a credential manager password at start-up, the default password “taverna” is used unless explicitly specified. (T3-981)

The bundled OpenJDK includes support for strong cryptography, and thus the JCE dialogue should no longer appear at startup. (T3-980)

Nested workflow

Nested workflows will now terminate if there are no output ports (T3-986)

The ports of a nested workflow will be correctly synchronized with those shown in the outer workflow (T3-691)

REST service

Support optional input query parameters (T2-2112)

RShell service

R services running on a local R server no longer ask for the credential manager password (T3-911)

Ports of R services can now have underscores in their names (T3-1012)

The configuration panel for an R service will retain its size (T3-910)

Spreadsheet service

All changes to the spreadsheet service will be seen as edits (T3-1059)

Text constant

Reading from a file no longer inserts a newline (T3-783)

WSDL service

The WSDL service uses faster iteration (T3-953)

XPath service

Added ability to extract the first matching value (at depth 0).
Additional output ports added. (T3-1019)

Added ability to receive result of XPath functions, e.g. ”count(/foo/bar)” (T3-996)

Plugin manager

Avoid startup screen delays if a plugin’s repository URL fails due to DNS/network errors (T2-2115)

Avoid deadlock in initialization of the logging mechanism if experiencing network issues while loading Available Services. (T3-1018)

Plugin versions are now compared numerically (T3-1004)

There is now an “Update all” button (T3-983)

List handling dialog

A simplified list handling dialog has been created (T3-486, T3-1079. T3-480)


Looping is now indicated in the diagram (T3-494)

Run dialog

On Linux, the Run dialogue should no longer appear behind the workbench window if it was iconified (T2-2105, T3-994)

Display of error documents has been improved (T3-396)

Saving results

The Workbench Save All values dialog is put into a Scroll pane if large (T3-1110)

Workflow engine

Resolved a deadlock when validating cross product, which could occur during command line execution of large workflows. (T2-2102)

Several database locking issues have been resolved (T3-1051, T3-318, T3-1123)

The default memory allocation has been increased (T3-842)

myExperiment perspective

There is now a link for registration on the myExperiment perspective login page (T3-1064)

Uploading of a t2flow workflow now works (T3-804)

Service catalogue perspective

The list of services no longer include archived services (T3-1116)

T2flow format

The calculated port depth of output ports are stored
in the saved t2flow. (T3-1013)


Changes in 2.4.0

Credential Manager

Updating of the master password now works correctly (T2-2004)

Run dialog

Users can now use all the example values with one click (T2-2079)

The minimization of the run dialog has been changed (T2-2005)

Previously, the run dialog could get confused if, after the workflow had been run, ports were removed from the workflow or renamed. (T2-2060)

myExperiment Perspective

The My Stuff tab now shows all of a user’s objects (T2-2000)

The default sharing license now agrees with the default on the myExperiment web site (T2-2008)

The myExperiment Perspective has been changed to use the credential manager (T2-2010)

The myExperiment Perspective is more tolerant of different date formats (T2-2020)

Service Catalogue Perspective

The search box is now shown in small windows (T2-1948)

The details of services are now displayed correctly (T2-2001)

Workflow design

The list handling and annotation of a service can now be done by r-clicking on a service (T2-2077 and T2-2078)

Saving a workflow now uses temporary files, so that it it fails it does not lose the original workflow (T2-1998)

The workflow title is now limited in length (T2-2002)

Worklow run

The display of error documents that contain HTML has been improved (T2-1641)

Saving data now closes streams correctly (T2-1997)

The HTML renderer now uses the standard Desktop mechanism (T2-1999)


Annotations of services are now displayed correctly (T2-2009)

Beanshell service

The background colour for text has been changed to make it more readable (T2-1984)

BioMoby service

The registries have now been changed to point at INAB (T2-1983)

REST service

The default port for HTTPS has been corrected (T2-2022)

The REST service can now return the URL that was created by the replacement of the parameters with the input values (T2-2023)

The REST service can now return the headers of the reponse. (T2-2064)

Header values can now be parameterized. The parameters can be set by passing values into the corresponding port of the service. (T2-2072)

SoapLab service

The SoapLab service will now fail if the invoked service does not return enough data (T2-1994)

Text constant service

The string constant service has been replaced by the text constant service. The text constant service allows the entry of multi-line text values, and the text can be loaded from and stored to a file.

Tool service

The SSH connection values are now displayed correctly (T2-1946)

Static URLs are now serialized correctly in tool descriptions (T2-1976)

Configuration now works in Java 1.7 (T2-1985)

The help location for the tool service has been corrected (T2-1986)

The tool service prevents ports being created that overlap with the standard ports (T2-1987)

The tool service now handles binary data (T2-1988 and T2-1981).

The tool service now has the option to retrieve data as soon as the tool invocation has finished. (T2-2003)

The tool service has been made more thread-safe. (T2-2028)

WSDL service

The XML splitters and WSDL service now inherit through extension (T2-511, T2-872 and T2-1109)

Descriptions for WSDL services are now extracted from the WSDL document (T2-1990)

Annotations on web service ports are now included in the corresponding XML splitters (T2-2007)

XPath service

The XPath service no longer reports problems with attribute namespaces (T2-2018)

Changes in 2.3.0

The major changes are the addition of REST, XPath and Tool services, the addition of the Service Catalogue Perspective, and the ability to export a workflow run as OPM or Janus.

For a complete list of issues that have been solved for Taverna 2.3.0 (including those for 2.2.1 and 2.2.2) see http://www.mygrid.org.uk/dev/issues/secure/IssueNavigator.jspa?mode=hide&requestId=10221.

General user interface

Control-click now works on MACs (T2-237)

User-friendly way of reporting bugs (T2-549)

The open workflow dialog has been slightly improved (T2-731)

“Save diagram” has been renamed to “Export diagram” (T2-738)

“Open location” icon is now available in the toolbar (T2-752)

The top level icons have been ordered to agree with the corresponding menu items (T2-753)

The Credential Manager checks for previous versions of Taverna and asks the user to import old Keystore/Truststore (T2-944)

Empty service providers can now be removed (T2-1151)

Important notice mechanism added (T2-1282)

Reduction in the size of the registration dialog (T2-1302)

The “Save as” dialog now suggests a name (T2-1318)

Help is now shown in a standard browser, fixing many issues (T2-1518 and T2-1706)

A problem with service configuration dialog text has been fixed (T2-1592)

Users can now see the “Application data” directory (T2-1612)

Taverna now uses the standard SwingWorker (T2-1683)

The service panel now allows services with identical names (T2-1714)

Taverna now handles up-to-date dot (T2-1874)

A possible ConcurrentModificationException in the service description registry has been removed (T2-1894)

Improved icons are used for most dialogs (T2-1914)

Workflow engine

Workflow runs are now removed from memory when deleted (T2-1531 and T2-1596)

Job queues are cleared by the dispatch stack (T2-1597) and cross product, dot product, strategy nodes and the crystalizer no longer cache (T2-1598, T2-1599, T2-1601, T2-1602)

The memory footprint of references has been greatly reduced (T2-1600)

Some mySQL provenance problems have been fixed (T2-1605)

The remote health checker tries a GET if the HEAD fails (T2-1679)

Out-of-date annotations are removed when a workflow is serialized (T2-1697)

A thread deadlock when running nested workflows in parallel has been fixed (T2-1713)

The run-deletion thread no longer hangs (T2-1759)

The timeouts for the plugin manager etc. have been reduced (T2-1783 and T2-1784)

Workflow design

The links within the workflow explorer are now ordered (T2-238)

The name of the current workflow is shown on the diagram border (T2-473); this makes editing a nested workflow less confusing (T2-791)

Undo now unselects a removed processor/port/merge (T2-517)

Validation errors are given if the tested output port involved in making a service loop is not connected within the workflow (T2-641)

The iteration strategy editing has been improved (T2-813)

Can now drag a link to a merge (T2-845)

The details panel attempts to show the same type of information as previously shown (T2-1489)

Nested workflow labels are now shown corrected (T2-1654)

Opening a workflow that uses HTTPS no longer hangs the UI (T2-1659)

An empty workflow is no longer indicated in the workflow explorer as having problems (T2-1717)

Selection of the next annotation field has been improved (T2-1730)

The zoom-related actions now correctly change with the selection of a workflow (T2-1813)

An exception is now shown when addition of a service to the workflow fails (T2-1850)

Larger example values can now be specified (T2-1872)

Import workflow no longer throws null pointer exceptions (T2-1915)

Running workflows

Merging of lists to feed a service that expects a single input value now works (T2-1423)

Pausing a workflow now changes the icon to paused (T2-1530)

Workflow run progress monitor no longer stores a node for each service invocation (T2-1603)

Suggested solutions for failed HTTPS client authentication have been added (T2-1738 and T2-1740)

The credential manager now delays asking for passwords until it is needed (T2-1743)

Users can specify the character encoding and data type of input data (T2-1750)

When the first attempt to give a password for the credential manager fails, it now accepts a correct password (T2-1907)


You can now edit the executed workflow that caused a workflow run (T2-1016)

Deleting a workflow run now moves to the next entry (T2-1323)

The save data dialog has been improved (T2-1498)

The ordering of data for previous runs is correct (T2-1514)

Expansion triangles are shown for top-level data and invocations (T2-1515)

The split pane jumps around less (T2-1516)

Result renderers

Tick box for wrapping result text (T2-633)

Save as OPM and Save as Janus are now available for a workflow run (T2-969)

The hex renderer is now read-only (T2-1569)

The rendering of error documents containing HTML has been improved (T2-1641)

A PDF and an improved HTML (open in browser) renderer have been added (T2-1712)

Virtual machine objects can now be rendered as their string representation (T2-1859)

Beanshell/RShell scripts

The scripts now accept Alt-keystrokes on MACs (T2-425)

The Beanshell interpreter now clears its variable bindings (T2-1480)

Existing scripts are shown when loading and saving (T2-1499)

The text of the check script dialog has been improved (T2-1664)

R expressions can now be passed (T2-1695)

R services now use the credential manager to handle authorization (T2-1698)

BioMart services

A NullPointerException is no longer thrown when datasets referenced by filters are missing not when attributes are missing (T2-1513, T2-1913)

BioMoby services

The BioMoby port names are now coped with better in provenance (T2-602 and T2-1529)

BioMoby no longer pops up an error message at startup (T2-1496)

The BioMart service provider now loads its services in chunks (T2-1785)

Local services

Select and Choose LocalWorkers now throw an exception for an empty list of values (T2-298)

Some local services were changed to close streams (T2-1684)

“Get image from URL” no longer reads contents twice (T2-1685)

A new “Transform XML with parameters” service has been added (T2-1693)

“Read text file” can now take an encoding (T2-1750)

SoapLab services

The URL dialog now copes with the lack of a trailing / (T2-1787)

WSDL services

Operations that Taverna could not run are no longer shown in the Service Panel (T2-1116)

XML attributes of top-level SOAP elements are no longer stripped out (T2-1606)

Changes in 2.2.0

See a complete list of issues that have been solved for 2.2.0.

General user interface

Workflows with services that are offline/unavailable, or for which the appropriate plugin is not installed, can now be opened and edited (T2-1231, T2-1411, T2-1376).

Unavailable and unrecognized services are shown as faded in the workflow (T2-1354).

New menu item Advanced->Show log folder (T2-1273).

Workbench Configuration preferences tidied up (T2-1463).

Preferences window did not always appear on a restricted (i.e. WiFi) network which returned HTML login pages for any URL (T2-1409).

User registration form records the “Purpose” field correctly (T2-1304).

Workflow engine

executeworkflow command line tool (T2-316).

Ability to pause, resume and cancel a running workflow (T2-414).

taverna.sh and taverna-debug.bat now handle symbolic links to the Taverna installation (T2-1406).

Shows start/stop/average execution times for workflow, services and individual service iterations (T2-875).

Intermediate values display empty lists correctly (T2-1019).

Intermediate values supports workflows and services which has an input port with the same name as an output port (T2-1051).

Workflow design

Service descriptions (the Available Services in Service Panel) can be exported to and imported from an XML file. Default services are no longer hard-coded, but can be customised per Taverna installations (T2-674).

Added Validation Report, warns on potential errors in workflow, and suggests possible solutions like editing the List Handling or enabling retries (T2-1238).

A full validation is performed before running a workflow, which attempts to connect to external services in the workflow – giving an early warning if a service is not available.

Ability to configure retries and threads (T2-416).

Added right-click menu to configure looping, retries and threads.

Configure Looping dialogue simplified (T2-1366, T2-824, T2-1349).

Workflow output port was not always selected correctly (T2-1288).

Confusing Insert->Constant value removed as it was always disabled except when selecting an input port. Still available on right-click menu (T2-1325).

Running workflows

Run Workflow dialogue is no longer modal, allowing one dialog per workflow at the same time (T2-1221).

Run Workflow dialogue warns if the workflow has potential problems (T2-1363).

Run Workflow dialogue shows the filename or name of workflow (T2-1284).

Unconnected input ports are no longer shown in the Run Workflow dialogue (T2-1285).

Run Workflow dialogue could appear twice for same workflow if double-clicking Run button (T2-863).

“Load/Save previous values” button in the Run workflow dialog remembers the last used folder (T2-1252).

Exiting Taverna while a workflow is running will warn the user, asking to cancel active workflow runs (T2-1426).


Added Progress Report, shows a table of running services (including nested workflows). Table shows status, queued iterations, iterations finished, failed iterations, first and last invocation times, and average invocation time (T2-1213).

Intermediate values for a service shows iterations separately from output lists (T2-553).

Iterations indicate if they failed by colour and label (T2-1416).

Iterations indicate if they were skipped due to incoming errors (T2-1427).

Possibility to filter iterations and outputs to show only results or only errors (T2-1460, T2-1461).

Clicking a workflow output port in diagram selects the resulting output tab (T2-1459).

Added error count on nested workflows, showing number of nested workflow iterations which contained one or more errors (T2-1414).

“Save values” button renamed to “Save all values” (T2-1324).

Value-is-too-large dialogue would still render the full value if pressing Escape in Windows (T2-1279).

Error count for services inside a nested workflow could be wrong (T2-1413).

Previous runs of nested workflows could wrongly reappear as an individual run (T2-1469).

Binary data was not always saved correctly on Windows (T2-1280).

Result renderers

Added renderer for TIFF and JPEG2000 (T2-1317).

HTML renderer now follows (absolute) hyperlinks (T2-1313).

Text renderer no longer scrolls to the bottom (T2-1248).

Updated RTF renderer (T2-1320).

SeqVista renderer could break look and feel on Linux (T2-1369).

Non-functioning URL renderer disabled (T2-1263).

Beanshell/RShell scripts

Script editors show line number (T2-1287).

Suggested port names should start at 1, not 0 (T2-1387).

Invalid beanshell scripts detected by validation report (T2-1375).

Nested workflows

Import workflow did not always display “Already opened workflows” list correctly (T2-1315).

The dialogue for adding nested workflows did not always disappear (T2-1261).

Import workflow pops-up two file choosers dialogues (T2-1314).

Biomart service

Biomart is streaming results, enabling pipelining for individual rows in result (T2-1093).

WSDL service

XML splitters support optional and nillable inputs (T2-847).

Loading a workflow with a WSDL service which is unreachable could take a long time while timing out (T2-1470).

myExperiment perspective

myExperiment perspective did not upload Taverna 1.x workflows correctly (T2-1185, T2-1333).

Using myExperiment perspective could break display of Service Details and other HTML-based components (T2-1377).

API changes

Added a placeholder to keep semantic annotations of workflow components. Suggested format is RDF/N3 using <> as subject (T2-1336).

Workflow definition keeps chain of previous workflow identifiers (T2-1337).

Changes in 2.1.2 (including 2.1.1)

See a complete list of issues that have been solved for 2.1.2.

General user interface

Resolved a memory leak for multiple invocations of nested workflows (T2-1135).

Database cleanup no longer blocks shutdown, done in the background at startup instead (T2-1191).

“Do you want to save” dialogue now appears before database shutdown dialogue (T2-1189).

Pressing Enter now closes dialogue in “Add new plugin site” (T2-1150) and “Add new WSDL/Biomart/Soaplab service” (T2-1149).

Previous workflow runs used to parse every executed workflow at startup, which could be slow and error-prone. Now they are parsed individually when a run is first selected (T2-1188).

Workflow engine

Two thread-safety issues with nested workflows were resolved (T2-1137, T2-1124).

“Save value” now saves the correct value after showing “Value too large” warning (T2-1147).

Workflow design

Empty dot and cross products in list handling could cause workflow execution to fail, but are now automatically removed when editing the list handling (T2-1101, T2-1100).


“Save value” now saves the correct value after switching back to port without reselecting value (T2-1156, T2-1147).

All renderers are now available, even if not automatically detected. Non-detected renderers are grayed out, but still selectable (T2-1228).

The chosen renderer is now remembered for all items on an output port (T2-1089).

It is now possible to force a re-rendering of the result by clicking “Refresh” (T2-1227).

The “Value too large” warning for outputs over 1 MB no longer appear more than once when selecting the same value again (T2-1244).

WSDL services

Support for HTTP Basic authentication support for WSDL service invocation (but not HTTP Digest authentication) (T2-1096).

Username/password dialogue now appears via credential manager, no longer appears outside the Workbench (T2-1165).

Adding a WSDL service to a workflow will pop up the security dialogue if username/password for WSDL already exist in credential manager.

HTTPS protected WSDLs should now work.

Local workers

“Get page/image from URL” now supports HTTPS and Basic/Digest authentication (T2-1198).

Beanshell scripts

Invalid port names are no longer allowed (T2-1129).

An output port name called the same as an input name is now allowed (T2-1127).

Rshell script

The R script was not always saved when clicking ‘Apply’ (T2-1145).

myExperiment perspective

Non-English users now able to log in (avoiding locale-based date parsing) (T2-1157).


HTTP Proxy username/password no longer lost if using File -> Open from location (T2-1184).

HTTP Basic Auth and HTTP Digest now supported for opening workflows and “Get page/image from URL” local worker (T2-1225, T2-1183).

An Apple update to Java 6 on OS X change the default trust store password (T2-1094).

Credential Manager no longer pops up user interfaces when run outside the Workbench (T2-1164, T2-698).

Master password dialogue did not appear in 2.1.1 (T2-1133).

HTTPS should now generally be supported. A confirmation dialogue will appear if an untrusted certificate is used for the first time, and the default Java truststore is imported on first run.

API changes

StartupSPI and ShutdownSPI positionHint flipped, now a low position means early execution (T2-1186).

Running Taverna from workbench-dev no longer gives blank perspectives (T2-1190).

Credential Manager now exposes a single SPI CredentialProviderSPI, for providing master password, certificate approval and username password. Workbench implementation pops up dialogues (T2-1193).

Changes in 2.1.0 (since 2.1 beta 2)

For a complete list of issues solved for 2.1.0, see http://tinyurl.com/t2-1-0-fixes.

General user interface

Keyboard shortcuts: There are now keyboard shortcuts for many of the common workflow editing and running tasks.

Recent workflows: Taverna now remembers your recently edited workflows and you can easily open them.

Notification of updates: Users are now notified when updates to Taverna or to a plugin are available.

Editing of workflows

Importation of workflows: You now have the ability to merge a workflow into a currently edited workflow.

Animated diagram: The diagram can now be made animated so it is easier to see what changes are being made.

Diagram problems: The workflow diagram will no longer throw exceptions and refuse to display some workflows.

Iteration strategy: The iteration strategy of services in Taverna 1 workflows is now interpreted correctly within Taverna.

Customized looping: Customized loop conditions are now displayed and saved correctly.

Copy/cut/paste: You can copy/cut and then paste services. This allows you to copy services from one workflow to another or within the same workflow.


Support for security: secured WSDL services can now be called using security validated via a credential manager.

Updated R support: the R service now allows connections to an Rserve for the latest R (up to 2.10).

New spreadsheet service: you can import Excel or csv spreadsheets and feed the content into your workflow.

Biomoby services: The BioMoby objects are now shown in the normal service panel and can be added to the workflow just as other services.

Running of workflows

Improved run dialog: The dialog for entering run values now copes with complex trees of values.

Saving and reusing values: You can now save and reuse the input values for a workflow run. You can save the output values from a run and could use them as inputs for other workflow runs.

Output value display: Output values are displayed using the correct renderers. You are now warned if a value is large and could cause problems for Taverna.

Output value tree: The tree of output values should now be correct. It no longer misses some of the generated data.

Runs: You can now access the data associated with previous runs. The provenance and data from a run can be deleted.

Workflow completion: Taverna now correctly detects when a workflow run has finished.

Provenance and data management: The provenance is now kept in the same database as the values.

Improved performance: Workflow execution in 2.1 RC 1 is faster than that in 2.1 beta 2.

myExperiment perspective

Users can now:

  • browse workflows on myExperiment
  • open a workflow from myExperiment in Taverna
  • merge a workflow from myExperiment into the current workflow
  • upload a workflow from Taverna to myExperiment
  • download a workflow from myExperiment