Skip to content

chore(dependabot): symfony/* の major を ignore しグループ漏れを解消 - #7006

Merged
nanasess merged 3 commits into
EC-CUBE:4.4from
nanasess:chore/dependabot-symfony-major-ignore
Jul 30, 2026
Merged

chore(dependabot): symfony/* の major を ignore しグループ漏れを解消#7006
nanasess merged 3 commits into
EC-CUBE:4.4from
nanasess:chore/dependabot-symfony-major-ignore

Conversation

@nanasess

@nanasess nanasess commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

概要(Overview・Refs Issue)

#6981 でグループ化を導入した後、実際の更新幅が patch であるにもかかわらず symfony グループから漏れて個別 PR になるものがありました。その原因を解消します。

PR パッケージ 更新幅 依存の種類
#6998 symfony/clock 7.4.0 → 7.4.8 (patch) 間接
#6997 symfony/error-handler 7.4.8 → 7.4.14 (patch) 間接
#6996 symfony/security-http 7.4.13 → 7.4.14 (patch) 間接

方針(Policy)

原因

グループから漏れたものと入ったものを並べると法則が出ます。

パッケージ 依存の種類 PR の更新幅 その依存の実際の latest 判定
symfony/clock 間接 7.4.0→7.4.8 (patch) 8.1.0 major → 除外
symfony/error-handler 間接 7.4.8→7.4.14 (patch) 8.1.2 major → 除外
symfony/security-http 間接 7.4.13→7.4.14 (patch) 8.1.x major → 除外
symfony/flex 直接 (^2.7) 2.10.0→2.11.0 2.11.0 minor → #6988 に入る
symfony/cache-contracts 間接 3.7.0→3.7.1 3.7.1 patch → #6988 に入る
symfony/polyfill-php83 間接 1.33.0→1.41.0 1.41.0 minor → #6988 に入る

直接依存は composer.json の制約が効くため latest 判定も制約内に収まりますが、間接依存は制約がないため latest が真の最新(メジャー跨ぎ)として評価されます。 Symfony 8.x はリリース済み(8.1.2 / 2026-07-22)のため、実際の更新は親の制約内(7.4.x)に留まるのに update-type だけが major 扱いになり、update-types: [ "minor", "patch" ] のグループから外れていました。

対応

EC-CUBE 4.4 は Symfony 7.4 系に固定しており 8.x への更新は受け付けないため、symfony/* の major を ignore して判定を制約内に戻します。

    ignore:
      - dependency-name: "symfony/*"
        update-types: [ "version-update:semver-major" ]

これにより間接依存の update-type が 7.4.x 基準(= patch)で評価され、symfony グループに入ることを期待しています。

実装に関する補足(Appendix)

副作用: Symfony 製だが独自バージョニングのパッケージにも及びます

symfony/* は Symfony 本体(7.4 系)だけでなく、以下のような独自バージョニングのパッケージにもマッチします。これらの major も止まります。

パッケージ 現在の系列 影響
symfony/monolog-bundle 3.x(4.0.2 が最新) #6994 (3.11.1 → 4.0.2) が ignore 対象になります
symfony/flex 2.x 3.x が出たら止まる
symfony/polyfill-* 1.x 2.x が出たら止まる
symfony/*-contracts 3.x 4.x が出たら止まる

現実の影響は #6994 (symfony/monolog-bundle 4.0.2) のみです。この更新を入れる場合は、本 PR のマージ前に #6994 をマージするか、後から @dependabot unignore symfony/monolog-bundle を使ってください。

ignoreexclude 相当の指定はないため、本体だけを対象にするには 40 以上のパッケージを個別に列挙する必要があり、現実的でないと判断しました。

未検証の点

  • 「major を ignore すると、次に許容される非 major バージョンが提案され、その update-type でグループ判定される」という挙動はドキュメントに記載がなく未検証です。 効果の確認は次回の Dependabot 実行(月曜 07:00 JST)が必要です。期待どおりにならない場合は、symfony グループから update-types を外す案に切り替える必要があります。
  • 原因の因果(間接依存の latest 判定)自体も、15 件以上の実例がすべて法則に合致する状況証拠に基づくもので、dependabot-core の latest 判定コードまでは追えていません。

ignore は security update にも適用されます

Symfony 8 系のみで修正される脆弱性は拾えなくなります。7.4 は LTS でバックポートされる前提での判断です。

npm 側は対象外とします

npm でも同じ原因で 2 件漏れていますが、本 PR および今後の対応対象としません。

PR パッケージ 更新幅 実際の latest
#7005 ajv 6.14.0 → 6.15.0 (minor) 8.20.0
#7004 ua-parser-js 1.0.34 → 1.0.41 (patch) 2.0.10

判断材料として、composer 側と事情が異なる点を記録しておきます。

  • いずれも package.json に無い間接依存で、親パッケージが古い系列を固定しているため major に上げること自体が不可能です。composer 側の symfony/* のように「4.4 は Symfony 7.4 系に固定」という明確な方針に対応する形にはなりません。
  • npm-build グループから update-types を外せば間接依存は収容できますが、同じグループにいる直接依存のビルドツール(webpack / sass / gulp 等)の major まで同じ PR に束ねられてしまいます。
  • npm 側で ignore を使う場合は対象を個別に列挙する必要があり、間接依存は依存ツリーの変動で入れ替わるためメンテナンスが困難です。

テスト(Test)

  • YAML パース、ignore のキー名、update-types の値(version-update:semver-major 形式)をローカルで検証済み。グループ側の update-typesmajor/minor/patch 形式)と値の体系が異なる点も確認しています。
  • dependabot.yml は既定ブランチにマージされて初めて有効になるため、実効の確認はマージ後の初回実行が必要です。確認すべき点:
    • symfony/clock / symfony/error-handler / symfony/security-httpsymfony グループに入るか
    • Symfony 8.x への PR が出なくなっているか

相談(Discussion)

composer の open PR が 10 本ちょうどで open-pull-requests-limit に達しておりsymfony/http-kernel 7.4.13 → 7.4.15 など Symfony 本体 30 件以上の更新 PR が出ていません(composer update "symfony/*" --dry-run では 40+ パッケージが問題なく解決するため、依存解決の問題ではなく枠不足です)。本 PR で個別 PR が 3 件減るぶん枠は空きますが、上限自体の引き上げが必要かどうかは別途ご判断ください。

マイナーバージョン互換性保持のための制限事項チェックリスト

  • 既存機能の仕様変更はありません
  • フックポイントの呼び出しタイミングの変更はありません
  • フックポイントのパラメータの削除・データ型の変更はありません
  • twigファイルに渡しているパラメータの削除・データ型の変更はありません
  • Serviceクラスの公開関数の、引数の削除・データ型の変更はありません
  • 入出力ファイル(CSVなど)のフォーマット変更はありません

レビュワー確認項目

  • 動作確認
  • コードレビュー
  • E2E/Unit テスト確認(テストの追加・変更が必要かどうか)
  • 互換性が保持されているか
  • セキュリティ上の問題がないか
    • 権限を超えた操作が可能にならないか
    • 不要なファイルアップロードがないか
    • 外部へ公開されるファイルや機能の追加ではないか
    • テンプレートでのエスケープ漏れがないか

Summary by CodeRabbit

  • Chores
    • Symfonyのメジャーバージョンアップを自動更新の対象外にしました。
    • 更新設定のコメントを簡潔に整理しました。

PR EC-CUBE#6981 のグループ化後、実際の更新幅が patch であるにもかかわらず
symfony グループから漏れて個別 PR になるものがあった。

  EC-CUBE#6998 symfony/clock          7.4.0  -> 7.4.8   (patch)
  EC-CUBE#6997 symfony/error-handler  7.4.8  -> 7.4.14  (patch)
  EC-CUBE#6996 symfony/security-http  7.4.13 -> 7.4.14  (patch)

いずれも composer.json に制約を持たない間接依存で、Symfony 8.x が
リリース済み (8.1.2 / 2026-07-22) のため update-type が制約外の 8.x を
基準に major と判定され、update-types: [minor, patch] のグループから
外れていた。直接依存は composer.json の制約が効くため latest 判定も
制約内に収まり、symfony/flex (2.10.0 -> 2.11.0) は正しくグループに入る。

EC-CUBE 4.4 は Symfony 7.4 系に固定しており 8.x への更新は受け付けない
ため、symfony/* の major を ignore することで判定を制約内に戻す。

副作用として、独自バージョニングの symfony/flex (2.x) /
symfony/monolog-bundle (3.x) / symfony/polyfill-* (1.x) /
symfony/*-contracts (3.x) の major も止まる。個別に上げたいときは
PR 上で `@dependabot unignore <name>` を使う。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 0fec1de7-3eac-4356-b599-532f1c724822

📥 Commits

Reviewing files that changed from the base of the PR and between a6012f7 and 17da088.

📒 Files selected for processing (1)
  • .github/dependabot.yml
🚧 Files skipped from review as they are similar to previous changes (1)
  • .github/dependabot.yml

📝 Walkthrough

Walkthrough

Dependabot の Composer 設定で、symfony/* の semver major 更新を無視するルールを追加し、説明コメントを簡略化します。

Changes

Symfony 更新ポリシー

Layer / File(s) Summary
Dependabot ignore ルールの追加
.github/dependabot.yml
symfony/* に対する version-update:semver-major 更新を無視する設定を追加し、説明コメントを短縮。

Estimated code review effort: 1 (Trivial) | ~2 minutes

Possibly related PRs

  • EC-CUBE/ec-cube#6981: .github/dependabot.yml の Symfony 依存更新タイプと ignore 設定を調整。

Poem

ぴょんと跳ねたら、更新は止まり
Symfony major は巣でおやすみ
Dependabot が道を整え
うさぎはにんじん頬張るよ 🐇

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed Dependabot の symfony/* major 更新を ignore してグループ漏れを解消する内容を正しく要約しています。
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@nanasess nanasess added this to the 4.4.0 milestone Jul 30, 2026
@codecov

codecov Bot commented Jul 30, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 77.46%. Comparing base (c16ce2a) to head (ec3d15f).
⚠️ Report is 2 commits behind head on 4.4.

Additional details and impacted files
@@           Coverage Diff           @@
##              4.4    #7006   +/-   ##
=======================================
  Coverage   77.45%   77.46%           
=======================================
  Files         561      561           
  Lines       27836    27836           
=======================================
+ Hits        21561    21562    +1     
+ Misses       6275     6274    -1     
Flag Coverage Δ
Unit 77.46% <ø> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@nanasess
nanasess enabled auto-merge July 30, 2026 02:14

@ttokoro20240902 ttokoro20240902 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

PR #7006 レビュー — chore(dependabot): symfony/* の major を ignore しグループ漏れを解消

  • 対象: EC-CUBE/ec-cube#7006(author: nanasess、base 4.4、head a6012f7fb7
  • 差分: .github/dependabot.yml のみ / +13 -0
  • レビュー時点の状況: dotani1111 が APPROVED(2026-07-30 01:38)。CodeRabbit のレビューは なし(インライン指摘も 0 件)。reviewDecision は承認 2 件必須のため REVIEW_REQUIRED
  • auto-merge が有効で CI は全 pass のため、2 件目の承認が入った時点で即マージされます。指摘②③は dependabot.yml のコメント文言にも関わり、マージ後は別 PR が必要になるので、文言を直すかどうかのご判断をいただいてから承認します(承認を保留する目的の COMMENT で、修正リクエストではありません)
  • 結論: 変更内容そのものは妥当。マージ可。 ただし PR 本文の記述に事実誤りが 2 件(うち 1 件は原因説明の中核)あり、修正を提案する(コード変更は不要)

裏取りできた点(変更の妥当性)

検証項目 結果
YAML の妥当性 yaml.safe_load でパース成功
ignore の適用範囲 composer エントリのみ。github-actions / npm(/) / npm(/e2e) には付かないことをパース結果で確認
update-types の値の体系 version-update:semver-major(ignore 用の形式)で正しい。グループ側の major/minor/patch と混同していない
dependency-name のワイルドカード symfony/* は Dependabot の dependency-name で許容される形式
本文が挙げる事例の実在 #6996 (security-http 7.4.13→7.4.14) / #6997 (error-handler 7.4.8→7.4.14) / #6998 (clock 7.4.0→7.4.8) / #6994 (monolog-bundle 3.11.1→4.0.2) いずれも OPEN で記載どおり
副作用の対象 lock で確認: flex v2.10.0 / monolog-bundle v3.11.1 / polyfill-* v1.33〜1.38 / *-contracts v3.7.x。本文の記載と一致
直接依存への効果 composer.jsonsymfony/* は 45 件、うち 41 件が ^7.4 制約(残りは flex: ^2.7 / maker-bundle: ^1.0 / monolog-bundle: ^3.1 / phpunit-bridge: ^8.1)。ignore により 8.x 系への更新提案が止まる = 「4.4 は Symfony 7.4 系に固定」の方針と一致
Symfony 8 が入り得ないことの裏取り composer.jsonphp: ^8.2 かつ config.platform.php: 8.2.0。一方 symfony/http-kernel v8.1.2 は php: >=8.4.1。つまり本体 8.x はそもそも解決不能で、ignore は「入り得ないものを提案対象から外す」変更(後述)

指摘事項

# 重大度 ステータス 指摘 該当 内容(実証) 提案
1 要修正(本文のみ) 「効果の確認は次回の Dependabot 実行(月曜 07:00 JST)が必要」は誤り PR 本文「未検証の点」 config 変更のマージは即時再実行を起こす。 前回の #69812026-07-29(水) 07:24:39Z マージで、直後の dependabot PR は #6986 が +1分03秒(07:25:42Z)、最後の #7005+9分01秒(07:33:40Z)。この間に 21 本が連続作成されている。schedule は Monday 07:00 JST(= 日曜 22:00 UTC)なので、明らかに定時実行ではない 「マージ直後に再実行されるため、数分後に結果を確認できる」に改める。確認は月曜まで待つ必要がない
2 原因を特定(本文の因果を修正) 「直接依存は制約が効くため latest 判定も制約内に収まる」が成立していない。本体 40+ 件が出ていない原因はこれ PR 本文「原因」表と「相談」+**dependabot.yml の追加コメント(「composer.json に制約を持たない間接依存…」の行)** 下記「② の調査結果」に詳述。 直接依存も update-type が major と判定されており、symfony グループ(minor/patch)に入らず個別 PR 扱いになるため、上限 10 に入りきらず全滅している。決定的な証拠は #6986(php-dev-tools グループ)に symfony/polyfill-iconv が入る一方 symfony/browser-kit(直接 require-dev・^7.4・lock v7.4.4)が入っていないこと。なお提案されるバージョン自体は 7.4.x で、8.x は config.platform.php: 8.2.0 の下では解決不能(本体 8.1.2 は php >=8.4.1)。判定だけが制約外の 8.x を基準にしている 原因表の「直接/間接」の切り分けを「その依存の真の latest が別メジャー線かどうか」に修正する。上限引き上げは不要(本 PR の ignore で 41 件がグループ 1 本に収まるため)。「相談」は本 PR 自体で解消する見込み
3 記述の完全性 副作用テーブルに symfony/maker-bundlesymfony/phpunit-bridge が漏れている PR 本文「副作用」表+**dependabot.yml の追加コメント(「独自バージョニングの…の major も止める」の行)** origin/4.4:composer.json で 7.4 系でない symfony/* 制約は flex: ^2.7 / maker-bundle: ^1.0 / monolog-bundle: ^3.1 / phpunit-bridge: ^8.1 の 4 件。lock は maker-bundle: v1.67.0 / phpunit-bridge: v8.1.1phpunit-bridge#6971(07-29 マージ)で 8.x に上がったばかりで、既存の dependabot.yml コメントは「本体 7.4 系に対し 8.x」であることを意図した挙動と明記している。本 ignore は今後の 9.x を止める 表に 2 行追加。特に phpunit-bridge は「本体と系列を揃えない」方針が既にコメントで宣言されているため、major を止めてよいかを明示的に判断したい
4 確認事項 既存 #6994 が ignore 適用後にどうなるかが未記載 PR 本文「副作用」 「マージ前に #6994 をマージするか、後から @dependabot unignore を使う」と書かれているが、ignore 対象になった既存 PR が Dependabot に自動 close されるかは本文に記載がない。自動 close されるなら「後から unignore」は PR の再作成を依頼する手順になる 自動 close される想定なのかを一言添える(挙動が不明なら「close される可能性がある」と留保付きで)
5 誤検知(棄却) #6981 で解除した ignore を再導入しているのでは」 .github/dependabot.yml #6981 が削除したのは twig/twig robthree/twofactorauth doctrine/lexer psr/log sort-css-media-queriesversions: による上限指定(インストール済みが上限を超えて実効性を失っていたもの)。本 PR が追加するのは update-types による major 抑止で、種類が異なり矛盾しない 対応不要

② の調査結果 — 本体 40+ 件が出ていない原因

観測事実(すべて origin/4.4gh で確認)

# 事実 出典
1 Symfony 本体(7.4 系)は 51 パッケージが v7.4.0〜v7.4.14 に散在。48 件が最新(7.4.14)より古い origin/4.4:composer.lock
2 symfony グループ PR #6988 の 8 件は flex / contracts / polyfill のみ。本体は 1 件も無い #6988 本文
3 php-dev-tools グループ PR #6986symfony/polyfill-iconv(1.33.0→1.37.0) は入るが、symfony/browser-kit(直接 require-dev・^7.4・lock v7.4.4)は入っていない。browser-kit は v7.4.14 が 2026-06-08 にリリース済み(真の latest は v8.1.1) で、更新余地があるのに提案されていない #6986 本文 / composer.lock / packagist
4 本体 8.x は本プロジェクトでは解決不能。 composer.jsonphp: ^8.2 / config.platform.php: 8.2.0 に対し symfony/http-kernel v8.1.2 は php >=8.4.1。よって Dependabot が本体の制約を 8.x へ引き上げる提案を作ることはあり得ない origin/4.4:composer.json / packagist
5 symfony/phpunit-bridge だけは #6971^7.4^8.1(7.4.7 → 8.1.1)に上がってマージ済み(07-29 07:17)。これは phpunit-bridge 8.x が php >=8.1.0 で解決可能なためで、本体とは事情が異なる(本体の major 提案の証拠にはならない) #6971 / packagist
6 本体の patch 更新は Symfony 8.0.0 リリース(2025-11-27)後も個別 PR として正常に出ていた(例: #6790 http-kernel 7.4.7→7.4.12、05-27、差分は composer.lock のみ)。提案対象は「解決可能な最新」= 7.4.x であり、8.x が出た後もそこは変わっていない PR 履歴 / packagist
7 composer エコシステムの open PR は 10/10。内訳はグループ 4 本(#6986 / #6988 / #6990 / #6993)+個別 6 本(#6967 / #6994 / #6995 / #6996 / #6997 / #6998 gh pr list
8 07-29 の実行時点の 7.4 系最新は 7.4.14(2026-06-27)。本文が挙げる 7.4.15 は 2026-07-29 11:40Z リリースで実行より後cooldown: default-days: 5 があるため 7.4.15 は 08-03 頃まで提案対象にならない packagist / dependabot.yml

判定

事実 3 が決定的である。browser-kitrequire-dev なので specificity で php-dev-tools(スコア 500)に入るはずで、v7.4.4 → 7.4.14 は cooldown(5 日)も無関係に古い。それでもグループに入っていないのは、update-type が minor/patch と判定されていないことを意味する。同じグループに polyfill-iconv(真の latest が 1.x)が入っている対比が、パターンや dependency-type の問題でないことを示す。

事実 4・6 と合わせると、実際に起きているのはこうである。

  • 提案されるバージョンと update-type の判定基準がずれている。 提案先は「解決可能な最新」= 7.4.x(事実 4・6)だが、update-type の判定だけが**制約外の真の latest(8.1.x)**を基準にしており major になる。
  • major/minor/patch の分かれ目は「その依存の真の latest が別メジャー線かどうか」で、直接/間接ではない。 flex(2.x) / contracts(3.x) / polyfill(1.x) は真の latest が同じメジャー線上にあるため minor/patch となり、グループに入る。
  • 本体(^7.4 の直接依存 41 件 + 間接依存): 真の latest が 8.x なので判定は majorsymfony グループ(update-types: [minor, patch])に入らず個別 PRが必要になり、上限 10 に入りきらず大半が出ていない。枠が空いていた 3 本だけが顔を出したのが #6996 / #6997 / #6998(いずれも提案先は 7.4.x で、判定だけ major)。
  • 直接/間接で挙動が分かれていないことは事実 3(browser-kit が直接 require-dev でありながら php-dev-tools グループに入っていない)が示す。この点が本文の原因説明と食い違う。
  • なお事実 5 の phpunit-bridge は 8.x が php >=8.1.0 で解決可能なため実際に 8.x へ上がった唯一の例で、本体と同じ扱いにはできない。

PR 本文への影響

  1. 原因表の「直接依存は composer.json の制約が効くため latest 判定も制約内に収まりますが、間接依存は制約がないため latest が真の最新(メジャー跨ぎ)として評価されます」は成立していない。 直接依存も major として評価されている(browser-kit が直接 require-dev なのに php-dev-tools グループから漏れている)。切り分けは「直接/間接」ではなく「その依存の真の latest が別メジャー線かどうか」。
  2. 「相談」の上限引き上げは不要と考えられる。 本 PR で symfony/* の major を ignore すれば、本体の判定基準が 7.4.x に戻って patch/minor になり、個別 PR 多数ではなく symfony グループ PR 1 本に収まる。枠を消費しないので上限は現状の 10 で足りる。まず本 PR の効果を見てから判断するのが安全。
  3. 逆に言うと、本 PR の効果は本文が書いているより大きい(個別 PR 3 件の解消ではなく、本体 40+ 件の更新が動き出す)。マージ後に symfony グループ PR が一気に 40 件規模になることを想定しておくとよい。ただし cooldown: default-days: 5 があるため、7.4.15(07-29 リリース)は 08-03 頃までは含まれず、まずは 7.4.14 までの更新でまとまる見込み。

マージ後に確認すべきこと(本文の「テスト」節に対する補足)

指摘1のとおり、マージ直後(数分以内)に確認できる。

  1. symfony/clock / symfony/error-handler / symfony/security-http の個別 PR(#6996 / #6997 / #6998)が閉じ、symfony グループ PR に合流したか
  2. #6994(monolog-bundle 4.0.2)が閉じたか
  3. Symfony 8.x への PR が出ていないか
  4. 空いた枠に何が入ってきたか(composer は 10/10 で張り付いていたため、解放分だけ抑制されていた更新が出る。総数は減らない想定)

期待どおりにならない場合の代替案(symfony グループから update-types を外す)は本文に記載済みで、判断材料として十分。

補足

  • 本 PR は dependabot.yml のみの変更で、PHP・テンプレート・設定への波及なし。互換性・セキュリティ観点のチェックリストはいずれも該当しない。
  • ignore が security update にも及ぶ点は本文で明示済み。7.4 が LTS でバックポート前提という判断も妥当。
  • 「update-type が制約外の latest を基準に判定される」という原因分析は dependabot-core の実装まで追えていない状況証拠だが、実例がすべて法則に合致しており、対策の方向(major を ignore して判定を制約内に戻す)は原因が違っても副作用が小さい。方針として問題ない。
  • ignore で止まる本体 8.x は config.platform.php: 8.2.0 の下でそもそも解決できないため、本体に関しては「取りこぼす更新」が実質存在しない。副作用の実害は独自バージョニング組(monolog-bundle / flex / polyfill / contracts / maker-bundle / phpunit-bridge)に限られる。

グループ漏れの経緯説明を削り、意図のみを残す。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@nanasess

Copy link
Copy Markdown
Contributor Author

@ttokoro20240902 詳細なパッケージ名まで指定すると頻繁に指摘されそうなので簡略化しました。

@nanasess
nanasess requested a review from ttokoro20240902 July 30, 2026 04:54
@nanasess
nanasess merged commit e6876f4 into EC-CUBE:4.4 Jul 30, 2026
130 checks passed
@nanasess
nanasess deleted the chore/dependabot-symfony-major-ignore branch July 30, 2026 06:57
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.

3 participants