コンテンツにスキップ Gin v1.12.0
機能
- feat(binding): uri/queryバインディングでencoding.UnmarshalTextのサポートを追加 (#4203)
- feat(context): エラー取得のためのGetErrorとGetErrorSliceメソッドを追加 (#4502)
- feat(context): コンテンツネゴシエーションにProtocol Buffersサポートを追加 (#4423)
- feat(context): Deleteメソッドを実装 (#4296)
- feat(gin): エスケープパスを使用するオプションを追加 (#4420)
- feat(logger): レイテンシのカラー表示 (#4146)
- feat(render): BSONプロトコルを追加 (#4145)
バグ修正
- fix(binding): 空値エラー (#2169)
- fix(binding): フォームバインディングでの空スライス/配列の処理を改善 (#4380)
- fix(context): 複数のX-Forwarded-Forヘッダー値に対するClientIPの処理 (#4472)
- fix(debug): バージョン不一致 (#4403)
- fix(gin): リソースリークを防止するためRunFdでos.Fileをクローズ (#4422)
- fix(gin): engine.Handler()でリテラルコロンルートが動作しない問題 (#4415)
- fix(recover): recoverでhttp.ErrAbortHandlerを抑制 (#4336)
- fix(render): Data.RenderでContent-Lengthを書き込み (#4206)
- fix(response): レスポンスライフサイクルのためhijack動作を改善 (#4373)
- fix(tree): RedirectFixedPath使用時のfindCaseInsensitivePathRecでのpanic (#4535)
- fix: タイポの修正、ドキュメントの明確性改善、デッドコードの削除 (#4511)
機能強化
- chore(binding): BSON依存関係をmongo-driver v2にアップグレード (#4549)
- chore(context): Unixソケットからのxffヘッダーを常に信頼 (#3359)
- chore(deps): golang.org/x/cryptoをv0.45.0にアップグレード (#4449)
- chore(deps): quic-goをv0.57.1にアップグレード (#4532)
- chore(logger): クエリ文字列出力のスキップを許可 (#4547)
- chore(response):
http.Flusher未実装時のFlush()のpanicを防止 (#4479)
リファクタリング
- refactor(binding): よりクリーンなマップ処理のためmaps.Copyを使用 (#4352)
- refactor(context): 戻り値名を省略 (#4395)
- refactor(context): ハードコードされたlocalhostのIPを定数に置き換え (#4481)
- refactor(context): maps.Cloneを使用 (#4333)
- refactor(ginS): sync.OnceValueを使用してengine関数を簡素化 (#4314)
- refactor(recovery): スマートなエラー比較 (#4142)
- refactor(utils): ユーティリティ関数をutils.goに移動 (#4467)
- refactor: range over intを使用してforループをモダン化 (#4392)
- refactor: bodyAllowedForStatusでマジックナンバーを名前付き定数に置き換え (#4529)
- refactor: b.Loop()を使用してコードを簡素化しパフォーマンスを改善 (#4389、#4432)
ビルドプロセスの更新 / CI
- ci(bot): 依存関係の更新頻度を増やしグループ化 (#4367)
- ci(lint): テストアサーションとリンター設定をリファクタリング (#4436)
- ci(sec): HTTPミドルウェアの型安全性とサーバー構成を改善 (#4437)
- ci(sec): Trivyセキュリティスキャンを毎日UTC午前0時に実行するようスケジュール (#4439)
- ci: 脆弱性スキャンワークフローをTrivy統合に置き換え (#4421)
- ci: CIワークフローを更新しTrivy設定の引用を標準化 (#4531)
- ci: CIとドキュメント全体でGoバージョンサポートを1.25+に更新 (#4550)
ドキュメントの更新
- docs(README): Trivyセキュリティスキャンバッジを追加 (#4426)
- docs(context): ShouldBind*メソッドのサンプルコメントを追加 (#4428)
- docs(context): コメントを修正 (#4396)
- docs(context): コメント内の誤った関数名を修正 (#4382)
- docs(readme): 明確性と完全性のためドキュメントを刷新・拡充 (#4362)
- docs: ブログリンク付きでGin 1.11.0リリースを告知 (#4363)
- docs: Gin v1.12.0リリースのドキュメントを作成・確定 (#4551)
- docs: GitHubのコントリビューションとサポートテンプレートを刷新 (#4364)
- docs: コントリビューティングガイドラインを包括的な指示で刷新 (#4365)
- docs: Goバージョンの変更を反映するためドキュメントを更新 (#4552)
- docs: 壊れたドキュメントリンクの機能ドキュメント指示を更新 (#4508)
パフォーマンス
- perf(path): redirectTrailingSlashで正規表現をカスタム関数に置き換え (#4414)
- perf(recovery): stack関数での行読み取りを最適化 (#4466)
- perf(tree): strings.Countを使用してパス解析を最適化 (#4246)
- perf(tree): findCaseInsensitivePathでのアロケーションを削減 (#4417)
テスト
- test(benchmarks): 誤った関数名を修正 (#4375)
- test(bytesconv): 空/nilケースのテストを追加 (#4454)
- test(context): マジックナンバー100の代わりにhttp.StatusContinue定数を使用 (#4542)
- test(debug): debug.goのテストカバレッジを100%に改善 (#4404)
- test(gin): ginSパッケージの包括的なテストカバレッジを追加 (#4442)
- test(gin): 統合テストの競合状態を解決 (#4453)
- test(render): 包括的なエラーハンドリングテストを追加 (#4541)
- test(render): MsgPackレンダリングの包括的なテストを追加 (#4537)