2015年8月19日、Goプロジェクトは、Go言語の6番目の安定版リリースであるGo 1.5を発表できることを誇りに思っています。

このバージョンでは、言語の実装に多くの大きな変更が加えられました。 コンパイラとランタイムは
CからGoに
ブロードキャストされ、GoコードベースからCの最後の残りを削除しました。 ガベージコレクタは
完全に書き直され 、
ガベージコレクション中の一時停止が
大幅に削減されました 。 ランタイムスケジューラの付随する変更により、
GOMAXPROCS (同時に実行されているゴルーチンの数)の値を1から論理CPUの数に変更できました。 リンカの変更により、GoおよびCプログラムの両方とリンクできる動的ライブラリの形でGoパッケージを配布できるようになりました(
design )。
(
最初の部分は、Andrew GerrandによるGoブログでの発表の無料翻訳です -blog.golang.org/go1.5 )
このリリースには
、 Go
開発ツールの改善も含ま
れています 。
「内部」パッケージのサポートにより、パッケージ間を簡単に実装できます。 外部依存関係の自動販売の
実験的なサポートは、Goでの外部依存関係管理の実装方法を標準化する上での一歩です。 新しい
「go tool trace」ユーティリティを使用すると、実行時にプログラムの進行状況を最小限の詳細で視覚化できます。 新しい
「go doc」は、Goのドキュメントを表示するためのより便利なコマンドラインインターフェイスを提供します。
また、いくつかの
新しいサポートされている
システムとアーキテクチャも追加されてい
ます 。 最も成熟したものは、darwin / armおよびdarwin / arm64(Apple iPhoneおよびiPad)およびlinux / arm64です。 また、ppc64およびppc64le(IBM 64ビット、ビット/リトルエンディアン)の実験的サポートを追加しました。
darwin / arm64のサポートと動的リンクの新しい機能は
、Goモバイルプロジェクト -AndroidおよびIOS用のアプリケーションを作成するための実験-の鍵です。 (Goモバイルのみはこのリリースの一部ではなく、別のプロジェクトです)。
言語の唯一の変更(もちろん、下位互換性)は
、mapのリテラルの制限を
緩和することです。これにより、場合によってはより読みやすく便利になります。
また、標準ライブラリには多くの改善と追加が行われました。 flagパッケージは、
使用法メッセージの出力を
より美しく表示するようになりました 。 math / bigパッケージでは、
Float型が追加され、任意の精度の大きな浮動小数点数を処理できるようになりました。 LinuxおよびBSDシステムのDNSリゾルバー
の改善により、DNSを必要とするプログラムのCGOを取り除くことができました。
go / typesパッケージは、
golang.org / x / toolsリポジトリから標準ライブラリに
移動しました。 (
go / constantおよび
go / importerパッケージも同様に移動しました)。 既存の
SliceOfと同様に、
ArrayOfおよび
FuncOf関数が
Reflectパッケージに追加されました。 そして、もちろん、
マイナーな修正と改善の全
リスト 。
リリースページですべての詳細とリリースの詳細を確認でき
ます 。 システムのリリースは
こちらからダウンロードできます。
設置
Go 1.5をインストールする場合、インストール手順は常に同じ
です(公式ページ
golang.org/dlでインストーラーをダウンロードするか、バイナリーまたはソースコードを含む.tar.gzアーカイブをダウンロードします)。 最初の方法が望ましいです。

以前のリリース(Go 1.4)を離れて、その場で以前のリリースと最新のリリースを切り替える(たとえば、バージョンのビルドを比較する)場合は、バイナリ.tar.gzパッケージをダウンロードして(標準)に展開するのが最も簡単な方法です/ usr / local:
$ ls /usr/local/go* go142 go15
/ usr / local / goにシンボリックリンクを作成して、目的のバージョンを探します。 必要に応じて、エイリアスまたはスクリプトで簡単にラップできます。
$ cd /usr/local $ ln -nfs go142 go $ ln -nfs go150 go
参照資料
golang.org/doc/go1.5blog.golang.org/go1.5