Check out what’s new for ScriptRunner for Jira Server


New Features

Issue Archiving (Data Center 8.1+)

There are two new features in ScriptRunner for Jira server allowing users to archive issues. You can now configure an Issue Archiving Job or Archive this Issue Post-function.

New Features in Script Editor

  • Folder Support - Use the context menu to create new folders in the script root directory. Script Editor also supports the creation of nested folders, separate them using / character. Folders (and files) can be moved around the file tree using drag-and-drop.

  • Deletion Support - You can now remove files and folders directly from the Script Editor UI. Just right-click on the file or folder you want to remove and select Delete from the context menu.

  • Renaming Support - You can now rename files and folders using context menu option Rename available on each node in Script Editor.

Services and Escalation Services Moved to Jobs

Services and Escalation Services are now part of ScriptRunner Script Jobs. Migrated services run as expected; however; when editing a service, you must specify an application user in the User field. For more information, see our Script Jobs documentation.

Bug Fixes

  • SRPLAT-864 - An invalid object name 'null.AO_31728E_SR_USER_PROP' when running on MS SQL Server has been fixed.

  • SRJIRA-4017 - Script Registry now picks up simple scripted validators.

  • SRJIRA-3990 - An issue with the Send Custom Email function has been fixed.

  • SRJIRA-3988 - An error with Send a custom email listener filing to find event has been fixed.

  • SRJIRA-3985 - The StackOverflowError when using AddedAfterSprintStart or RemovedAfterSprintStart JQL functions in card color queries is fixed.

  • SRJIRA-3983 - Having a large number of comments on an issue no longer causes re-indexing delays.

  • SRPLAT-862 - There is now support for cross-app, in-app fixtures usable from tests running outside of the app.


More Groovy Classes are Backwards Incompatible

If you have any custom classes in your script roots or configured scripts which extend com.onresolve.scriptrunner.canned.jira.workflow.listeners.CustomListener, those may be broken by this release.

If you notice the Listeners page is failing to load, this problem may be affecting you. One potential workaround: you can add the @groovy.transform.InheritConstructors annotation to your custom class. As before, if you need additional help as a result of these changes, please contact us via our support portal.

Scalability improvements to lastComment JQL function

In version 5.6.6 we released a scalability improvement to the lastComment JQL function.

Unfortunately due to an internal process problem, we neglected to include in the release notes the following information.

The changes to the implementation of lastComment JQL function in this version mean that a reindex of Jira is required for that function to work correctly.

A background reindex of Jira is not sufficient. You must select the option "Lock Jira and rebuild index". Obviously this should be done out of business hours.

Bug Fixes

  • SRPLAT-670 - An exception was generated when adding or removing an event in the Events field on the Custom Event Listener screen.

  • SRJIRA-3982 - The wrong value displayed for scripted fields based on the current user.

  • SRJIRA-3969 - Creating a Post Function "create sub-task" or "Clones an issue, and links" no longer throws the java.lang.NoClassDefFoundError: com/atlassian/servicedesk/api/NoSuchEntityException.

  • SRJIRA-3710 - STC errors/warnings are now shown in the registry.

  • SRJIRA-3488 - Missing icons now show within script execution reports.


New Features

  • SRJIRA-3712 - The Database Picker fields can now appear on the Service Desk Portal.

Bug Fixes

  • SRPLAT-836 - Scriptrunner did not clean up MultiParentClassLoader on plugin-enabled events.

  • SRJIRA-3960 - FireEventWhen sometimes received the wrong ChangeLog it fired events.

  • SRJIRA-3954 - The View in Issue Navigator link on the backlog board did not show all issues in the backlog.

  • SRJIRA-3953 - You could not edit workflow functions that were created several years ago.

  • SRJIRA-3935 - ScriptRunner action did not work in automation because of a JavaScript error.



  • SRPLAT-774 - MissingPropertyException in subclasses of AbstractBaseRestEndpoint when accessing the log field has been fixed.

  • SRPLAT-773 - Yaml files now auto deploy saved script configurations in custom plugin jars.

  • SRJIRA-3344 - Default text in Visual mode in a tab now renders correctly.

  • SRJIRA-3827 - An issue causing uneditable checkboxes is now fixed.


