Jira 8.17 への準備

This documentation is intended for Jira developers who want to ensure that their existing apps are compatible with Jira 8.17. 

概要

最新バージョン

ここでは最新の EAP についての情報をご案内します。

アプリケーション / 日付EAP 番号バージョン (Maven)ダウンロード

Jira Core/Software

 

8.17.0-rc02

8.17.0-m0006

EAP

Source files (Core)

Source files (Software)

Jira Service Management

 

4.17.0-rc02
4.17.0-m0006

EAP

ソース ファイル

変更の概要

In this section we'll provide an overview of the changes we intend to make, so you can start thinking how it might impact your apps. Once they're ready, we'll indicate when a change has been implemented, and in which milestone. 

Upgraded dependencies and libraries

ステータス: 実装済み

As announced in this post about security uplift, we’re putting more focus on upgrading core components and libraries in Jira to improve security. Here’s a list of libraries that we’ve already upgraded. We’ll update it as we release new EAPs:

Jira Core/platform

EAP

ライブラリ/依存関係

ソース バージョン

ターゲット バージョン

重要な注意事項

EAP-01

dom4j

1.4.0

1.4.1-atlassian-1

dom4j will now validate XML element names according to the XML standard, disallowing e.g. empty names or names containing spaces.

EAP-01

JSLibs / Marionette

1.6.1

1.6.4

If possible, migrate to 4.x.

EAP-01

JSLibs / D3

3.3.14
3.4.14

3.5.5

-

EAP-01

Bouncy Castle PKIX, CMS, EAC, TSP, PKCS, OCSP, CMP, and CRMF APIs

1.48

1.68

-

EAP-01

Bouncy Castle Provider

1.64

1.68

Due to a security vulnerability of the BKS-V1 keystore format (provided by the BouncyCastle library), we recommend that you don't use it in your Jira instance. Learn more

EAP-01

Apache Ant Core

1.7.1

1.9.15

-

EAP-01

1.10.5

1.10.9

-

EAP-01

XFire Core

removed

-

-

EAP-01

XFire Aegis

removed

-

-

EAP-01

FasterXML / Jackson

2.10.4

2.12.1

-

EAP-01

jsoup

1.8.3

1.10.3

-

EAP-01

jcommander

1.4.8

1.8.1

-

EAP-02XStream1.4.101.4.15Due to a security vulnerability of the previous XStream libraries, we recommend to use version 1.4.15 (or higher) which is also provided in Jira DC. Learn more

We’ve also fixed security vulnerabilities related to the following libraries/dependencies either by upgrading, changing, or excluding/removing them. If your app relies on any of these libraries, make sure to test it with the EAPs or check the source files for details:

  • Apache Tika Core (transitive dependency removed in version 1.7)

  • commons-net 3.7.2 (transitive dependency excluded)

  • snakeyaml 1.15 (transitive dependency excluded)

  • snakeyaml 1.8 (transitive dependency excluded)

  • Jetty Server

  • Jetty :: Asynchronous HTTP Client

  • Jetty :: Server Core

  • Jetty :: Utility Servlets and Filters

  • Jetty :: Utilities

  • Jetty :: Security

  • Netty

  • Netty/Codec

  • Netty/Codec/HTTP

  • Netty/Handler

Jira test suites migrated to Selenium 3

From now on Jira is using Selenium 3.141.59. We've adjusted Jira page objects. If you also use Jira page objects in your app, make sure you migrate your tests to Selenium 3.

Jira Service Management

EAPLibrary/dependencyソース バージョンターゲット バージョン重要な注意事項

EAP-01

JEST

24.5.0

26.6.3

-

EAP-01

log4j

1.2.17

1.2.17-atlassian-3

-

EAP-01

awesome-typescript-loader

5.2.1

-

Replaced with ts-loader 26.4.4

EAP-01

Babel/Core

7.4.0

7.12.9

-

