Releases: dddjava/jig
2026.5.4
JIGドキュメントの変更
ドメインモデル
- ドメインモデルの「パッケージ関連図」にて階層集約を導入しました。
- 集約しないパッケージ関連と同レベルのパッケージ階層に集約しての関連を切り替えられるようになっています。
ダイアグラム全般
- SVGキャッシュによる再描画の高速化
- ダイアグラムの再描画にSVGキャッシュを導入しました。チェックボックスの切り替えや向きの変更など、一度描画した内容の切り替えが即座に行われるようになり、操作感が向上しました。
設定の変更
- 設定項目の一元化、検証ロジックの統一、およびソース拡張への対応を目的として、設定機構を大幅に刷新しました。
- CLIからの Mode (LIGHT) 廃止: GraphvizやPOIの廃止に伴い全体的に出力にかかるコストが軽減されているため、CLIから LIGHT モードを削除しました。
Full Changelog: 2026.5.3...2026.5.4
2026.5.3
JIGドキュメントの変更
個別のドキュメントの変更はありません。
全体的な多言語化とブラウザキャッシュによる誤認の改善です。
クライアントサイド i18n
ドキュメント右上の言語スイッチャーから、閲覧時に表示言語を切り替えられるようになりました。
これまでJIG実行環境の Locale.getDefault() 依存、かつ半端だったものを一律対応しています。
切り替え対象は見出しなどのJIGが出力しているもので、解析対象ソース由来(Javadocなど)は対象外です。
もし用語名に同じ文言が使用されていても切り替えません。
出力されるドキュメントのデフォルトロケールは日本語になります。
英語にしたい場合はJIG実行時のプロパティ jig.locale=en を指定ください。
キャッシュバスティング
HTML から参照するローカル CSS / JS / data ファイルに、キャッシュバスター( ?v=... )を付与するようにしました。
再生成後にブラウザのハードリロードなしで最新の表示が反映されるようになります。
Full Changelog: 2026.5.2...2026.5.3
2026.5.2
JIGドキュメントの変更
ライブラリ依存情報(新規)
ライブラリ依存情報を可視化するドキュメントを追加しました。
パッケージごとに使用しているライブラリを可視化します。
意図しないレイヤやパッケージでの使用がないかをみたりできます。
厳密に使用箇所の制限を行いたい場合はArchUnitなどをお勧めします。
パッケージ関連
「Deprecated のみの関連を除外」を追加しました。
削除予定のクラスに由来する関連は表示されなくなります。
index.html
解析対象が git リポジトリの場合、コミット情報・リモートリポジトリ情報を表示します。
GitHub / GitLab / Bitbucket は Web リンクを生成します。
簡易的なものなので、CI環境など .git が読みにくい環境では表示されません。
用語集
上記のGitリポジトリ情報が表示されている場合、用語集の属性情報に該当ソースのリンクを表示するようにしました。
ライブラリ更新
- build(deps): bump io.swagger.core.v3:swagger-annotations-jakarta from 2.2.49 to 2.2.50 by @dependabot[bot] in #1082
- build(deps): bump gradle-wrapper from 9.5.0 to 9.5.1 by @dependabot[bot] in #1083
- build(deps): bump org.ow2.asm:asm from 9.9.1 to 9.10 by @dependabot[bot] in #1084
Full Changelog: 2026.5.1...2026.5.2
2026.5.1
JIGドキュメントの変更
ダイアグラム全般
- 用語名と物理名を切り替えるボタンを追加しました。
- FQNのツールチップを出せるノードに追加しました。
用語集
- Swaggerの
@Schemaアノテーションからの用語抽出に対応しました。 - 用語の由来(Javadoc/Swagger)を表示するようにしました。
パッケージ関連
- グルーピングの用語名に対応しました。 #1080
入力インタフェース
- 表示設定に「簡略表示」を追加しました。エントリーポイントの入力/出力が表示されなくなり、名称とパスのみの表示になります。
出力インタフェース
- 各ノードにクリックナビゲーションを追加しました。
インサイト
- セクションのジャンプナビゲーションを追加しました。
その他の変更
ライブラリ更新
- build(deps): bump com.github.javaparser:javaparser-core from 3.28.0 to 3.28.1 by @dependabot[bot] in #1081
Full Changelog: 2026.4.8...2026.5.1
2026.4.8
おしらせ( 2026.4.1 再掲)
Graphvizによる画像ファイルおよびPOIによるExceファイルドキュメントは 2026.4.1 で廃止しました。
詳しくは wiki を参照ください。
JIGドキュメントの変更
全般
- サイドバーの折りたたみ機能: 全てのドキュメントでサイドバーを折りたためるようになりました。ダイアグラムなどのメインコンテンツをより広く表示できます。
パッケージ関連図
- パッケージテーブルのクラス数や関連数の横幅を狭くしました。
- 「相互依存と原因」を「相互依存分析」に変更しました。相互依存分析は全体を折りたためるようにしています。
- 相互依存分析の変更点
- 詳細を「概要」「クラス関連図」「テキスト」「シミュレーション」のタブで確認できるようになりました。
- #1077 の対応です。概要を選択することでダイアグラムやテキストの非表示に代えられる想定です。
- クラス関連図
- 方向フィルターを追加しました。相互依存しているクラス間の関連を、依存の方向(A→B / A←B)で絞り込めるようになりました。解消する方向(おそらく関連数が少ない方)を解消する際は片方を見ることが多いので。
- シミュレーション
- 相互依存しているパッケージを解消した結果のシミュレーションができます。
- 双方向を片方向にした場合や、新しいパッケージ(上位/下位)を導入して依存を整理するシミュレーションが可能です。
- 詳細を「概要」「クラス関連図」「テキスト」「シミュレーション」のタブで確認できるようになりました。
出力インタフェース
- レイアウトを入力インタフェースやユースケースとあわせました。
- 呼び出し元ユースケースを表示するようにしました。これでユースケースドキュメントと行き来できます。
- デフォルトの表示対象から「アダプタ」を外しました。Repositoryインタフェースがポートで1:1で実装クラスを作成しているケースが多く、有用な情報が表示されないためです。
ドメインモデル
- 種類のフィルターに「パッケージ」を追加しました。
ユースケース
- 入力・出力(引数と戻り値)の表示方法を変更しました。
ライブラリ更新
- build(deps): bump io.swagger.core.v3:swagger-annotations-jakarta from 2.2.48 to 2.2.49 by @dependabot[bot] in #1078
- build(deps): bump gradle-wrapper from 9.4.1 to 9.5.0 by @dependabot[bot] in #1079
Full Changelog: 2026.4.7...2026.4.8
2026.4.7
おしらせ( 2026.4.1 再掲)
Graphvizによる画像ファイルおよびPOIによるExceファイルドキュメントは 2026.4.1 で廃止しました。
詳しくは wiki を参照ください。
変更
ドメインモデル
- フィールドやメソッドをタブ表示に変更しました。
- 種類のフィルタリング
- 文字列や日付などでの表示対象を選択できるようにしました。
- ダイアグラムの表示切り替え
- 関連元・関連先の表示をクラス関連図・クラス図でもできるようにしました。
- クラス図でフィールド・メソッド・可視性の表示を選択できるようにしました。
- 「表示設定」からダイアグラムの向き変更をなくしました。ダイアグラム単位でしか変更しないかなと思って。
入力インタフェース
- サイドバーをパッケージごとにグルーピングするようにしました。
- エントリーポイントの表示を汎用的なメソッドの表示から変更してみました。
ユースケース
- メソッドをタブ表示に変更しました。
- フィールドも出すようにしました。
その他
- 期間判定ロジックの不具合を修正しました。期間でないものが期間と判定されていました。
ライブラリ更新
- build(deps): bump org.springframework.boot:spring-boot-gradle-plugin from 4.0.5 to 4.0.6 by @dependabot[bot] in #1076
Full Changelog: 2026.4.6...2026.4.7
2026.4.6
おしらせ( 2026.4.1 再掲)
Graphvizによる画像ファイルおよびPOIによるExceファイルドキュメントは 2026.4.1 で廃止しました。
詳しくは wiki を参照ください。
変更
ドメインモデル
- サイドバーの構成やフォントなどを他とあわせました
- 説明の表示/非表示を切り替えられるようにしました
- サイドバーにパッケージとクラスを区別するバッジを追加しました。
- パッケージに表示しているテーブルにバッジをつけました
全般
- 説明文に枠と背景をつけました。
- サイドバーのスクロール時の挙動(重なりの解消など)を改善しました。
Full Changelog: 2026.4.5...2026.4.6
2026.4.5
おしらせ( 2026.4.1 再掲)
Graphvizによる画像ファイルおよびPOIによるExceファイルドキュメントは 2026.4.1 で廃止しました。
詳しくは wiki を参照ください。
変更
- サイドバーのグループごとの開閉とグルーピングの追加
- 入力インタフェースで「リクエストハンドラ」などの単位で開閉できるようにしました。
- ユースケースをパッケージ単位でグルーピングし、パッケージおよびクラス単位で開閉できるようにしました。
- ユースケースのパッケージはツリー対応していません。
- カードタイトルにアンカーリンクを追加しました。
- ハッシュ付きURLでアクセスした際のスクロール位置を適切に補正するようにしました。
- 移動後にダイアグラムが表示される場合に意図したところとズレて若干使いづらかったのが改善しています。
- ダイアグラムの背景色と外枠を調整しました。
Full Changelog: 2026.4.4...2026.4.5
2026.4.4
おしらせ( 2026.4.1 再掲)
Graphvizによる画像ファイルおよびPOIによるExceファイルドキュメントは 2026.4.1 で廃止しました。
詳しくは wiki を参照ください。
変更
全般
- ダイアグラムの操作ボタン(向き変更など)を、通常時は非表示、ホバー時のみ表示するようにしました。
- ダイアグラムのノードホバー時にノードに下線がでないようにしました。クリックできることはカーソルで示します。
入力インタフェース
- 先頭に「エントリーポイント一覧」テーブルを追加しました。
@Scheduledメソッドをスケジューラーとして検出し、入力インタフェースのエントリーポイントとして扱うようにしました。- エントリーポイントの種類(コントローラー、メッセージリスナー、スケジューラー)ごとにサイドバーをグループ化しました。
- リクエストハンドラ一覧にパス絞り込みフィルターを追加しました。
- サイドバーに表示設定(タイプ別の絞り込み)を追加しました。
- ダイアグラム内のノード形状を、エントリーポイントの種類(パス、ハンドラなど)に応じて変更するようにしました。
ドメインモデル
- クラス図を追加しました
パッケージ関連
- 「相互依存と原因」のUIを調整しました。(けどしっくりきてない。)
2026.4.3
おしらせ(再掲)
Graphvizによる画像ファイルおよびPOIによるExceファイルドキュメントは 2026.4.1 で廃止しました。
詳しくは wiki を参照ください。
変更
パッケージ関連
- 階層探索と関連探索を分離しました。
- パッケージ選択状態をURLに持つようにしてみました。まだ調整中なのでうまく反映されなかったり、バージョン間の互換は考えていません。
- パッケージのフィルタリングや選択をパッケージ一覧で選択する形に変えました。
- 図の最大縦幅を画面の50%にしてみました。
ユースケース
- 入出力インタフェースのメソッドを表示するようにしました。
出力インタフェース
- ポートがない場合でも「外部型」タブでアクセサを表示するようにしました。
What's Changed
ライブラリ更新
- build(deps): bump io.swagger.core.v3:swagger-annotations-jakarta from 2.2.46 to 2.2.47 by @dependabot[bot] in #1074
- build(deps): bump io.swagger.core.v3:swagger-annotations-jakarta from 2.2.47 to 2.2.48 by @dependabot[bot] in #1075
Full Changelog: 2026.4.2...2026.4.3
