The Release Process

This document explains the process followed by the Symfony project to develop, release and maintain its different versions.

このドキュメントでは、Symfony プロジェクトがさまざまなバージョンを開発、リリース、および維持するためのプロセスについて説明します。

Symfony releases follow the semantic versioning strategy and they are published through a time-based model:

Symfony のリリースはセマンティック バージョニング戦略に従い、時間ベースのモデルを通じて公開されます。
  • A new Symfony patch version (e.g. 4.4.43, 5.4.10, 6.1.2) comes out roughly every month. It only contains bug fixes, so you can safely upgrade your applications;
    Symfony の新しいパッチ バージョン (4.4.43、5.4.10、6.1.2 など) は、ほぼ毎月公開されます。バグ修正のみが含まれているため、アプリケーションを安全にアップグレードできます。
  • A new Symfony minor version (e.g. 4.4, 5.4, 6.1) comes out every six months: one in May and one in November. It contains bug fixes and new features, can contain new deprecations but it doesn't include any breaking change, so you can safely upgrade your applications;
    Symfony の新しいマイナー バージョン (4.4、5.4、6.1 など) は 6 か月ごとにリリースされます。1 つは 5 月、もう 1 つは 11 月です。バグ修正と新機能が含まれており、新しい廃止予定が含まれている可能性がありますが、重大な変更は含まれていないため、アプリケーションを安全にアップグレードできます。
  • A new Symfony major version (e.g. 5.0, 6.0, 7.0) comes out every two years in November of odd years (e.g. 2019, 2021, 2023). It can contain breaking changes, so you may need to do some changes in your applications before upgrading.
    Symfony の新しいメジャー バージョン (例: 5.0、6.0、7.0) は、2 年ごとに奇数年 (例: 2019、2021、2023) の 11 月にリリースされます。重大な変更が含まれている可能性があるため、アップグレードする前にアプリケーションにいくつかの変更を加える必要がある場合があります。

Tip

ヒント

Subscribe to Symfony Release notifications to receive an email when a new Symfony version is published or when a Symfony version reaches its end of life.

Symfony リリース通知を購読して、新しい Symfony バージョンが公開されたとき、または Symfony バージョンが寿命に達したときにメールを受信します。

Development

Note

ノート

The Symfony project is an open-source community-driven development framework. There is no roadmap written or defined in advance. Every feature request may or may not be developed in future versions based on the community. Symfony Core Team members can help move things forward if there's enough interest.

Symfony プロジェクトは、オープンソースのコミュニティ主導の開発フレームワークです。事前に作成または定義されたロードマップはありません。すべての機能要求は、コミュニティに基づいて将来のバージョンで開発される場合とされない場合があります。Symfony コア チームのメンバーは、十分な関心があれば、物事を前進させるのに役立ちます。

The full development period for any major or minor version lasts six months and is divided into two phases:

メジャー バージョンまたはマイナー バージョンの完全な開発期間は 6 か月続き、次の 2 つのフェーズに分かれています。
  • Development: Four months to add new features and to enhance existing ones;
    開発: 新機能の追加と既存機能の強化に 4 か月。
  • Stabilization: Two months to fix bugs, prepare the release, and wait for the whole Symfony ecosystem (third-party libraries, bundles, and projects using Symfony) to catch up.
    安定化: バグを修正し、リリースを準備し、Symfony エコシステム全体 (サードパーティのライブラリ、バンドル、および Symfony を使用するプロジェクト) が追いつくまで 2 か月。

During the development phase, any new feature can be reverted if it won't be finished in time or if it won't be stable enough to be included in the current final release.

開発段階では、新機能が間に合わない場合、または現在の最終リリースに含まれるほど安定していない場合は、新機能を元に戻すことができます。

Tip

ヒント

Check out the Symfony Release to learn more about any specific version.

特定のバージョンの詳細については、Symfony リリースを確認してください。

Maintenance

Starting from the Symfony 3.x branch, the number of minor versions is limited to five per branch (X.0, X.1, X.2, X.3 and X.4). The last minor version of a branch (e.g. 4.4, 5.4) is considered a long-term support version and the other ones are considered standard versions:

Symfony 3.x ブランチから、マイナー バージョンの数はブランチごとに 5 つに制限されています (X.0、X.1、X.2、X.3、および X.4)。ブランチの最後のマイナー バージョン (4.4、5.4 など) は長期サポート バージョンと見なされ、その他は標準バージョンと見なされます。
Version Type Bugs are fixed for... Security issues are fixed for...
Standard 8 months 8 months
Long-Term Support (LTS) 3 years 4 years

Note

ノート

After the active maintenance of a Symfony version has ended, you can get professional Symfony support from SensioLabs, the company which sponsors the Symfony project.

Symfony バージョンのアクティブなメンテナンスが終了すると、Symfony プロジェクトのスポンサーである SensioLabs から専門的な Symfony サポートを受けることができます。

Backward Compatibility

Our Backward Compatibility Promise is very strict and allows developers to upgrade with confidence from one minor version of Symfony to the next one.

私たちの下位互換性に関する約束は非常に厳格であり、開発者は Symfony のあるマイナー バージョンから次のバージョンに自信を持ってアップグレードすることができます。

When a feature implementation cannot be replaced with a better one without breaking backward compatibility, Symfony deprecates the old implementation and adds a new preferred one alongside. Read the conventions document to learn more about how deprecations are handled in Symfony.

下位互換性を壊さずに機能の実装をより良いものに置き換えることができない場合、Symfony は古い実装を非推奨にし、新しい優先実装を追加します。 Symfony で非推奨がどのように処理されるかについて詳しくは、慣習に関するドキュメントをお読みください。

