UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

【Rust】Rustのリリーススケジュール

今年になってRustのお勉強を再開したら以下のようなエラーが出た

error: failed to parse manifest at `/Users/uga/Exercism/rust/Cargo.toml`

Caused by:
  feature `edition2021` is required

どうやらRustのバージョンが古いので更新しろということらしい

stackoverflow.com

上のstackoverflowでは下のコマンドが紹介されていた

$ rustup default nightly && rustup update

rustupはrust関連ツール(rustcとかcargoとか)を管理してくれるアプリケーション

nightlyはツールのnightlyバージョンをインストールしたり、対応するコマンドもnightlyバージョンを使用するように切り替える

nightlyは「トレインモデル」と呼ばれるRustのリリーススケジュールのうちの超最新版のことらしい

なのでは通常の開発者は以下の方がよさそう

$ rustup default stable && rustup update

Rustの「トレインモデル」リリーススケジュールについては下で詳しく書かれていた

doc.rust-lang.org

まず、Rustは6週間ごとに安定版をリリースするが、その前にnightly版とbeta版が存在するらしい

nightly版とはその言葉通り、Rustは毎晩定期にリリースしており、そのリリースサイクルでリリースされるバージョンのことを指す

beta版ではリグレッションテストなどを行い、リグレッションが見つかればnightly版に取り込むということしている

そして、6週間目には安定版をリリースするというスケジュール

nightly: * - - * - - * - - * - - * - - * - * - *
                     |
beta:                * - - - - - - - - *
                                       |
stable:                                *

そして、6週間ごとに「ステーションを離れる」ため「トレインモデル」と呼ばれるらしい

とりあえずこれで事象は解消された