Redmine 6.1 新機能紹介
2025年9月21日にリリースされたRedmine 6.1.0の76件の機能追加・修正の中から新機能29件をピックアップして紹介します。
目次
-
- 活動画面を最適化しパフォーマンスを改善
- Version#wiki_page メソッドを最適化しSQLクエリを削減する
- IssuesController#show メソッドを最適化しSQLクエリを削減する
- TimeEntryActivity#default_activity_id メソッドを最適化しSQLクエリを削減する
- ガントチャートのサーバ側での処理時間短縮
- プロジェクト表示時の不要なSQLクエリを削減
- Version::FixedIssuesExtension#issues_progress の最適化
- ガントチャートのバージョン表示におけるSQLクエリの最適化
- ロードマップのバージョン表示を最適化
-
- OAuth2に対応 おすすめ
Redmineとは:
Redmineはオープンソースのプロジェクト管理ソフトウェアです。オンプレミスのサーバなど自前の環境に自由にインストールできるほか、 クラウドサービス も利用できます。Redmineについて詳しくは Redmine.JP (Redmine日本語情報サイト)をご覧ください。
Activity view (活動画面)
Redmine 6.0 新機能(1): 活動画面に表示される説明文の最大文字数を240文字に拡大
Feature #42041: Increase the maximum description length to 240 characters in the Activity view
活動画面に表示される説明文の文字数が、次期バージョンでは現行の120文字から240文字に拡大されました。
Redmine 6.0の表示
Redmine 6.1の表示
Redmine 6.0 新機能(2): 活動画面の表示される説明に含まれる引用テキストを省略する
Feature #42043: Abbreviate quoted text in descriptions in Activity view
Redmine 6.0以前では、活動画面に説明文やコメントが表示されるとき、引用テキストが含まれる場合がそのまま表示されます。引用テキストが長文の場合、引用テキストで埋め尽くされてコメント本文が表示されない場合があります。
Redmine 6.1では、引用テキストが省略され、引用テキストが長文でも埋め尽くされることなく、コメント本文が表示されるようになりました。
Redmine 6.0の表示。引用テキストで埋め尽くされている。
Redmine 6.1の表示。引用テキストが省略され、コメントが表示されている。
Administration(管理)
Redmine 6.0 新機能(3): ロール削除時のエラーメッセージに使用中のプロジェクト一覧表示
Feature #42441: Improve error message on role deletion by listing projects using the role
「管理」→「ロールと権限」のロール一覧画面で「削除」クリック後に表示されるメッセージに、削除しようとしているロールを使用中のプロジェクト名が表示されるようになりました。プロジェクト名はリンクになっており、クリックするとそのプロジェクトの設定画面の「メンバー」タブが表示されます。
Redmine 6.0以前では、ロールが使用中である警告は表示されましたが、どのプロジェクトで使用されているかを自分で調べなければなりませんでした。Redmine 6.1からはクリックひとつで使用中のプロジェクトの設定画面に移動し、どのように使われているかすぐに確認できるようになりました。
Code cleanup/refactoring(コードクリーンナップ / リファクタリング)
Redmine 6.0 新機能(4): Member#role_ids= メソッドをリファクタリングし可読性と効率性を向上
Redmine 6.1では Member#role_ids=
メソッドをリファクタリングし、不要な MemberRole
レコードの識別と削除の処理を簡素化することで、可読性と効率性を向上します。
Custom fields(カスタムフィールド)
Redmine 6.0 新機能(5): カスタムフィールドの新しい形式「Progress bar」
おすすめ
Feature #42335: "Progress bar" custom field format
カスタムフィールドの形式に新しく「Progress bar」が追加されました。標準フィールド「進捗率」とは別にカスタムフィールドとしてパーセンテージの値を入力できます。チケットの作業がどれだけ終わったかを表す進捗率とは異なる側面の進捗や度合いを可視化できます。
Issues(チケット)
Redmine 6.0 新機能(6): 関連するチケットと子チケットの一覧に表示する項目のカスタマイズ
おすすめ
Feature #42477: Configurable columns for the lists of child and related issues
チケット画面内の「関連するチケット」と「子チケット」の一覧に表示する項目および並び順が指定できるようになりました。カスタムフィールドを表示したり、不要な項目は非表示にしたりするなど好きなようにカスタマイズができます。
Redmine 6.0まではステータス、担当者、開始日、期日、進捗率など決められた項目が表示されていました。
「管理」→「設定」→「チケットトラッキング」→「関連するチケットと子チケットの一覧で表示する項目」で設定できます。「テーブルヘッダを表示」をONにすると、項目名も表示されます。
設定内容は、Redmine全体(全プロジェクト)で共通の設定となります。
Redmine 6.0 新機能(7): チケットを更新した後のURLに含まれるナビゲーションのためのパラメータを削除する
Feature #42073: Remove navigation parameters from issue detail URLs after updates
Redmine 6.0以前では、チケットを更新した後のURLに、チケット一覧のナビゲーションのためのパラメータが付与されます。 例えば、以下のようなURLで「?」以降にパラメータが付与されます。
https://redmine.example.jp/issues/2?issue_count=11&issue_position=10&next_issue_id=1&prev_issue_id=3
Redmine 6.1では、パラメータが付与されなくなりました。以下のようなURLになります。
https://redmine.example.jp/issues/2
Redmine 6.0の表示例
Redmine 6.1の表示例
Performance(パフォーマンス)
Redmine 6.0 新機能(8): 活動画面を最適化しパフォーマンスを改善
Feature #42077: Optimize activity view performance through association preloading for journals
活動画面において、各履歴に対して複数のSQLクエリが発生し、パフォーマンスの問題を引き起こす可能性があります。
Redmine 6.1では、Journal#journalized
メソッドの修正と acts_as_activity_provider
の :scope
パラメータが修正されました。これにより不要なSQLクエリが実行されなくなり、パフォーマンスが改善します。
Redmine 6.0 新機能(9): Version#wiki_page メソッドを最適化しSQLクエリを削減する
Feature #42121: Optimize Version#wiki_page method
Version#wiki_page
メソッドは、 wiki_page_title
が空の場合でも project.wiki
を評価するように作られています。これにより、不要な SQL クエリが wikis
テーブルに対して実行されてしまう場合があります。
Redmine 6.1では、wiki_page_title
が存在する場合にのみ project.wiki
を評価するようにこのメソッドが改善されました。これにより不要なSQLクエリが実行されなくなり、パフォーマンスが改善します。
Redmine 6.0 新機能(10): IssuesController#show メソッドを最適化しSQLクエリを削減する
Feature #42144: Optimize IssuesController#show by skipping time tracking queries when disabled
IssuesController#show
メソッドは、「時間管理」モジュールが無効の場合でも時間管理に関するデータベースや関連データを読み込もうとするように作られています。
Redmine 6.1では、「時間管理」モジュールが有効な場合にのみ時間管理に関するSQLクエリを実行するようにこのメソッドが改善されました。これにより不要なSQLクエリが実行されなくなり、パフォーマンスが改善します。
Redmine 6.0 新機能(11): TimeEntryActivity#default_activity_id メソッドを最適化しSQLクエリを削減する
TimeEntryActivity#default_activity_id
メソッドは、時間管理の作業分類のデフォルト値を決定するメソッドです。このメソッドは、ひとつのチケットを表示する場合にも呼び出されます。
その際、ユーザーのロールやシステム全体のデフォルト値など、複数の条件を考慮するような仕組みになっています。
例えば、ロールにデフォルト値が設定されていればその値に決定できますが、先にその値が見つかったとしても他の条件を全てチェックしてから決定するように作られています。そのため、実行する必要のないSQLクエリが実行されるようになっています。
Redmine 6.1では、デフォルトの作業分類が決定された時点で直ちに処理を終了できるようにこのメソッドが修正されました。これにより不要なSQLクエリが実行されなくなり、パフォーマンスが改善します。
Redmine 6.0 新機能(12): ガントチャートのサーバ側での処理時間短縮
Feature #42663: Optimize Gantt chart rendering by reducing version-related queries
ガントチャートを表示する際のパフォーマンスを向上させるため、バージョンに関連するクエリ(データベースへの問い合わせ)が削減されます。多くのバージョンが存在する場合の表示速度を改善します。
Redmine 6.0 新機能(13): プロジェクト表示時の不要なSQLクエリを削減
プロジェクトの概要ページを表示する際に、そのプロジェクトに子プロジェクトが存在しない場合には、サブプロジェクトに関する不要なSQLクエリが実行されないように改善されます。これにより、無駄なデータベースアクセスをなくし、ページの表示を高速化します。
Redmine 6.0 新機能(14): Version::FixedIssuesExtension#issues_progress の最適化
バージョンの進捗状況を計算する内部処理が最適化されます。チケットがクローズされているかどうかの判定が繰り返し呼ばれるのを避けることで、処理の効率を向上させます。
Redmine 6.0 新機能(15): ガントチャートのバージョン表示におけるSQLクエリの最適化
ガントチャートでバージョンの件名を表示する際の、SQLクエリの条件の順序を見直すことで、不要なクエリの実行を避けるようになりました。これにより、データベースアクセスの効率化と表示速度が改善されます。
Redmine 6.0 新機能(16): ロードマップのバージョン表示を最適化
ロードマップページでバージョンを表示する際のパフォーマンスが改善されました。チケット担当者のメールアドレスを事前に読み込むことで表示を高速化します。
REST API
Redmine 6.0 新機能(17): OAuth2に対応
おすすめ
Feature #24808: OAuth2 support for Redmine API Apps (OAuth2 Provider)
Redmine 6.1からOAuth2に対応しました。
Redmine 6.0以前は、Redmineと連携するアプリケーションでは、ユーザーに紐づくAPIキーを使ってREST APIを呼び出す必要がありました。これにはいくつかの欠点があります。
- ユーザーはAPIキー(認証情報)をアプリケーションに登録する必要がある
- アプリケーションのアクセスを制限する方法がないため、そのユーザーが持つすべての権限を持つ
OAuth2では、アプリケーションを特定の権限に制限するメカニズムがあります。さらに、ユーザーがアプリケーションの利用を明示的に許可する仕組みも提供されます。これにより、ユーザーは、アプリケーションが自分に代わってどのようなデータにアクセスするかを確認してから利用を開始できるようになりました。その際、APIキーを生成してアプリケーションに保存する必要もありません。
アプリを許可するときの画面
OAuth2でREST APIを使う場合は「管理」→「設定」→「API」タブから「RESTによるWebサービスを有効にする」をONにした上で「管理」→「アプリケーション」→「新しいアプリケーション」画面からOAuth2アプリケーションを登録します。
アプリケーションの登録画面
SCM(バージョン管理システム)
Redmine 6.0 新機能(18): Mercurial 5.1 以降のリポジトリと連係するように改善
Redmine にはバージョン管理システムとの連係機能が備わっています(参考: 5分でわかるRedmineのリポジトリ連係機能)。サポートするバージョン管理システムにはGit, Subversionなどがあります。その中にMercurialもあります。
MercurialはPythonで開発されています。以前はPython バージョン2系で稼動していましたが、近年リリースされたバージョンで Python 3系に移行しました。 Redmine 6.0以前がサポートするのは Python 2系で動作するMercurialであるため、新しいバージョンのMercurialのリポジトリと連係できない状況です。
Redmine 6.1では、Python 3系で開発されたMercurialをサポートするようになりました。 具体的にはMercurial バージョン5.1以降がサポートされます。Mercurial バージョン 5.1 未満はサポートされなくなりますのでご利用中の方はご注意ください。
Text formatting(テキスト処理)
Redmine 6.0 新機能(19): HiDPIディスプレイで貼り付けた画像を適切なサイズで表示する
おすすめ
Feature #38504: Display pasted images in appropriate size on HiDPI displays
HiDPIディスプレイでスクリーンショットを撮影し、クリップボードからRedmineに貼り付けると、撮影したときのサイズの2倍の大きさで表示されます。Redmine 6.1では、ペーストするときにマークアップにCSSのwidthプロパティが追加され、適切なサイズで表示されるようになりました。もし、望むようなサイズで表示されない場合は、widthプロパティを変更することで調整できます。
Redmine 6.0 新機能(20): CommonMark Markdownのアラート表示
Feature #42603: Enable commonmark alert extension
CommonMark Markdownでアラートが表示できるようになりました。Wikiやチケットの文中で、注意事項や補足事項などを目立たせることができます。
管理→設定→全般→テキスト書式が「CommonMark Markdown (GitHub Flavored)」の場合のみ使用できます。
記述例
> [!NOTE]
> Wiki page edits are preserved as history, allowing you to restore previous versions if needed.
> [!TIP]
> To quickly review the update history of an issue, use the "History" tab for convenient access.
> [!WARNING]
> Deleting an issue is a permanent action. Be certain it is truly necessary before proceeding.
> [!IMPORTANT]
> Changing role permissions can affect user access across all projects, so be mindful of potential impacts.
> [!CAUTION]
> When installing plugins, make sure to verify compatibility. Version differences can cause unexpected behavior.
UI(ユーザーインターフェイス)
Redmine 6.0 新機能(21): リアクション機能(いいねボタン)
おすすめ
Feature #42630: Introduce reaction feature to issues, notes, news, and forums
チケット、コメント、ニュース、フォーラムに「いいね」のリアクションができるようになりました。コメントで返信するほどではないときに既読や共感を簡単に伝えられるので、コミュニケーションを取りやすくなります。
いいねボタンにカーソルを合わせるといいねしたユーザー名が表示される
Redmine 6.0 新機能(22): チケットの題名を画面上部に固定表示
おすすめ
Feature #42684: Add a sticky header to keep the issue subject visible on scroll
現在のチケット画面では、チケットの題名はページの最上部に表示されます。そのため、画面を下へスクロールすると題名が見えなくなることがあります。特にチケットを編集しようとして「編集」をクリックすると編集領域まで飛ばされて最上部に編集画面が表示されるため、題名が見えなくなります。複数のチケット画面を開いていると、誤って別のチケットを更新してしまうおそれがあります。
Redmine 6.1では、題名が画面から見えなくなりそうになると画面上部に固定表示されるようになりました。コメントがたくさんあるチケットでもどのチケットを表示しているかが一目でわかるので、誤って別のチケットを更新してしまうミスを防ぐ効果があります。
題名が画面上部に固定表示される
Redmine 6.0 新機能(23): <pre>
タグを使った整形済みテキストをクリップボードにコピーするボタン
Feature #29214: Button to copy pre
code block content to the clipboard
ソースコードなどをそのまま表示する整形済みテキスト(Markdownの ```
やTextileの <pre> で囲ったテキスト)をクリップボードにコピーできるボタンが追加されました。整形済みテキストにカーソルを合わせるとボタンが表示されます。
Redmine 6.0 新機能(24): 引用アイコンをコメントから引用符へ変更
Feature #31531: Change quote note icon to quotation mark icon
チケットの説明やコメントを引用するためのアイコンが、「コメント」から「引用符」へ変更されました。コメントアイコンは、引用を表現するアイコンとしては一般的ではないことから、より分かりやすい引用符へ変更することになりました。
Redmine 6.0 新機能(25): テーブルの並べ替え機能の無効化
Redmine 4.2で追加されたテーブルの並べ替え機能を無効化できるようになりました。
テーブルの並べ替え機能にはいくつかの問題点が見つかっています。
- ヘッダーにカーソルを合わせるとセルの幅が広がって点滅する
- テキストの選択が難しくなる
- 一度並べ替えされたテーブルは元に戻す方法がなく、同じヘッダーをクリックしても異なる順序になることがある
これらの問題点を解決するために、テーブルの並べ替え機能を無効化できる設定が追加されました。「管理」→「設定」→「表示」タブ→「コンテンツ内テーブルの Tablesort (JavaScript) による並べ替え」をOFFにすると、並べ替えが行われなくなります。
Redmine 6.0 新機能(26): チケット履歴のUI改善
Feature #40744: Refresh history tabs look and feel
チケットの履歴タブが改善されました。チケットの履歴タブは履歴のひとつひとつに見出しがあり、更新者と更新日時が表示されます。Redmine 6.0以前は、その見出しの全てに水平線が表示されているため、履歴が多くなると見づらくなります。Redmine 6.1では水平線の代わりに背景色が追加され、履歴が多くなっても見やすくなるように改善されます。
Redmine 6.0 新機能(27): 開発者向けにSVGアイコンを確認できるページ追加
Feature #41725: Add SVG icons sample view
開発者向けにSVGアイコンの一覧ページが追加されました。Redmineを開発モードで実行し、 http://hostname/rails/info/svg_icons
にブラウザでアクセスすると、利用できるSVGアイコンがすべて表示されます( hostname
には実行しているRedmineのホスト名やIPアドレスが入ります)。
Redmine 6.0 新機能(28): チケット一覧で担当者と作成者の列に表示される自分の名前を太字にする
Feature #41910: Bold current user's name in Assignee and Author columns on issues list
チケット一覧で担当者と作成者の列に自分の名前が表示されるとき、Redmine 6.1では自分の名前が太字で表示されるようになりました。
Redmine 6.0 新機能(29): Gravatarアイコンのデフォルトにイニシャル追加
Feature #42623: Adds initials to the list of default Gravatar options
ユーザーがGravatarアイコンを登録していない場合に、デフォルトのアイコンとしてユーザーの姓と名の頭文字が表示できるようになりました。視覚的にどのユーザーか分かりやすくなります。
(例)赤田舞さんは「赤舞」、渡辺健斗さんは「渡健」と表示される
管理→設定→表示→「デフォルトのGravatarアイコン」で「Initials」を選択