|
| 1 | +## 1.1.5 (2026-02-12) |
| 2 | + |
| 3 | +### 🚀 Features |
| 4 | + |
| 5 | +- ⚠️ **parser:** パーサーに診断(diagnostics)機能を追加 ([#23](https://github.com/r74tech/wdpr/pull/23)) |
| 6 | + |
| 7 | +### ⚠️ Breaking Changes |
| 8 | + |
| 9 | +- **parser:** パーサーに診断(diagnostics)機能を追加 ([#23](https://github.com/r74tech/wdpr/pull/23)) |
| 10 | + parse()がSyntaxTreeではなくParseResult { ast, diagnostics }を返すように変更。 |
| 11 | + ParseContextにdiagnostics配列を追加。 |
| 12 | + * refactor: parse()の戻り値変更に伴う呼び出し元を更新 |
| 13 | + テストファイルにparseAst()ヘルパーを追加し、parse().astでSyntaxTreeを取得するように変更。 |
| 14 | + wdmock-cfのpipeline.tsでもparse().astを使用し、resolveModulesのコールバックをラップ。 |
| 15 | + * feat(parser): 閉じタグ不足とインラインブロックの診断を追加 |
| 16 | + div, collapsible, tabview/tab, align, iftagsの各ブロックルールに |
| 17 | + 閉じタグ不足のwarning診断を追加。 |
| 18 | + consumeFailedDivにインラインブロック要素のerror診断を追加。 |
| 19 | + メッセージは英語で統一し、codeフィールドでi18n対応可能。 |
| 20 | + * feat(parser): code/math/html/embed/moduleブロックの閉じタグ診断を追加 |
| 21 | + * feat(parser): span/sizeのインライン要素に閉じタグ診断を追加 |
| 22 | + * feat(parser): list/table/anchor/footnote/bibliography/commentの診断を追加 |
| 23 | + * test(parser): anchor/footnote/bibliography/commentの診断テストを追加 |
| 24 | + * test(parser): tabview/tab/table/list/embed診断のテストを追加 |
| 25 | + tabviewルールのEOFハンドリングバグも修正 |
| 26 | + * test(parser): fail+diagnostic パスのテストを追加 |
| 27 | + orphan-li、リスト内li閉じ忘れ、左寄せalignのunclosedテストを追加 |
| 28 | + * test(parser): fixtureテストにdiagnostics検証を追加 |
| 29 | + expected-diagnostics.jsonがあるfail fixtureのdiagnosticsを検証する仕組みを追加 |
| 30 | + * feat(parser): divのoutside-inマッチングをbudgetシステムで実装 |
| 31 | + Wikidotのdivブロックは外側から内側へペアリングされる。 |
| 32 | + opens > closesの場合、最も内側の余剰openはテキスト化される。 |
| 33 | + - ParseContextにdivClosesBudgetフィールドを追加 |
| 34 | + - budget=0でdivルールがfail→テキストにフォールバック |
| 35 | + - countDivCloses()で残りclose数を計算 |
| 36 | + - consumeFailedDivのスキャンを改善: valid divブロック開始時に停止 |
| 37 | + - 吸収範囲内の追加[[div]]パターンにinline-block-element diagnostic発行 |
| 38 | + * feat(parser): div隣接paragraphの<p>抑制をpost-processingで実装 |
| 39 | + Wikidotではdivブロックに直接隣接するparagraphの<p>ラッピングが |
| 40 | + 抑制される。間に他のブロック要素がある場合は<p>を維持する。 |
| 41 | + - suppressDivAdjacentParagraphs()をpostprocessモジュールに追加 |
| 42 | + - トップレベルでのみ適用(div内部のparagraphは維持) |
| 43 | + - div後に続くunwrapped contentにはline-breakを先頭に付与 |
| 44 | + * test(parser): div/fail fixtureとdiagnosticsテストを更新 |
| 45 | + - expected.json: budget systemと<p>抑制を反映したAST |
| 46 | + - expected-diagnostics.json: case 1/2両方のinline-block-element |
| 47 | + - diagnostics.test.ts: budget systemの動作に合わせてテストを修正 |
| 48 | + - 余剰openはunclosed-blockではなくテキスト化される |
| 49 | + * fix(parser): blockCommentルールのunclosed-comment diagnostic重複を修正 |
| 50 | + blockCommentがsuccess:falseを返すとparagraph fallback経由で |
| 51 | + inlineCommentが同じdiagnosticを発行していた。 |
| 52 | + block側のdiagnostic pushを除去し、inline側に一元化。 |
| 53 | + |
| 54 | +### 🧱 Updated Dependencies |
| 55 | + |
| 56 | +- Updated @wdprlib/ast to 1.2.0 |
| 57 | + |
| 58 | +### ❤️ Thank You |
| 59 | + |
| 60 | +- r74tech @r74tech |
| 61 | + |
1 | 62 | ## 1.1.4 (2026-02-08) |
2 | 63 |
|
3 | 64 | ### 🩹 Fixes |
|
0 commit comments