1. Minor Java API Release

There are a few API additions coming with this release. The changes are backwards-compatible, so any code using API 16.x should work fine.

Jira Version

New API Version

7.2+

16.7.0

See Structure API Versions for full version information and downloads.

2. Compatible Changes in the Java API

2.1. Generic items

Generic items are simple items managed by Structure. They are much like Structure's folders, but they can also contain an icon and a description. Generic items are meant to be used by other Tempo products and third-party apps that integrate with Structure. We are still working on this feature, and only the server-side APIs are released with Structure 4.4. Javadocs and developer documentation for generic items will be released in a future version.

2.2. StructureException changes

StructureException is thrown by many Structure API calls. In previous versions, if an exception was associated with an item or a row, it would add the item description to its message. This has proven problematic when fetching the item itself would fail, so in version 16.7.0 this feature has been disabled by default. You can enable it by setting the "structure.exception.enable.lookup" system property to "true", but this is not recommended on a production system.

2.3. @Internal components and classes

Several classes have been moved from Structure core to the API for consumption by other Tempo products. Two new packages have been added – com.almworks.jira.structure.api.effect and com.almworks.jira.structure.api.rest.effect. They are not intended to be used by third-party developers at this point.

We have also added a new internal utility method, StructureUtil.isDevMode().