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. 

go

 

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.

goicon1

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

 

Banner


Java Version 23 Released
30/09/2024

It was in April 2024 that we had Java 22. Now after just 6 months there's version 23, which is a STS release with lots of features in preview status.



MongoDB 8 Reduces Memory Use And Increases Speed
07/10/2024

MongoDb 8 has been released, and the developers have said this is the most secure, durable, available, and performant version of MongoDB yet, with significantly reduced memory usage and query times, a [ ... ]


More News

 

kotlin book

 

Comments




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

Last Updated ( Tuesday, 23 February 2016 )