EAP-01

com.atlassian.confluence

6.13.8

6.13.18

-

EAP-01

https-proxy-agent

2.2.1

5.0.0

-

EAP-01

com.atlassian.soy:atlassian-soy-cli-support

5.0.0

5.0.2

-

EAP-01

com.google.guava:guava

26.0-jre

30.1-jre

-

Jira の柔軟な用語選定 (Data Center)

Status: IMPLEMENTED (eap 01)

As we informed you in Preparing for Jira 8.15, we enabled admins to change generic Jira terms and now we improved this feature even more. With this functionality, we give you a possibility to keep consistent naming of sprints and epics between Jira and the “Agile at Scale Frameworks” including SAFe and LeSS. Terminology changes apply to any variant of English and are synchronized with Advanced Roadmaps. Jira will keep capitalization of original terms whenever it's possible.

機能概要

Here’s a summary of what’s available in this EAP:

  • Managing terminology through Jira UI (available)

    Admins are able to change terminology directly in Jira. To view and manage your terms:
  1. Go to Administration > System > Terminology
  2. Click Change terminology

    You can define singular and plural forms of your new terms according to the following rules:
    • You can’t swap names of epics and sprints.
    • 40 文字の制限があります。
    • Terms must be unique (e.g., epics and sprints can’t both be called “Potatoes”).
    • すべてのフィールドに 1 文字以上の値が必要です。
  • Adjusting your app’s code to new terminology (available)
    To make your translated strings compatible with Flexible Terminology, you need to mark all supported terms with % characters. Those terms will get new names, configured by the Jira admin. If you, for some reason, want to keep the original names in your app even if users customized them in their Jira instance, don’t add these characters.
  • Managing terminology through Java and REST APIs (available)
    You can view current terminology, change it, or be notified about the changes.
  • Changes are visible around Jira (available)

With this functionality, terms will also be replaced in custom field names and issue types, and everywhere else in Jira, for example in reports, issues, and search results.

制限事項:

  1. Terminology changes will apply only to English language variants. For other languages, Jira displays original names.

  2. Whenever you change the term sprint in Jira, it will also be changed in Advanced Roadmaps. To have the term epic visible in Advanced Roadmaps, you need to make this change in Plans > Administration > Hierarchy levels.

  3. Flexible Terminology uses translations of Custom Field and Issue Type to localize their UI names. As a result, all REST APIs will return localized names when querying the API or saving the issue (for example, new term). Also, new change items will be persisted with translated field’s name so querying for a field’s history should take into account all current and historical names of the field. If your app or script has a hardcoded reference to an issue type named epic or custom fields with the following names:
    • エピック名

    • エピックの色

    • エピック ステータス

    • Epic Link (エピック リンク)

    • Sprint

    these need to be adapted to use IDs (recommended) or new names. You can do that by replacing epic or sprint with new terms, as returned by rest/api/2/terminology/entries.
    If your app and scripts are already using custom translations for Custom Fields or Issue Types, you don’t need to make any changes.

Exporting custom fields for Data pipeline (Data Center)

Status: IMPLEMENTED (eap 02)

We're working on making it possible for the Data Pipeline to export custom fields if they fulfill one of the following requirements:

  • The custom field is created via Jira UI using a default custom field type (such as Select List, Text Field)

  • The custom field uses a custom field type which implements the ExportableCustomFieldType interface from the public API (com.atlassian.jira.issue.export.customfield.ExportableCustomFieldType). It may apply to both default Jira custom field types and custom fields from plugins.

The exported custom fields will be added to the issue_fields_*.csv output file. There are no schema changes to this file at this point.

バージョン

We're planning to release this feature with Jira 8.17. In Jira 8.16, this feature was hidden behind a dark feature flag, and we've enabled it in this EAP. 

パフォーマンス

