chore(release): bump version to 0.1.1 - #42
Conversation
The consumers pin this library by immutable git tag, so the protobuf security fix that landed in #39 has not reached tenbin_ex or tenbin_cache -- both still resolve elixir_dnstap at the 0.1.0 tag, whose mix.exs requires protobuf `~> 0.15`. Also raise that requirement one step further than #39 did. The advisory GHSA-rv48-qqj5-crxg covers `>= 0.8.0, < 0.16.1`, so `~> 0.16` still admits an affected 0.16.0; `~> 0.17` does not, and matches the floor tenbin_cache adopted directly in its own mix.exs. No API change -- 120 tests pass unchanged and the lock stays on protobuf 0.17.0.
| - Require protobuf `~> 0.17`. GHSA-rv48-qqj5-crxg covers `>= 0.8.0, < 0.16.1`, | ||
| so neither the old `~> 0.15` floor nor the `~> 0.16` that replaced it kept a | ||
| resolution out of the affected range. | ||
| - Move the `ex_doc` dev dependency to `~> 0.40`. |
There was a problem hiding this comment.
ex_doc dev dependency to ~> 0.40」と記載されていますが、mix.exs の diff では ex_doc は既に ~> 0.40 であり、今回の変更に含まれていません。この記述は誤り(過去の変更の混入、あるいは実際には変更していない)と思われるため、CHANGELOG から削除するか、正しい内容に修正してください。
There was a problem hiding this comment.
記載どおりで正しいため、据え置きます。
CHANGELOG の [0.1.1] セクションが記述する対象は この PR の diff ではなく、タグ 0.1.0 からリリース 0.1.1 までの差分です(Keep a Changelog の定義どおり)。ex_doc の変更は #40 で main に入っていますが、まだどのタグにも含まれていないため、0.1.1 が初出になります。
$ git diff 0.1.0..HEAD -- mix.exs
- {:protobuf, "~> 0.15"},
+ {:protobuf, "~> 0.17"},
- {:ex_doc, "~> 0.31", only: :dev, runtime: false},
+ {:ex_doc, "~> 0.40", only: :dev, runtime: false},
同じ理由で protobuf の行も「~> 0.15 から」と書いています。この PR 単体の diff は ~> 0.16 → ~> 0.17 の 1 行だけですが、0.1.0 を使っている consumer から見れば ~> 0.15 → ~> 0.17 です。
なお consumer は本ライブラリを git タグで pin しており、mix.exs の中間状態(main の未リリースコミット)を参照することはありません。したがって CHANGELOG をタグ基準で書くのが唯一整合する書き方になります。
指摘対応の結果AI レビューの指摘 1 件(MEDIUM) に対応済み。追加の push は無し。
CHANGELOG の CI全チェック green。
|
背景
tenbin_ex/tenbin_cacheは本ライブラリを不変タグ0.1.0で pin している。そのため #39 で入った protobuf の security 更新は どちらの consumer にも届いていない — 両者が解決するのは 0.1.0 タグ時点のmix.exs、すなわち{:protobuf, "~> 0.15"}である。タグを切らない限り伝播しないので、リリース用の version bump を行う。
変更
@versionを0.1.0→0.1.1に(API 変更なしのため patch){:protobuf, "~> 0.16"}→{:protobuf, "~> 0.17"}[0.1.1]を追加protobuf の床をもう一段上げた理由
GHSA-rv48-qqj5-crxg の影響範囲は
>= 0.8.0, < 0.16.1。#39 が入れた~> 0.16は>= 0.16.0, < 1.0.0を意味するので、0.16.0 という影響下のバージョンをまだ許してしまう。~> 0.17はこれを排除でき、tenbin_cacheが自身のmix.exsに直接入れた床(#130)とも揃う。mix.lockは既に protobuf 0.17.0 なので lock に変更は無い。確認
mix format --check-formattedOKmix test→ 120 passed (3 doctests, 117 tests)、変更なしmix credo --strict→ 197 mods/funs, no issues後続作業
merge 後にタグ
0.1.1を発行し、tenbin_ex/tenbin_cacheの pin を0.1.0→0.1.1に上げる(別 PR)。