Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon

State of Go February 2019 - Golang developments report for this month released

Save for later
  • 2 min read
  • 04 Feb 2019

article-image

This Saturday, the Golang team released the State of Go February 2019 outlining the developments in the programming language and showing its current state. Since Golang 1.11, changes have been made to the standard library, tooling, and the community.

Changes in the standard library

html/template


The behavior when an interface is typed to an implicit escaper function is changed. It was previously <nil> and is now ignored.

Changes under bufio, NewReader


The UnreadRune and UnreadByte methods from Reader will return an error if they are called after Peek.

new ReplaceAll function


There is a new ReplaceAll function where the value passed can be bytes or strings.

Changes under builtin: maps printed sorted


To print a map sorted by keys, developers can just print the map. However, note that iteration will be done randomly.

TLS 1.3


Using TLS 1.3 in Go helps by causing one fewer round trip, securing only cipher suites, and provides support in all major browsers.

Tooling changes


The following commands now work:

  • go run pkg
  • go run dir
  • Functions can now be run in the debugger.
  • The godoc CLI is now deprecated.
  • Unlock access to the largest independent learning library in Tech for FREE!
    Get unlimited access to 7500+ expert-authored eBooks and video courses covering every tech area you can think of.
    Renews at $19.99/month. Cancel anytime
  • The go vet tool is deprecated in Go 1.12. It detects wrapped fmt.Printf errors.

modules


modules is an alternative to GOPATH. It has integrated versioning and package distribution.

runtime/trace


Now there are custom events to runtime traces.

webassembly


Go can now compile to WebAssembly (wasm files)

Ports

  • You need Go 1.11 and later for OpenBSD 6.4
  • arm64 runtime is now faster
  • Windows/arm now has support for Raspberry Pi3


These were a select few important updates from the presentation, for more details you can view The State of Go: Feb 2019.

The Golang team has started working on Go 2 proposals

Golang just celebrated its ninth anniversary

GoCity: Turn your Golang program into a 3D city