Goブログ

Goがより安定

Andrew Gerrand
2011年3月16日

Goプロジェクトは急速に進んでいます。Goについてより深く学ぶにつれて、ツール、ライブラリ、時には言語そのものを変更せざるを得なくなっています。私たちは間違いを不朽のものにするのではなく、そこから学ぶために、後方互換性のない変更を許可しています。Goの開発のこの段階における柔軟性は、プロジェクトの開発、そして最終的にはその寿命にとって不可欠であると信じています。

Goのリリース以来、私たちは週に約1回のペースでリリースを行っています。各リリースには、変更内容を説明したリリースノートが付属しており、後方互換性のない変更は明示的に示されています。「Goは安定していますか?毎週Goコードを更新する必要がないとどうして確信できますか?」という質問をよく聞きます。これらの質問に対する答えは、「はい」と「そうする必要はありません」です。

今週のリリースでは、新しいリリースタグ付けスキームを導入します。私たちは週ごとのリリースを継続するつもりですが、既存のタグをreleaseからweeklyに名前を変更しました。releaseタグは、毎月または2ヶ月に1回、厳選された安定版リリースに適用されるようになりました。このよりゆったりとしたリリーススケジュールは、平均的なGoプログラマーの生活をより楽にするはずです。

ユーザーは定期的にコードを更新する必要があります(これは若い言語を使用することのコストです)が、頻度は少なくなります。追加の利点は、安定版リリースをタグ付けする頻度を減らすことで、更新の自動化により多くの労力を費やすことができるということです。この目的のために、コードの更新を支援するツールであるgofixを導入しました。

以前はrelease.2011-03-07.1(現在はweekly.2011-03-07.1)とタグ付けされていたリビジョンが、最初の安定版リリースとして指定され、タグrelease.r56が付けられました。安定版リリースにタグを付けるたびに、新しいgolang-announceメーリングリストに告知を投稿します。(今すぐ購読しませんか?)

これらすべての結果は何ですか?hg update releaseを使用してGoのインストールを最新の状態に保ち続けることができますが、新しい安定版リリースにタグ付けされたときにのみ更新する必要があるようになりました。最先端にとどまりたい場合は、hg update weeklyでweeklyタグに切り替える必要があります。

ハッピーコーディング!

次の記事: C?Go?Cgo!
前の記事: JSONとGo
ブログインデックス