mcpField
T
typo3-extension-upgrade

typo3-extension-upgrade

github.com/dirnbauer開発33100 回インストール13 週間前に更新
リポジトリ

typo3-extension-upgrade について

typo3-extension-upgradeは、TYPO3拡張コードを新しいLTSバージョンへ更新するスキルです。プロジェクト全体やTYPO3コアの更新は対象外で、移行ツール、静的解析、テスト、バージョン別ガイドを組み合わせて変更を確認します。

主な機能

  1. 01更新計画と互換性リスクの評価
  2. 02非推奨APIのスキャン
  3. 03RectorによるPHPの移行
  4. 04Fractorによる設定とテンプレートの移行
  5. 05PHPStanとPHPUnitによるコード検査
  6. 06バージョン別の移行資料の参照

活用シーン

  1. 01拡張機能を新しいTYPO3 LTSへ更新
  2. 02自動移行の変更を適用前に確認
  3. 03対応する依存バージョン間の互換性を検査
  4. 04更新範囲と自動化できない課題を評価

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/dirnbauer/webconsulting-skills --skill typo3-extension-upgrade

インストール後、Claude Code で/typo3-extension-upgradeを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

checkpoints.yaml
assets/
.php-cs-fixer.php
fractor.php
phpstan.neon
phpunit.xml
rector.php
references/
api-changes.md
api-traps.md
audit-mode.md
dual-compatibility.md
multi-version-worktrees.md
pre-upgrade.md
real-world-patterns.md
third-party-dependency-upgrades.md
toolchain-output.md
troubleshooting.md
upgrade-v11-to-v12.md
upgrade-v12-to-v13.md
upgrade-v13-to-v14.md
verification.md
scripts/
scan-deprecations.sh

詳細

TYPO3 Extension Upgrade Skill

TYPO3 拡張機能を新しい LTS バージョンにアップグレードするためのフレームワークです。 拡張機能のコードのみを対象とし、プロジェクトやコアのアップグレードは対象外です。

Upgrade Toolkit

ツール用途ファイル
Extension Scanner非推奨 API の診断TYPO3 Backend
RectorPHP の自動移行.php
FractorPHP 以外の移行FlexForms、TypoScript、YAML、Fluid
PHPStan静的解析.php

Core Workflow

  1. 計画フェーズを完了します(references/pre-upgrade.md を参照)
  2. フィーチャーブランチを作成します(Git がクリーンな状態であることを確認)
  3. 対象バージョンに合わせて composer.json の制約を更新します
  4. サードパーティ依存関係を監査し、メジャーバージョンの変更を確認します(references/third-party-dependency-upgrades.md を参照)
  5. rector process --dry-run を実行してから、結果を確認して適用します
  6. fractor process --dry-run を実行してから、結果を確認して適用します
  7. php-cs-fixer fix を実行します
  8. サポートする依存関係の各バージョンに対して phpstan analyse を実行し、エラーを修正します
  9. phpunit を実行してテストを修正します
  10. 対象の TYPO3 バージョンでテストします
  11. 成功基準を確認します(references/verification.md を参照)

When NOT to Apply Automatically

複数バージョンとの互換性、テストの不足、変更内容が不明確な場合や、複雑な API(DBAL、Extbase)が関わる場合は、Rector/Fractor を無条件に適用しないでください。代わりにルールを手動で適用し、変更のたびにテストしてください。

Third-Party Dependency Upgrades

composer.json で依存関係の制約を新しいメジャーバージョンまで広げる場合は、API の使用箇所を洗い出し、新しい API と照合し、モックを確認して、シグネチャの違いにはアダプターパターンを使用し、メジャーバージョンごとに PHPStan を実行します。詳細は references/third-party-dependency-upgrades.md を参照してください。

Quick Commands

rector process --dry-run && rector process        # PHP migrations
fractor process --dry-run && fractor process       # Non-PHP migrations
php-cs-fixer fix && phpstan analyse && phpunit     # Quality checks

Asset Templates

assets/ の設定テンプレート:rector.php、fractor.php、phpstan.neon、phpunit.xml、.php-cs-fixer.php

References

リファレンス使用する場面
references/pre-upgrade.md計画チェックリスト、バージョン監査、リスク評価
references/api-changes.mdTYPO3 のバージョンごとに非推奨/削除された API を確認するとき
references/api-traps.mdバージョン間で注意が必要な問題:TCA の制約、起動順序、DI の迂回
references/upgrade-v11-to-v12.mdTYPO3 v11 から v12 へのアップグレード
references/upgrade-v12-to-v13.mdTYPO3 v12 から v13 へのアップグレード
references/upgrade-v13-to-v14.mdTYPO3 v13 から v14 へのアップグレード
references/dual-compatibility.md複数バージョンとの互換性(v12 + v13)
references/real-world-patterns.md実際の移行例
references/toolchain-output.mdRector/Fractor のドライラン出力
references/troubleshooting.mdRector によるコードの破損、PHPStan のエラー、テストの失敗
references/third-party-dependency-upgrades.mdTYPO3 以外の依存関係(メジャーバージョンの更新、アダプターパターン)
references/verification.md成功基準と実環境でのテスト
references/multi-version-worktrees.mdLTS ごとのワークツリー構成、バックポートのワークフロー、バージョン横断の CI マトリックス
references/audit-mode.md評価/見積もり:自動化できない項目のみチケットに記載
scripts/scan-deprecations.sh <path>非推奨/削除された API と注意点を grep で決定的にスキャン

External Resources


Credits & Attribution

このスキルは、 Netresearch DTT GmbH による優れた取り組みを基にしています。

元のリポジトリ:https://github.com/netresearch/typo3-extension-upgrade-skill

Copyright (c) Netresearch DTT GmbH — 方法論とベストプラクティス(MIT / CC-BY-SA-4.0)

このスキルコレクションの形成に貢献した、TYPO3 コミュニティへの寛大なオープンソース貢献に対し、Netresearch DTT GmbH に心より感謝します。 このスキルコレクション向けに webconsulting.at が改編

コメント