Skip to content

chore(release): bump version to 0.1.1 - #42

Merged
toshi0806 merged 1 commit into
mainfrom
release-0.1.1
Aug 25, 2026
Merged

chore(release): bump version to 0.1.1#42
toshi0806 merged 1 commit into
mainfrom
release-0.1.1

Conversation

@toshi0806

Copy link
Copy Markdown
Member

背景

tenbin_ex / tenbin_cache は本ライブラリを不変タグ 0.1.0 で pin している。そのため #39 で入った protobuf の security 更新は どちらの consumer にも届いていない — 両者が解決するのは 0.1.0 タグ時点の mix.exs、すなわち {:protobuf, "~> 0.15"} である。

タグを切らない限り伝播しないので、リリース用の version bump を行う。

変更

  • @version0.1.00.1.1 に(API 変更なしのため patch)
  • {:protobuf, "~> 0.16"}{:protobuf, "~> 0.17"}
  • CHANGELOG に [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-formatted OK
  • mix 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.00.1.1 に上げる(別 PR)。

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.

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

バージョンアップおよび protobuf の依存範囲引き上げの意図は明確で、PR 本文でも影響範囲が丁寧に説明されています。1点、CHANGELOG の記載と実際の diff に不整合があるため確認をお願いします。

Comment thread CHANGELOG.md
- 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`.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ [MEDIUM] CHANGELOG に「Move the ex_doc dev dependency to ~> 0.40」と記載されていますが、mix.exs の diff では ex_doc は既に ~> 0.40 であり、今回の変更に含まれていません。この記述は誤り(過去の変更の混入、あるいは実際には変更していない)と思われるため、CHANGELOG から削除するか、正しい内容に修正してください。

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

記載どおりで正しいため、据え置きます。

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 をタグ基準で書くのが唯一整合する書き方になります。

@toshi0806

Copy link
Copy Markdown
Member Author

指摘対応の結果

AI レビューの指摘 1 件(MEDIUM) に対応済み。追加の push は無し。

指摘 判断
CHANGELOG の「Move the ex_doc dev dependency to ~> 0.40」が mix.exs の diff に無い 据え置きスレッド返信

CHANGELOG の [0.1.1] が記述するのは PR の diff ではなく タグ 0.1.0 からの差分git diff 0.1.0..HEAD -- mix.exs に ex_doc の ~> 0.31~> 0.40 が含まれており(#40 で main に入ったが未リリース)、0.1.1 が初出になる。consumer は git タグで pin するため main の中間状態を参照することはなく、タグ基準で書くのが唯一整合する。

CI

全チェック green。

チェック 結果
ci / All checks ✅ success
ci / Code Quality ✅ success
ci / Test on OTP 27.3.4.16 / Elixir 1.17.3 ✅ success
ci / Test on OTP 29.0.5 / Elixir 1.20.3 ✅ success
review / review ✅ success
ci / Dialyzer Analysis ⏭ skipped(push 限定のため PR では設計どおり)

gate(All checks)は skip を success として扱わない設計だが、dialyzer は needs に含まれないため判定には影響しない。

@toshi0806
toshi0806 merged commit fdd898c into main Aug 25, 2026
6 checks passed
@toshi0806
toshi0806 deleted the release-0.1.1 branch August 25, 2026 16:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant