Jira Service Management 10.0.x アップグレード ノート
ここでは、Jira Service Management 10.0.x へのアップグレードに関する重要な注意事項について説明します。このリリースの新機能や改善の詳細については、次のページをご確認ください。
プラットフォーム リリースには、過去のバージョンとの互換性を持たない大規模な変更 ("重大な変更") が複数含まれます。このような変更により、将来のリリースでより広範な開発を行うための強化な基盤を確立しています。
To increase security and performance, we’ve made changes in our core architecture that require apps to bundle their libraries. We’re collaborating with our Marketplace partners on these changes, however, some apps may not be immediately compatible with the new platform upon release and cause product experience breaks. We recommend that you review your apps before upgrading to avoid service disruptions for your organization.
To check app compatibility, visit Checking app compatibility with application updates or the Atlassian Marketplace to see if your app hosting is compatible with your product version.
- アップグレード ノート
- Removal of REST API endpoints
- Removal of the http-builder library
- Groovy 4 のアップグレード
- Jira Software 10.0 および Jira Service Management 6.0 のデータベース アップグレードに伴って予測されるダウンタイム
- アセット機能の内部 GraphQL API を削除
- 以前に廃止された機能フラグの削除
- Java API に関する後方互換性のない変更
- 依存関係の削除
- バイナリ インストーラーの削除
- アプリケーション リンクの互換性
- ベロシティ パス トラバーサルの防止と許可登録
- ランタイムの JavaServer ページのコンパイルを無効にする
- カスタム JSP をアクションによってロードされない限りブロックする
- サポート終了のお知らせ
- アプリ開発者向けの情報
- アップグレード手順
アップグレード ノート
Removal of REST API endpoints
対象: 管理者
We’ve removed the following REST API endpoints in the Jira Service Management 10.0.
変更 | 手順 |
---|---|
Removed | Use GET /servicedeskapi/admin/queues/{projectKey} |
削除済
| Use PUT /servicedeskapi/admin/queues/include-count |
Removed PUT /servicedeskapi/queues/{projectKey}/include-count | Use PUT /servicedeskapi/admin/queues/{projectKey}/include-count |
Removed PUT /servicedeskapi/queues/cache-count | Use PUT /servicedeskapi/admin/queues/cache-count |
Removed PUT /servicedeskapi/queues/{projectKey}/cache-count | Use PUT /servicedeskapi/admin/queues/{projectKey}/cache-count |
Removal of the http-builder library
対象: 管理者
We’ve removed the http-library in Jira Service Management 10.0 because it is not being actively maintained. If you are using this library in Groovy scripts, we recommend that you switch to the native Groovy GET and POST methods.
Groovy 4 のアップグレード
対象: 管理者
We’ve upgraded from Groovy 2 to Groovy 4 in Jira Service Management 10.0 for better security, functionality, and syntax support. If you’ve been using Groovy scripts in Assets, test your existing scripts in a non-production environment to make sure your scripts work properly.
重要かつ重大な変更点は次のとおりです。
switch
ステートメントのシンタックスの変更。- Changes to the syntax of the
intersect()
method on arrays. - Changes to the resolution of properties of isser/getter.
picocli
パッケージの同梱は行われなくなります。代わりに@Grab
を利用します。ImportCustomizer
はモジュールごとに一度適用されます (これまではクラスごとに一度)。groovy-jaxb
、groovy-bsf
、およびStaticTypeCheckingVisitor#collectAllInterfacesByName
モジュールの提供は終了します。- Antir2 ベースのパースは行えなくなります (新しい Parrot パーサーを利用します)。
- 一部の CLI ヘルプ メッセージのフォーマットの変更。
If you run into the following issue with
JsonSlurper
, replaceJsonSlurper
withJackson
ObjectMapper
.java.lang.RuntimeException: Unable to load FastStringService at org.apache.groovy.json.internal.FastStringUtils.getService(FastStringUtils.java:56) ~[?:?] at org.apache.groovy.json.internal.FastStringUtils.toCharArray(FastStringUtils.java:66) ~[?:?] at org.apache.groovy.json.internal.BaseJsonParser.parse(BaseJsonParser.java:114) ~[?:?] at groovy.json.JsonSlurper.parseText(JsonSlurper.java:205) ~[?:?]
The following table lists the changes to the names of classes, packages, and modules.
重大な変更の完全な一覧については次のページをご確認ください。
クラス/パッケージ/モジュール名 | Groovy 2 | Groovy 4 |
---|---|---|
groovy-xml | groovy.util | groovy.xml |
groovy | groovy.xml.QName | groovy.namespace |
groovy-ant | groovy.util | groovy.ant |
groovy-console | groovy.inspect | groovy.console |
| groovy.console.ui | |
groovy.ui.ConsoleApplet | 非推奨 | |
groovy-groovysh |
| org.apache.groovy.groovysh |
groovy-jmx |
| groovy.jmx |
groovy-nio |
| org.apache.groovy.nio.extensions.NioExtensions |
| org.apache.groovy.nio.runtime | |
groovy-swing |
| org.apache.groovy.swing.binding |
| groovy.swing.model | |
| org.apache.groovy.swing.table | |
groovy-test |
| org.apache.groovy.test |
groovy.transform.NotYetImplemented | groovy.test.NotYetImplemented | |
groovy.util | groovy.test | |
groovy.lang | groovy.test | |
GroovyClassLoader | sourceCache と classCache のタイプは Map から、より強力なタイプに変わりました |
Jira Software 10.0 および Jira Service Management 6.0 のデータベース アップグレードに伴って予測されるダウンタイム
対象: 管理者
We’re changed the structure of MySQL and Oracle databases in Jira Software 10.0 and Jira Service Management 6.0 to enhance the accuracy of timestamps for operations, down to the millisecond (operations such as creating issues, updating comments, or changing statuses).
MySQL または Oracle データベースをご利用の場合、jiraissue
、jiraaction
、および changegroup
テーブル内のいくつかのカラムがアップグレード中に移行されるため、アップグレードで追加のダウンタイムが発生します。このダウンタイムは、課題の数が 500 万件未満である場合は 20 分未満になると予想されています。なお、ダウンタイムはご利用のデータベースのパフォーマンスに加えて、jiraissue
、jiraaction
、および changegroup
テーブルの行数の影響を受ける点に注意してください。
正確なダウンタイムを把握してアップグレードを計画するには、次の手順を実行します。
ご利用のデータベースで次のコマンドを実行して行数を取得します。
SELECT COUNT(*) FROM jiraissue; SELECT COUNT(*) FROM jiraaction; SELECT COUNT(*) FROM changegroup;
- Amazon RDS db m6g.8xlarge 用に提供された次のベンチマーク データを利用して、ダウンタイムを予測します。
jiraissue
テーブル: 100 万行あたり約 26.527 秒jiraaction
テーブル: 100 万行あたり約 7.592 秒- changegroup テーブル: 100 万行あたり約 9.468 秒
たとえば、jiraissue
、jiraaction
、および changegroup
テーブルにそれぞれ 500 万、800 万、および 8,000 万行があった場合、約 16.65 分のダウンタイムが予測されます。
アセット機能の内部 GraphQL API を削除
対象: 管理者
We have removed the internal Assets GraphQL APIs to enhance security, establish consistent API patterns across Jira Service Management and Assets, and to clean up our code base. We’ve migrated the APIs that are used to configure Assets icons to new internal REST endpoints.
次のものが削除されます。
- GraphQL エンドポイント
/insight/graphql
GraphQL クエリ:
クエリ名 説明 findObjectSchemas
提供されたフィルターでオブジェクト スキーマを検索します。フィルターが提供されていない場合はすべてのオブジェクト スキーマが返されます。
objectSchema
オブジェクト スキーマを ID で取得します
findObjectTypes
提供されたフィルターでオブジェクト タイプを検索します。フィルターが提供されていない場合はすべてのオブジェクト タイプが返されます。
findObjectTypeRelations
関連するオブジェクト タイプを検索します
objectType
オブジェクト タイプを ID で取得します
icon
アイコンを ID で取得します
globalIconTheme
グローバル アイコン テーマを取得します
findObjects
提供されたフィルターでオブジェクトを検索します。フィルターが提供されていない場合はすべてのオブジェクトが返されます。
findObjectReferences
特定のオブジェクトの内向きまたは外向き参照を検索します。
findStatusTypes
提供されたフィルターでステータス タイプを検索します。フィルターが提供されていない場合はすべてのオブジェクト ステータス タイプが返されます。
findReferenceTypes
提供されたフィルターで参照タイプを検索します。
object
オブジェクトを ID で取得します
findObjectTypeAttributes
提供されたフィルターでオブジェクト タイプ属性を検索します。フィルターが提供されていない場合はすべてのオブジェクト タイプ属性が返されます。
objectTypeAttribute
オブジェクト タイプ属性を ID で取得します
findUniqueObjectAttributeValues
特定のオブジェクト タイプ属性の一意のオブジェクト属性値を検索します
GraphQL ミューテーション:
ミューテーション名 説明 createObjectSchema
新しいオブジェクト スキーマを作成
updateObjectSchema
既存のオブジェクト スキーマの名前または説明を更新
copyObjectSchema
既存のオブジェクト スキーマをコピー
deleteObjectSchema
既存のオブジェクト スキーマを削除
createObjectType
新しいオブジェクト タイプを作成
updateObjectType
既存のオブジェクト タイプを更新
updateObjectTypePosition
オブジェクト タイプ構造内で 1 つのオブジェクト タイプの位置を変更
copyObjectType
既存のオブジェクト タイプをコピー
deleteObjectType
既存のオブジェクト タイプを削除
createObject
新しいオブジェクトを作成
updateObject
既存のオブジェクトを更新
deleteObject
既存のオブジェクトを削除
createObjectTypeAttribute
新しいオブジェクト タイプ属性を作成
updateObjectTypeAttribute
既存のオブジェクト タイプ属性を更新
configureObjectTypeAttribute
オブジェクト タイプ属性の設定を変更
updateObjectTypeAttributePosition
属性リスト内で 1 つのオブジェクト タイプ属性の位置を変更
deleteObjectTypeAttribute
既存のオブジェクト タイプ属性を削除
createIcon
新しいアイコンを作成
updateIcon
既存のアイコンを更新
deleteIcon
既存のアイコンを削除
configureGlobalIconTheme
グローバル アイコンテーマを設定
resetGlobalIconTheme
グローバル アイコン テーマをデフォルト設定にリセット
以前に廃止された機能フラグの削除
In this release, we’ve removed the following feature flags:
com.atlassian.jira.agile.darkfeature.burnupchart
optimistic.transitions
com.atlassian.jira.advanced.audit.log
velocity.chart.ui
jira.quick.search
com.atlassian.jira.custom.csv.escaper
atlassian.cdn.static.assets
jira.users.and.roles.page.in.react
以前はこれらの機能フラグの背後にあったすべての機能が、既定で有効化されました。
Java API に関する後方互換性のない変更
In this release, we've removed several deprecated methods and classes. Additionally, we’ve made adjustments to a group of methods which involved modifying the signatures and return types.
依存関係の削除
In this release, we’ve removed access to a number of dependencies.
バイナリ インストーラーの削除
Starting from Jira 10.0, the .bin
and .exe
installers will no longer be available. You can still install Jira using the .zip
and .tar.gz
distributions.
Because of this change, Java is no longer bundled with Jira. Install Java manually
アプリケーション リンクの互換性
Starting from Jira 10.0, Application Links are only backward-compatible with products that have integrated a particular bug fix addressing incorrect Application Links version parsing. To enable Application Links to function properly, make sure to upgrade any other Atlassian products to a minimum supported version:
Jira Software | Jira Service Management | Confluence | Bitbucket | Bamboo | Crowd | Fisheye および Crucible |
---|---|---|---|---|---|---|
|
|
|
|
|
|
|
ベロシティ パス トラバーサルの防止と許可登録
We've upgraded Velocity to the Atlassian fork to implement path traversal prevention and allowlisting. The path traversal mechanism will escape any method call which contains parameter with path traversal symbols like ../
. The method call will appear as a string on the front-end side.
Velocity template method invocations are now restricted to an allowlist. Unauthorized invocations will trigger a log warning and will be blocked to mitigate Server-Side Template Injection (SSTI) vulnerabilities. The global method allowlists encompass JDK and Atlassian class methods. Apps have the option to define their own allowlist using the module descriptor which will complement the global allowlist. We recommend that apps only expose immutable Data Transfer Objects (DTOs) and refrain from invoking application services or beans from templates.
Furthermore, all Velocity template files residing on the file system must be both allowlisted and of an allowlisted file type. This serves as a basic defense against attacks that combine file system access with a request to achieve remote code execution.
For now, the Velocity method allowlist is in debug mode so that app developers can adjust to this mechanism and for us to complete the main allowlist and minimize the risk of issues. The debug mode will be disabled at the earliest in the upcoming LTS.
ランタイムの JavaServer ページのコンパイルを無効にする
JavaServer Pages (JSP) runtime compilation will be disabled in Jira Software 10.0. JSP files added to the Tomcat directory that aren't shipped with the product won’t be served. Furthermore, no modifications to the JSP files will be reflected. We recommend using Soy or Velocity templates instead.
カスタム JSP をアクションによってロードされない限りブロックする
We’ve blocked direct requests to JSP files. JSP files can now be only loaded when requested by an action.
サポート終了のお知らせ
We’ve removed support for:
.bin
と.exe
のバイナリ インストーラー- H2 データベース エンジン
- Java 8
- Java 11
次のバンドルを解除しました:
Java (バイナリ インストーラーが削除されたため)
For the list of supported platforms, check Supported platforms.
過去のお知らせについては「サポート終了のお知らせ」をご確認ください。
アプリ開発者向けの情報
For any important changes regarding apps, check out the Jira changelog.
FAQ for app developers
Based on your feedback from the Developer Community announcement of Jira 10.0, we’ve prepared a list of frequently asked questions.
アップグレード手順
最新のバージョンにアップグレードするために、次の資料を活用できます。
- 利用可能なすべてのアップグレード方法およびアップグレード前の手順を含む完全なアップグレード手順について、「Jira アプリケーションのアップグレード」をご参照ください。
- ご自身の環境に合わせたアップグレードをご検討の場合、[Jira 管理] > [アプリケーション] > [アップグレードを計画] をご確認ください。アップグレード先のバージョンの提案やアップグレード前のチェックの実行が行われ、詳細な手順を含むカスタムのアップグレード ガイドが提供されます。