---
title: "What's coming in Go 1.15"
publication: "Go Weekly"
issue: 312
published_at: "2020-05-15"
canonical_url: "https://golangweekly.com/issues/312"
---

Plus more Go news and links.       

#312 — May 15, 2020 

[Unsubscribe](https://golangweekly.com/leave/*|UID|*)|[Read on the Web](https://golangweekly.com/issues/312)   

Golang Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/qsg5ecavjdlheia1gsqu.jpg)](https://lwn.net/SubscriberLink/820217/47ed80088c03b18d/)   

[What's Coming in Go 1.15](https://lwn.net/SubscriberLink/820217/47ed80088c03b18d/) — We linked to a [Go 1.15 slidedeck](https://docs.google.com/presentation/d/1veyF0y6Ynr6AFzd9gXi4foaURlgbMxM-tmB4StDrdAM/edit#slide=id.g550f852d27_228_0) a couple of weeks ago, but I know most of you prefer articles, so here you go! You know about smaller binaries, but did you know there’s a new linker? 

Benjamin Hoyt   

['Ensmallening' Go Binaries by Prohibiting Comparisons](https://dave.cheney.net/2020/05/09/ensmallening-go-binaries-by-prohibiting-comparisons) — Most people don’t need to squeeze Go binary sizes by this mild extent, but it’s an interesting spelunk nonetheless into how Go’s compilation process feeds a lot of sugar to your app, causing it to be a bit fatter and how you can put it on a (very modest) diet. 

Dave Cheney   [![\](https://copm.s3.amazonaws.com/ac2d4276.png)](https://blackfire.io/go?utm_source=golang_weekly&utm_medium=newsletter&utm_campaign=g_beta_launch) 

[Find & Fix Code Performance Issues](https://blackfire.io/go?utm_source=golang_weekly&utm_medium=newsletter&utm_campaign=g_beta_launch) — You can’t improve what you can’t measure. Install in minutes. Profile and understand Go code’s behavior and performance. Browse through appealing graphs. Blackfire.io is now available as Public Beta. 

Blackfire.io sponsor   

[go-elasticsearch: The Official Go Client for Elasticsearch](https://github.com/elastic/go-elasticsearch) — [Elasticsearch](https://github.com/elastic/elasticsearch) is a _verrry_ popular search engine/document database used to implement search features in apps, and with [v7.7.0](https://github.com/elastic/go-elasticsearch/releases/tag/v7.7.0) the Go client has added support for efficient, parallel ‘bulk indexing’ with very high ingest rates ([example here.](https://github.com/elastic/go-elasticsearch/tree/master/_examples/bulk)) 

elastic   

[immudb: A Lightweight, High-Speed _Immutable_ Database](https://github.com/codenotary/immudb) — Data can’t be changed in this database so it’s well suited for storing every update to _other_ databases for auditing purposes, perhaps, or maybe log streams or public certificates. Written in Go. 

CodeNotary   

[Go 1.14.3 and Go 1.13.11 Released](https://groups.google.com/d/msg/golang-announce/-9KWN-OUSl0/Jro9NDu8CgAJ) — Minor point releases fixing [a handful](https://github.com/golang/go/issues?q=milestone%3AGo1.14.3+label%3ACherryPickApproved) of minor bugs. 

Andrew Bonventre  

💻 Jobs  

[Golang Developer at X-Team (Remote)](https://x-team.com/remote-go-developer-jobs/?utm_source=cooperpress&utm_medium=email-ad&utm_campaign=go) — Join X-Team and work on projects for companies like Riot Games, FOX, Coinbase, and more. Work from anywhere. 

X-Team   

[Find a Job Through Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-golangweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77582) — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started. 

Vettery  

📚 Articles & Tutorials  

[Faking `stdin` and `stdout` in Go](https://eli.thegreenplace.net/2020/faking-stdin-and-stdout-in-go/) — Redirecting standard input and output is common in testing situations but has other use cases as well. 

Eli Bendersky   

[A Beginner Friendly Introduction to Prometheus](https://github.com/yolossn/Prometheus-Basics#readme) — [Prometheus](https://github.com/prometheus/prometheus) is a popular system monitoring and alerting system that’s built in Go and which you can therefore extend and enhance with Go too. 

S Santhosh Nagaraj   

[How I Write My Unit Tests in Go Quickly](https://dev.to/ilyakaznacheev/how-i-write-my-unit-tests-in-go-quickly-4bd5) — This covers everything from designing for easy testing to mocks to helpful libraries. 

Ilya Kaznacheev   

[The Go Security Checklist](https://link.sqreen.com/iwsY6ZRt) 

Sqreen sponsor   

[Building Uber’s Go Monorepo with Bazel](https://eng.uber.com/go-monorepo-bazel/) — Uber’s monorepo is the largest that’s using Bazel, leading to many challenges leading to many opportunities for Uber to work with Bazel and improve the platform. 

Uber Engineering   

[Getting My Head Around What Things Aren't Comparable in Go](https://utcc.utoronto.ca/~cks/space/blog/programming/GoUncomparableThings) — Builds upon Dave Cheney’s featured article above. 

Chris Siebenmann  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/ta0t3tjeaoztomwkwyky.jpg)](https://github.com/mum4k/termdash)   

[Termdash: A Go Terminal Based Dashboard System](https://github.com/mum4k/termdash) — A terminal-based dashboard before that supports window resizing, customizable layouts, dynamic layout changes at runtime, and more. 

Jakub Sobon   

[goaction: Write GitHub Actions in Go](https://github.com/posener/goaction) — _“The idea is: write a standard Go script, one that works with `go run`, and use it as a GitHub action.”_ 

Eyal Posener   

[Getting Started with OpenTelemetry in Go](https://docs.lightstep.com/otel/golang-get-started-with-opentelemetry?utm_campaign=golang&utm_source=cooper&utm_medium=Email) 

Lightstep sponsor   

[Shotizam: Analyze The Size of Go Binaries](https://github.com/bradfitz/shotizam) — Shotizam gives you a SQLite prompt with the results so you can use SQL to query them. 

Brad Fitzpatrick   

[Excelize 2.2: A Library for Reading and Writing Excel Files](https://github.com/360EntSecGroup-Skylar/excelize) — Read and write XLSX files, set and read cell values, add charts. [2.2](https://github.com/360EntSecGroup-Skylar/excelize/releases/tag/v2.2.0) is a key step forward with easier access to numerous features. 

360 Enterprise Security Group, Endpoint Security, inc.   

[jsonparser 1.0: An Alternative JSON Parser for Go](https://github.com/buger/jsonparser) — Schema-less so it’ll parse whatever you throw at it. Claims to be 10 times faster than `encoding/json`. 

Leonid Bugaev   

[Squirrel 1.4.0: Fluent SQL Generation for Go](https://github.com/Masterminds/squirrel) — Think about chainable methods to build a SQL query. For example: `sq.Select("*").From("users").Join("emails USING (email_id)")` 

Masterminds   

[sqlc 1.3.0: Generate Type Safe Go From SQL](https://github.com/kyleconroy/sqlc) — sqlc supports a nice set of features, including transactions, array data types, and various migration tools. [1.3.0 just dropped.](https://github.com/kyleconroy/sqlc/releases/tag/v1.3.0) 

Kyle Conroy   

[go-toml: Go Library for the TOML Format](https://github.com/pelletier/go-toml) — [TOML](https://github.com/toml-lang/toml) is a configuration file format invented by one of GitHub’s founders. Here’s [what it looks like.](https://github.com/toml-lang/toml#user-content-example) 

Thomas Pelletier  

🎲 Fun and Side Projects  

[Profefe: Continuously Collect Profiling Data for Long-Term Postmortem Analysis](https://github.com/profefe/profefe) — Vladimir writes in: 

> “For the past couple years I’ve been working on profefe, a system and an agent-library for continuous profiling for Go, initially inspired by Google’s Stackdriver Profiler. (..) Since this is a hobby project, I’m interested in feedback and collecting use cases, outside of those I came up for my personal needs.” 

Vladimir Varankin   

[Orchestra: A New Library to Manage Long Running Go Processes](https://github.com/stephenafamo/orchestra) 

Stephen Afam-Osemene   

If you want to get into a section like this in a future issue, let us know if you work on any interesting Go related projects you think we should include. Bonus points for games, musical, or anything with a nice visual angle we can include, but everything welcome. 😄       

Curated by [Glenn Goodrich](https://twitter.com/ruprict) and [Peter Cooper](https://twitter.com/peterc). 

[Change your email address](https://golangweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://golangweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