This deprecation policy also requires a custom development process for major versions (5.0, 6.0, etc.) In those cases, Symfony develops at the same time two versions: the new major one (e.g. 5.0) and the latest version of the previous branch (e.g. 4.4).

この非推奨ポリシーは、メジャーバージョン (5.0、6.0 など) のカスタム開発プロセスも必要とします。その場合、Symfony は同時に 2 つのバージョンを開発します: 新しいメジャーバージョン (例: 5.0) と前のブランチの最新バージョン (例: 4.4)。 .

Both versions have the same new features, but they differ in the deprecated features. The oldest version (5.4 in this example) contains all the deprecated features whereas the new version (6.0 in this example) removes all of them.

どちらのバージョンにも同じ新機能がありますが、廃止された機能が異なります。最も古いバージョン (この例では 5.4) には非推奨の機能がすべて含まれていますが、新しいバージョン (この例では 6.0) ではそれらがすべて削除されています。

This allows you to upgrade your projects to the latest minor version (e.g. 5.4), see all the deprecation messages and fix them. Once you have fixed all those deprecations, you can upgrade to the new major version (e.g. 6.0) without effort, because it contains the same features (the only difference are the deprecated features, which your project no longer uses).

これにより、プロジェクトを最新のマイナー バージョン (5.4 など) にアップグレードし、すべての非推奨メッセージを確認して修正することができます。これらの非推奨をすべて修正したら、同じ機能が含まれているため、新しいメジャー バージョン (6.0 など) に簡単にアップグレードできます (唯一の違いは、プロジェクトで使用されなくなった非推奨の機能です)。

PHP Compatibility

The minimum PHP version is decided for each major Symfony version by consensus amongst the core team and documented as part of the technical requirements for running Symfony applications.

Symfony のメジャー バージョンごとに最小 PHP バージョンがコア チームの合意によって決定され、Symfony アプリケーションを実行するための技術要件の一部として文書化されます。

Throughout each Symfony release's support lifetime, all released versions of PHP including new major versions will be supported. In this way, the maximum supported version of PHP for a maintained Symfony release is the latest released one that is publicly available.

Symfony の各リリースのサポート期間中、新しいメジャー バージョンを含むすべてのリリース バージョンの PHP がサポートされます。このように、維持されている Symfony リリースでサポートされる PHP の最大バージョンは、公開されている最新リリースのものです。

For out-of-support releases of Symfony, the latest PHP version at time of EOL is the last supported PHP version. Newer versions of PHP may or may not function.

Symfony のサポート対象外のリリースの場合、EOL の時点での最新の PHP バージョンが、最後にサポートされた PHP バージョンです。新しいバージョンの PHP は、機能する場合と機能しない場合があります。

Note

ノート

By exception to the rule, bumping the minimum minor version of PHP is possible for a minor Symfony version when this helps fix important issues.

ルールの例外として、Symfony のマイナー バージョンが重要な問題の修正に役立つ場合は、PHP の最小マイナー バージョンを引き上げることができます。

Rationale

This release process was adopted to give more predictability and transparency. It was discussed based on the following goals:

このリリース プロセスは、予測可能性と透明性を高めるために採用されました。次の目標に基づいて議論されました。
  • Shorten the release cycle (allow developers to benefit from the new features faster);
    リリース サイクルを短縮する (開発者が新しい機能をより早く利用できるようにする);
  • Give more visibility to the developers using the framework and Open-Source projects using Symfony;
    フレームワークを使用する開発者と、Symfony を使用するオープンソース プロジェクトの可視性を高めます。
  • Improve the experience of Symfony core contributors: everyone knows when a feature might be available in Symfony;
    Symfony のコア コントリビューターのエクスペリエンスを向上させます。誰もが Symfony でいつ機能が利用可能になるかを知っています。
  • Coordinate the Symfony timeline with popular PHP projects that work well with Symfony and with projects using Symfony;
    Symfony のタイムラインを、Symfony とうまく連携する一般的な PHP プロジェクトおよび Symfony を使用するプロジェクトと調整します。
  • Give time to the Symfony ecosystem to catch up with the new versions (bundle authors, documentation writers, translators, ...);
    Symfony エコシステムが新しいバージョンに追いつくための時間を与えてください (バンドル作成者、ドキュメント作成者、翻訳者など);
  • Give companies a strict and predictable timeline they can rely on to plan their own projects development.
    企業が独自のプロジェクト開発を計画するために信頼できる厳密で予測可能なタイムラインを企業に提供します。

The six month period was chosen as two releases fit in a year. It also allows for plenty of time to work on new features and it allows for non-ready features to be postponed to the next version without having to wait too long for the next cycle.

1 年に 2 回のリリースが収まるため、6 か月の期間が選択されました。また、新しい機能に取り組むための十分な時間を確保し、次のサイクルをあまり長く待たずに、準備ができていない機能を次のバージョンに延期することもできます。

The dual maintenance mode was adopted to make every Symfony user happy. Fast movers, who want to work with the latest and the greatest, use the standard version: a new version is published every six months, and there is a two months period to upgrade. Companies wanting more stability use the LTS versions: a new version is published every two years and there is a year to upgrade.

すべての Symfony ユーザーを満足させるために、デュアルメンテナンスモードが採用されました。最新かつ最高のものを使用したいファストムーバーは、標準バージョンを使用します。新しいバージョンは 6 か月ごとに公開され、アップグレードには 2 か月の期間があります。安定性を高めたい企業は LTS バージョンを使用します。新しいバージョンは 2 年ごとに公開され、1 年でアップグレードされます。