Preparing for JIRA 6.3

Overview

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

6.3-OD1 (OnDemand)
6.3-m1 (JIRA EAP)
6.3 (BTF) 

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-OD3 (OnDemand)

6.3-m3 (JIRA EAP)

6.2.2 (BTF)

MEDIUM Plugins that grant BROWSE permission See Transition Issue below
Earliest support for JIRA Data Center features 6.3-m04 (JIRA EAP)
6.3 (BTF) 
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

6.3-OD7 (OnDemand)

6.3 (BTF)

LOW

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

As part of the work to allow plugins to define new global permissions, we have changed the identifier of global permissions from  id to key
You will be affected if:
  • Your plugin listens for the GlobalPermissionAdded or GlobalPermissionDeleted events — instead of getPermissionId, you will need to use getGlobalPermissionType. You can still get a global permission by id using the getGlobalPermission method. However, its return type has been changed to Option<GlobalPermissionType>.
  • Your plugin uses the GlobalPermission class. This has been replaced with GlobalPermissionType.

New project permission TRANSITION_ISSUE

To allow better control over who is able to transition issues in JIRA new project permission TRANSITION_ISSUE was introduced. This permission was previously controlled by BROWSE permission.
You will be affected if:
  • 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.


Known bug for running plugins compiled with Java 8

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  

Was this page helpful?

Have a question about this article?

See questions about this article

Powered by Confluence and Scroll Viewport