What’s New

  • Manage your .groovy script files using the new ScriptRunner Script Editor.

  • SRJIRA-3782 - Database Picker options display automatically.


  • SRPLAT-715 - The use of class autocompletion with an as cast operation was fixed.

  • SRPLAT-712 - An exception thrown by getting docs on a variable no longer occurs.

  • SRPLAT-709 - The fragment finder context variables overlay was added.

  • SRPLAT-703 - The missing Idea Integration icon was added back to code editors.

  • SRPLAT-691 - Long files are now rendered in Script Editor.

  • SRJIRA-3827 - An issue causing uneditable checkboxes is now fixed.

  • SRJIRA-3790 - Script fragments items have been reordered.

  • SRJIRA-3789 - Free text search is not defaulted unless the field has the text template.

  • SRJIRA-3777 - An issue causing new issue events to be missing when configuring a custom listener, has been fixed.

  • SRJIRA-3619 - layering issue when using any picker field

  • SRJIRA-3617 - Issue Picker search has been improved.

  • SRJIRA-3112 - Installing Service Desk or Jira Software after ScriptRunner no longer causes 'NoClassDefFoundError'.

  • SRJIRA-2679 - The lastComment JQL function is now scalable for enterprise.

  • SRJIRA-3528 - The Behaviour feature has had performance improvements.


New Features

  • SRJIRA-3782 - Show database picker options without having to start typing

Bug Fixes

  • SRPLAT-715 - Cannot use class completion with "as" cast operation

  • SRPLAT-712 - Code Insight - getting docs on a variable throws exception

  • SRPLAT-709 - Fragment Finder context variables overlay missing

  • SRPLAT-703 - No Idea icon to connect plugin

  • SRJIRA-3790 - script fragments items not ordered well

  • SRJIRA-3789 - do not default to free text search unless the field has the "text" template

  • SRJIRA-3777 - new issue events cannot be found when configuring a custom listener

  • SRJIRA-3619 - layering issue when using any picker field

  • SRJIRA-3112 - Installing Service Desk or Jira Software after ScriptRunner cause NoClassDefFoundError

  • SRJIRA-3776 - Support writing Arquillian Spock specifications for SR for Jira

  • SRJIRA-3528 - Behaviour Feature - Performance Improvements


Bug Fixes

  • [SRJIRA-2931] - SD behaviours were executing off of the wrong ID.
  • [SRJIRA-3681] - Script fields were appearing empty.
  • [SRPLAT-658] - Could not use code completion features with @WithPlugin for some plugins.
  • [SRPLAT-680] - Dependent plugin classes weren't loaded correctly.


Fix for SRPLAT-560 - Occasional NoClassDefFound with @WithPlugin compilation customiser

Dynamically adding and removing plugin classloaders was found to be impractical and unreliable due to lack of control over classloader caches.

The behaviour has changed so that when any @WithPlugin annotation is detected, the classloader from the selected plugin(s) is available to all scripts. This is true when using @WithPlugin or not in subsequent script executions. This change does not affect performance as the system classloaders are first in the classloader order.

Continue to add @WithPlugin to any scripts that use classes from other plugins. Without this, after a restart, successful script compiling will be dependent on the order of execution. Static type checking will show errors if you forget to use @WithPlugin.

Bug Fixes

  • [SRJIRA-458] - import of helper class not possible
  • [SRJIRA-3328] - Script Field partially duplicated after adding a new configuration context
  • [SRJIRA-3391] - Assigning closures with no parameters to script field bindings doesn't type check
  • [SRJIRA-3457] - Subquery in 'expression' JQL function isn't necessarily valid when expression script is being validated
  • [SRJIRA-3494] - Cached condition results need to be keyed on status as well
  • [SRJIRA-3651] - Ambiguous method error when using expression JQL function anonymously
  • [SRJIRA-3658] - potential class loader lock contention issue when parsing behaviours configuration
  • [SRJIRA-3646] - "Custom Script" Scripted Fields fail to show Execution History in user interface

Have questions? Visit the Atlassian Community to connect, share, and learn with other Atlassian users and experts, including Adaptavist staff.

Ask a question about ScriptRunner for JIRA, Bitbucket Server, or Confluence.

Want to learn more? Check out courses on Adaptavist Learn, an online platform to onboard and train new users for Atlassian solutions.