みつきんのメモ

組み込みエンジニアです。Interface誌で「Yocto Projectではじめる 組み込みLinux開発入門」連載中

YoctoProjectのライフサイクル

はじめに

YoctoProjectのリリースバージョンを確認するにはReleasesのページを参照する。

その際にSupport LevelがEOLになっているものは既にサポートが切れていると言えそう。

1つ気になったのはDunfell(3.1)のSupport Levelを見るとLong Term Supportとなっている。Long Term Supportでは具体的にどのくらいサポートが継続されるのだろうか。このページにはSupport Levelの詳細についてはこのページでは特に言及が無い。

Stable Release and LTSを参照するとその謎が解ける

リリースライフサイクル

まず、YoctoProjectのライフサイクルには次の2つがある。

  • Stableリリース
  • Long Term Support(LTS)

Stableリリース

Stableリリースは7ヶ月間メンテナンスされる。

Stableリリースのライフサイクルは次のように遷移する。

Initial Release -> Stable -> Community -> EOL

Long Term Support(LTS)

LTSは2年間メンテナンスされる。

LTSのライフサイクルは次のように遷移する。

Initial Release -> LTS -> Community -> EOL

LTSでは下記のものは継続的にメンテナンスされる。

  • Bitbake
  • OE-Core
  • Meta-yocto
  • yocto-docs

下記のものはメンテナンスされない。

  • meta-mingw
  • meta-gplv2
  • vendor layers

ライフサイクルの各ステータスについて

ライフサイクルには下記の状態がある。

  • Initial Release
  • Stable/LTS
  • Community
  • EOL

Initial Release

リリースされた直後の状態。

Stable/LTS

リリース後の継続的なメンテナンスステータス。

このステータスの場合は、下記の修正は適用されない。

  • (パッケージの)バージョンの更新(General version upgrades)
  • 新機能(New Features)
  • ABI/APIへの破壊的な変更(ABI/API breakage)

下記の修正は適用される。

  • セキュリティアップデート(Security and CVE fixes)
  • バグフィックス(Fixes for bugs)
  • アップストリームのStable/LTSに追従する(互換性を保った)変更(Changes to follow an upstream stable series or LTS that aligns with the original release (based on compatibility))

下記の修正は場合によっては適用される。

  • Fixes so codebase works with newly released distros (only in the first six months after a given release series first releases)
  • Bug fix only version upgrades for upstreams with a good stable process

正直良くわからなかったので原文のまま。

Community

7ヶ月間のメンテナンス期間が終了後、ML上で有志のメンテナを募って、6週間以内に担当者が現れた場合はこのステータスに移行する。

担当者がいなかった場合はEOLに移行する。

Stable/LTSとの違いは下記。

  • Patches merge to the main repository but in a community/XXX namespace
  • Automated testing is on a best effort basis, some autobuilder cycles may be available but not guaranteed.
  • The maintainer is required to publish a testing plan to show what testing will be made for patches to merge to the community branch.
  • No point releases version and no release artifacts

ユーザー側から見て重要な点としては、自動テストがベストエフォートベースになること、 ポイントリリースやリリース物の配布は無い。というところか。

EOL

メンテナがいない状態。

2020/12時点のステータス

Gatesgarth(3.2)のステータスがDevのままになっているが、2020/11/3でリリースされたらしい。

Codename Yocto Project Version Current Version Support Level
Hardknott 3.3 Future
Gatesgarth 3.2 Dev
Dunfell 3.1 3.1.3 Long Term Support
Zeus 3.0 3.0.4 Community
Warrior 2.7 2.7.4 EOL
Thud 2.6 2.6.4 EOL
Sumo 2.5 2.5.3 EOL
Rocko 2.4 2.4.4 EOL
Pyro 2.3 2.3.4 EOL
Morty 2.2 2.2.4 EOL
Krogoth 2.1 2.1.3 EOL
Jethro 2.0 2.0.3 EOL
Fido 1.8 1.8.2 EOL
Dizzy 1.7 1.7.3 EOL
Daisy 1.6 1.6.3 EOL
Dora 1.5 1.5.4 EOL
Dylan 1.4 1.4.3* EOL
Danny 1.3 1.3.2 EOL
Denzil 1.2 1.2.2 EOL
Edison 1.1 1.1.2 EOL
Bernard 1.0 1.0.2 EOL

まとめ

DunfellはLTS。

Gategarthはリリース済み。