Go 1.6 Released
Written by Kay Ewbank   
Tuesday, 23 February 2016

The latest version of Google Go has been released with support for HTTP/2. Coming six months after Go 1.5, which had more dramatic changes, Version 1.6 contains more incremental improvements. 



The support for HTTP/2 in the net/http package is the most interesting improvement. HTTP/2 is the follow-on to HTTP that is already in use in major browsers such as Firefox and Chrome, as well as major websites. Support for HTTP/2 is enabled by default for both servers and clients when using HTTPS in Go 1.6.

Another area that has been improved is the template packages. These now have support for trimming spaces around template actions to produce cleaner template output, and the introduction of a  {{block}} action that can be used to create templates that build on other templates.

The developers have added a feature to overcome the problem of more than one goroutine writing to the same map concurrently. Maps in Go are a built-in data structure that associate values of one type (the key) with values of another type (the element or value) . Problems are caused if two routines update the same structure, so the runtime has added lightweight, best-effort detection of concurrent misuse of maps. If the runtime detects multiple concurrent updates, it prints a diagnosis and crashes the program. You can then run the program under the race detector, which will identify which routines are causing the problem.

The runtime has also changed how it prints program-ending panics. It now prints only the stack of the panicking goroutine, rather than all existing goroutines. 

If you are a user of cgo, you need to take note of major changes to the rules for sharing pointers between Go and C code that have been made to prevent problems with interactions between C code that retains a pointer after a cgo call, and Go's garbage collector. There's a good explanation in the release notes. There are a variety of other changes all documented in the release notes.


More Information

Detailed Release Notes

Downloads Page

Related Articles

Google's Go Finally Kills Off C

Go 1.5 In Beta        

Go 1.4 gets Android support 

Go 1.3 Released

A Programmer's Guide To Go

Why invent a new language? Go creator explains

Go Is Four

Go with Google - Yet Another Language!


To be informed about new articles on I Programmer, sign up for our weekly newsletter,subscribe to the RSS feed and follow us on, Twitter, FacebookGoogle+ or Linkedin



Quantum Computing Prize Awarded

John Preskill, Professor of Theoretical Physics at the California Institute of Technology, is the eighth recipient of the John Stewart Bell Prize for Research on Fundamental Issues in Quantu [ ... ]

Grafana 11 Improves Metrics

Grafana Labs, creators of the Grafana open-source metrics analytics and visualization suite, has announced the preview release of Grafana 11 with improvements to make it easier to view metrics, and ch [ ... ]

More News


raspberry pi books



or email your comment to: comments@i-programmer.info

Last Updated ( Tuesday, 23 February 2016 )