Preparing for JIRA 6.3
This page is intended to be read by JIRA plugin developers to inform them of changes in JIRA 6.3 that could affect their plugins. JIRA users should consult the documentation here.
It is our goal to notify you, our plugin developers, as far in advance as possible of everything we know about that can possibly affect your plugins. Where possible, we will attach release targets.
We will update this page as the release progresses. Please watch this page or check back regularly to keep on top of the changes.
On this page:
About the Early Access Program
The JIRA development team release an EAP milestone every two weeks for customers and plugin developers to keep abreast of upcoming changes. These EAP releases are available on the JIRA Early Access Program Downloads page.
Summary of Changes
The risk level indicates the level of certainty we have that things will break if you are in the "Who is affected?" column and you don't make the necessary changes.
|What is the change?||When will this happen?*||Risk level||Who is affected?||Details|
|Identifier of global permissions has changed||6.3-OD1 (OnDemand)
6.3-m1 (JIRA EAP)
|LOW||Plugins that rely on experimental APIs||See Changes affecting experimental APIs below|
|Introduction of atlassian-scheduler API||
|LOW||Plugins that schedule background jobs using Quartz or PluginScheduler||See Plugin Guide to JIRA High Availability and Clustering for information about this change, even if you have no plans to support JIRA Data Center.|
New project permission TRANSITION_ISSUE
6.3-m3 (JIRA EAP)
|MEDIUM||Plugins that grant BROWSE permission||See Transition Issue below|
|Earliest support for JIRA Data Center features||6.3-m04 (JIRA EAP)
|MEDIUM||Plugins that need to support JIRA Data Center||See Plugin Guide to JIRA High Availability and Clustering for details|
|AUI Messages now have a default image||
Plugins using JIRA's implementation of AUI
|See AUI Messages now have a default image below|
|JIRA 6.3 will support Java 7 & Java 8||6.3 final||LOW||Any plugin using Java is potentially affected||Plugins should compile against Java 7, but run tests against both Java 7 and Java 8|
Detailed Explanations of Changes
In this section:
Changes affecting experimental APIs
- Your plugin listens for the
GlobalPermissionDeletedevents — instead of
getPermissionId, you will need to use
getGlobalPermissionType. You can still get a global permission by
getGlobalPermissionmethod. However, its return type has been changed to
- Your plugin uses the
GlobalPermissionclass. This has been replaced with
New project permission TRANSITION_ISSUE
- Your plugin grants user BROWSE project permission and you are expecting that the user will have ability to transition issues.
- Your plugin add group with BROWSE permission and you are expecting that the user will have ability to transition issues.
- Your plugin depends on the behaviour that the users with BROWSE permission can transition issues.
- Your plugin does not use IssueService or WorkflowTransitionUtil to execute transitions on issues. The behaviour of the plugin may be not consistent with JIRA experience.
Versions affected by TRANSITION_ISSUE
- 6.2.2+ The TRANSITION_ISSUE permission was partially introduced in JIRA 6.2.2. In this release it is only used in invocations of ProjectPermissionOverride. In all other permission checks the TRANSITION_ISSUE will effectively check for BROWSE permission.
- 6.3-OD3+, 6.3-m3+ The TRANSITION_ISSUE permission is checked when JIRA is supposed to transition issues. Please note that existing and new installations will have sightly different defaults.
- For existing installations all users/groups/project roles that previously had BROWSE permission will have TRANSITION_ISSUE permission granted. This behaviour is intended to keep the old behaviour for current users.
- For new installations only jira-developers will have by default the ability to transition issues (this affects default permission scheme). So effectively all the users that previously had EDIT permission will have the ability to transition issues.
AUI Messages now have a default image
AUI message containers now have an associated icon added via a CSS pseudo element. Provision to hide the following hard coded icons ( e.g. <span class="aui-icon icon-success"></span> or <span class="aui-icon aui-icon-success"></span> ) from aui messages has been made, but if you have used your own status icon, this will not be hidden. Icons that are included are:
- .icon-generic / .aui-icon-generic
- .icon-error / .aui-icon-error
- .icon-hint / .aui-icon-hint
- .icon-info / .aui-icon-info
- .icon-success / .aui-icon-success
- .icon-warning / .aui-icon-warning
More information on AUI Messages
JIRA support for Java 8
JIRA 6.2 only supported running on Java 7. JIRA 6.3 will support running on either Java 7 or Java 8.
Plugin devs should build their plugin with Java 7, but it is recommended to test running against both Java 7 and Java 8.
It is considered unlikely that Java 8 will cause problems, but it is possible under certain advanced or unlucky use cases.
Customers who write in-house plugins and run JIRA 6.3 on Java 8 may be tempted to compile the plugin against Java 8.
It seems that this will not work because of the following bug:
PLUG-1098 - The plugin system fails to load plugins compiled with a java 8 source level Resolved