1. Javascript API Release
In this release we're adding JavaScript API to customize client-side functionality of Structure. As of Structure 2.5, it allows to create custom column types for the Structure widget. Please refer to Structure JavaScript API Reference for more information.
2. Minor Java API Release
Structure API has been expanded — we've added support for custom columns for the Structure widget. This part of the API should supply the necessary data to the JavaScript API.
JIRA Version |
New API Version |
---|---|
5.x |
7.6.0 |
6.x |
8.2.0 |
See Structure API Versions for full version information and downloads.
3. Compatible Changes in the Java API
3.1. New package com.almworks.jira.structure.api.column
This package allows to define components that support custom columns. You can extend data fields that are provided to the Structure widget (data
subpackage), and how the values are exported to Excel and printable format (export
, excel
, and printable
subpackages.)
3.2. New package com.almworks.jira.structure.api.aggregate
This package allows to implement a custom column that aggregates values over structure through the means of implementing the Aggregate
interface. There's a caching layer, so values will be recalculated only for the changed issues and all dependent issues.
Notably, progress aggregates such as the Progress Column are now implemented through this package (see progress
subpackage.)
3.3. Deprecated classes
ProgressCalculator
and ProgressInfo
classes are now deprecated; their counterparts from the new aggregate
package – AggregateCalculator
and progress.ProgressAggregateFactory
– should be used instead. The latter supports the new, highly customizable Progress Column.
3.4. Other changes
- We've added methods for the new kinds of columns to
ViewSpecification
. - Due to the ability to rename projects in JIRA 6, we've added project ID-based methods to
StructureConfiguration
. - We've added new functions to extract data from JIRA issue to
JiraFunc
. They make for easy implementation of the new kinds of columns for a specific JIRA issue field.
4. New Plugin Module Types
To extend Structure with new columns, you need to declare the extending components in your atlassian-plugin.xml
using the new module types – structure-widget-extension
, structure-issue-data-provider
and structure-export-renderer-provider
. See Structure Plugin Module Types for reference or the Status Bar Column Plugin for an example.