#371 — July 16, 2021 |
Go Weekly |
Go 1.17 Release Candidate 1 Released — The Go team took a break but now they’re back and they want you to run your production load tests on the latest version to help them perfect the final release. As is usual, you can learn more about the actual changes and features in the draft release notes. Go Team |
⚠️ Go 1.16.6 and 1.15.14 have also been released to fix a certificate negotiation security vulnerability. |
LiveKit: A Go Powered Server for Real Time Audio and Video — An open source infrastructure project for building and scaling realtime WebRTC powered audio and video experiences in apps. It’s new but there are already SDKs for iOS, JS, React, and Android. The Go server code. LiveKit Team |
Run Faster and Safer Than Linux with Open Source Unikernels — Run open source Go unikernels. No devops, no frameworks, no cloud lock-in. Easier than K8S. Run 2X as fast on Google. Run 3X as fast on AWS and deploy in 10s of seconds. NanoVMs sponsor |
Updating the Go Memory Model — The final post in a three-part series that culminates with the outline of a proposal to change Go’s memory model. This post is very technical but the specific changes are clear and accessible. If this proposal is anything like Russ’s previous efforts, be prepared to see changes in Go before long(!) Russ Cox |
▶ Discussing SIV and the 'V2+ Issue' with Peter Bourgon and Tim Heckman — A technical discussion about some changes introduced by the move to modules. Go Time Podcast podcast |
|
How Hot Does It Get Inside a Car During a Heat Wave? — The author measured just how hot it got in his car during a recent heatwave. A nice post, with Go making an appearance in parsing the eventual data. The answer, by the way, is ridiculously hot. Jeremy Morgan |
There Is No 'Extreme' Fast Way to Merge Slices in Go — When you Go101 |
Creating the Golfcart Programming Language — How a developer approached implementing his own toy programming language with Go. Andrew Healey |
Extend Your Go App with Embedded WebAssembly Functions in WasmEdge — WasmEdge is a CNCF hosted library, which is nice, but you may find the process to use it a bit, um, rusty. Second State |
🛠 Code & Tools |
Testza: Full-Featured Test Framework for Go — Testza includes assertions, mocking, input testing, output capturing, along with some very nice, colorized output. Marvin Wendt |
Multiple Progress Bar: Progress Bars for Go CLI Apps — Straightforward textual progress bars with support for rendering multiple bars at the same time (such as for tasks running concurrently). Vladimir Bauer |
uuid 1.3.0: Package for UUIDs based on RFC 4122 and DCE 1.1 — 1.3.0 adds an optional ‘randomness pool’ mode for random v4 UUID generation which can increase throughput at the cost of security in certain situations. |
Build Video for Your Go App with Just Two API Calls Mux sponsor |
Minimock: A Tool to Generate Mocks from Interface Declarations — Generates statically typed mocks and helpers and is fully integrated with the Juno Inc. |
ws 1.1: Tiny WebSocket Library for Go — It’s been a couple of years since a significant release. 1.1 adds WebSocket Compression Extension support. Sergey Kamardin |
Ergo: Erlang/OTP Ideas, But in Go — If you’ve ever been intrigued by the Erlang ecosystem but weren’t ready to give it a go, Ergo brings some of the Erlang world’s ideas to Go. Taras Halturin |