Exporting custom fields may increase the total export time. Our investigation found that:

  • For a dataset with 1 million issues, the export took ~7 times longer when all the custom fields were exported versus just the standard custom fields. The size of all of the output files in total increased ~2 times.

  • For a dataset with 7 million issues, the export took ~5 times longer when all the custom fields were exported versus just the standard custom fields. The size of all of the exported files in total increased ~1.5 times.

The executions have been performed on c5d.9xlarge instance. The overall instance performance have been affected within acceptable thresholds (less than 5%).

Error handling

At the moment any type of failure related to the serialization of the custom fields during the export will make the export fail. Details of the job failure should be accessible via Data Pipeline job GET endpoint and the log files.

Microsoft SQL Server 2019 のサポート

Status: IMPLEMENTED (eap 01)

Jira 8.17 will support Microsoft SQL Server 2019. 

Support for Microsoft Edge (Chromium)

Status: IMPLEMENTED (eap 02)

Jira 8.17 will support Microsoft Edge (Chromium). We will also deprecate Microsoft Edge Legacy and remove it in the next version.

Removing legacy web-resource loading feature flag JIRA SERVICE MANAGEMENT

Status: IMPLEMENTED (eap 01)

We have removed support for the sd.frontend.legacy.webresource.loading.customerportal feature flag, and it will no longer function as intended. This includes using the feature flag as a workaround to load global web-resources in our pages.

Why is it changing?

The sd.frontend.legacy.webresource.loading.customerportal feature flag was included in 4.6.x as a fallback if global web-resources were expected to be in Jira Service Management.

As part of retaining our performance improvements, and reducing our technical debt, we are now fully committed to loading our pages asynchronously.

ユーザー側で必要な操作について

  • Disable sd.frontend.legacy.webresource.loading.customerportal feature flag and test your apps behave as expected.
  • If you require any global web-resources to be available in Jira Service Management, explicitly import them in your app. You can find a full list of these dependencies here

Removing JIM obsolete importers

ステータス: 実装済み

In Jira 8.17 we removed obsolete importers deprecated in Jira 8.4 from the codebase and they are no longer available. Jira 8.17 onwards will offer only CSV and JSON importers.
Importers provided by 3rd party plugins vendors won't be affected by this change.

List of removed importers
  • Excel

  • Bitbucket

  • GitHub

  • Asana

  • Trello

  • Microsoft TFS

  • Rally

  • VersionOne

  • YouTrack

  • Axosoft

  • Pivotal Tracker

  • Bugzilla

  • FogBugz On Demand

  • FogBugz

  • Mantis

  • Trac

  • Redmine

  • Basecamp

How to turn this feature off?

In case it is critical for the customer to have the native importers re-enabled and the CSV/JSON path is not a viable option, it is possible to enable the deprecated importers through the dark feature flag jim.feature.show.deprecated.importers (How to manage dark features in Jira). Make sure that in such case the customer is aware of using a deprecated and no longer supported feature which may lead to unexpected consequences as we no longer test the native imports.

Changes to installer/installation or upgrade process as part of this feature:

After upgrading to 8.4.0 or higher, the native importers will become unavailable by default.

Changes to APIs:

API structure did not change.

However, using a deprecated importer's name as {externalSystem} parameter will result in 403 errors for the existing, import-related endpoints. This may happen when for example when a REST request is sent to one one of the following endpoints and {externalSystem} is different than csv or json

This can also be switched off by the same dark feature flag.

Logging / visibility of the change in product:

  • No new logging was introduced for the default state (when the native importers are disabled)

  • If the jim.feature.show.deprecated.importers dark feature is enabled and the customer uses one of the deprecated native importers, a warning will be added at the top of the log report produced at the end of import process. The warning says "<importerName> is no longer supported. To migrate your data, import it to Jira in the CSV or JSON file format" 

  • we've updated the plugins's descriptions in    > Manage apps > Manage apps to reflect the change.

最終更新日 2021 年 5 月 14 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.