<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Golang Weekly</title>
    <description>A weekly newsletter about the Go programming language</description>
    <link>https://golangweekly.com/</link>
    <item>
      <title>Hooking into the Go toolchain</title>
      <link>https://golangweekly.com/issues/620</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​620 — October 9, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://golangweekly.com/link/191399/rss" style=" color: #0099b4;"&gt;Read the Web Version&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;ℹ️ We're back, &lt;em&gt;but&lt;/em&gt; we're taking another break next week, so we'll see you again on Friday, October 23! :-)&lt;br&gt;__&lt;br&gt;&lt;em&gt;Your editor, Peter Cooper&lt;/em&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;Go Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://golangweekly.com/link/191359/rss" style=" color: #0099b4;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/yna9kitpqq3n37dpzywx.jpg" width="640" style="    line-height: 100%;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191359/rss" title="victoriametrics.com" style=" color: #0099b4;    font-size: 1.1em; line-height: 1.4em;"&gt;The Data Race That Wasn't a Bug (and the One That Was)&lt;/a&gt;&lt;/span&gt; — &lt;code&gt;Client.Do&lt;/code&gt; can return before &lt;code&gt;net/http&lt;/code&gt; has finished reading your request body, so reusing the buffer can trigger a data race. A walk through the transport’s goroutines and why VictoriaMetrics kept one such race but fixed another.&lt;/p&gt;
  &lt;p&gt;Jesús Espino &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://golangweekly.com/link/191358/rss" style=" color: #0099b4;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/bceb594c.png" width="150" height="150" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191358/rss" title="threedots.tech" style=" color: #0099b4;    font-size: 1.05em;"&gt;Nail Your Complex Go Backend&lt;/a&gt;&lt;/span&gt; — Adding a feature shouldn't break three other things. Learn advanced backend patterns by building a food delivery platform, by hand or with your coding agent. Enrollment opens in two weeks. &lt;a href="https://golangweekly.com/link/191358/rss" style=" color: #0099b4;   "&gt;Join the waitlist so you don’t miss it!&lt;/a&gt;&lt;/p&gt;
  &lt;p&gt;Three Dots Labs &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #885 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191360/rss" title="internals-for-interns.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;Hooking into the Go Toolchain&lt;/a&gt;&lt;/span&gt; — A deep tour of &lt;code&gt;go build -toolexec&lt;/code&gt; for wrapping compiler and linker runs, starting with a simple timer and moving on to rewriting code mid-build, patching &lt;code&gt;importcfg&lt;/code&gt; to add new imports, and more.&lt;/p&gt;
  &lt;p&gt;Kemal Akkoyun &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;🔐 &lt;a href="https://golangweekly.com/link/191361/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Go 1.27.2 and 1.26.9&lt;/a&gt; have been released with 15 security fixes, mostly in &lt;code&gt;net/http&lt;/code&gt;, plus a fix for &lt;a href="https://golangweekly.com/link/191362/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;a compiler bug that could corrupt values&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;📊 &lt;a href="https://golangweekly.com/link/191363/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Every Go release since 2013, benchmarked&lt;/a&gt;. The same benchmark programs took 11.5% less time on Go 1.27 than on 1.23, and ~41% less than on 1.2.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🔒 Google has &lt;a href="https://golangweekly.com/link/191364/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;paused bounties&lt;/a&gt; for product vulnerabilities in Go and its other open source projects after &lt;a href="https://golangweekly.com/link/191365/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;a flood of mostly invalid automated reports&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🇯🇵 &lt;a href="https://golangweekly.com/link/191366/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;GopherCon Japan 2027's CFP&lt;/a&gt; is open until October 25 if you fancy speaking at the (bilingual) event in Tokyo next February.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191367/rss" title="vincent.bernat.ch" style=" color: #0099b4;    font-size: 1.05em;"&gt;Hacking the Go Compiler to Efficiently Map IPv4 to IPv6&lt;/a&gt;&lt;/span&gt; — A small IPv4-to-IPv6 conversion led Vincent through noder hacks, SSA rewrite rules, and compiler pass ordering to close a ~8x performance gap.&lt;/p&gt;
  &lt;p&gt;Vincent Bernat &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191368/rss" title="go.dev" style=" color: #0099b4;    font-size: 1.05em;"&gt;Arch-Specific SIMD in Go&lt;/a&gt;&lt;/span&gt; — A follow-up to the Go team’s look at &lt;a href="https://golangweekly.com/link/191369/rss" style=" color: #0099b4;   "&gt;platform-independent SIMD in Go&lt;/a&gt; covering the experimental &lt;code&gt;archsimd&lt;/code&gt; package, which now supports &lt;code&gt;arm64&lt;/code&gt; and &lt;code&gt;wasm&lt;/code&gt;, plus tips for writing SIMD code that compiles well.&lt;/p&gt;
  &lt;p&gt;Junyang Shao and David Chase (Go Team) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191370/rss" title="iain.rocks" style=" color: #0099b4;    font-size: 1.05em;"&gt;Don't Couple Your Go Code to GitHub&lt;/a&gt;&lt;/span&gt; — Is putting &lt;code&gt;github.com&lt;/code&gt; in import paths a problem? Iain thinks so, and makes the case for using your own domain instead, but it kicked off &lt;a href="https://golangweekly.com/link/191371/rss" style=" color: #0099b4;   "&gt;a lively debate on Hacker News&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Iain Cambridge &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191372/rss" title="www.tigerdata.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;Ship Go Features, Not Data Pipelines&lt;/a&gt;&lt;/span&gt; — TimescaleDB extends Postgres so your Go service gets fast analytics without a second system. &lt;a href="https://golangweekly.com/link/191372/rss" style=" color: #0099b4;   "&gt;Get $1000 credit&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Tiger Data (creators of TimescaleDB) &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #885 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://golangweekly.com/link/191373/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Poisoning a Go Build Cache&lt;/a&gt; – A hands-on look at how $GOCACHE works and why sharing it in CI can be risky. &lt;cite&gt;Lukas Schwab&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://golangweekly.com/link/191374/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Go 1.27 Detects Goroutine Leaks: I Tested It on Mine&lt;/a&gt; – With three caught, but one notable miss. &lt;cite&gt;Jules Robineau&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://golangweekly.com/link/191375/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Logs in Parallel Go Tests and Where to Find Them&lt;/a&gt; – Hint: Go 1.25’s &lt;code&gt;t.Output()&lt;/code&gt; is your friend. &lt;cite&gt;Artur Dryomov&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;🛠 Code &amp;amp; Tools&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191376/rss" title="withblue.ink" style=" color: #0099b4;    font-size: 1.05em;"&gt;Francis: Durable Actors, Jobs and Workflows for Go&lt;/a&gt;&lt;/span&gt; — Durable actors, cron jobs, background jobs with retries, rate limiting and saga-style workflows, embedded in your app and backed by SQLite or Postgres, with an optional standalone runtime for larger clusters.&lt;/p&gt;
  &lt;p&gt;Alessandro Segala &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191377/rss" title="buf.build" style=" color: #0099b4;    font-size: 1.05em;"&gt;connect-go v2 Arrives with Simpler, gRPC-Go-Style Handlers&lt;/a&gt;&lt;/span&gt; — Buf's Go RPC library drops its generic request and response wrappers, splits HTTP out from the core, and no longer sends plain Go error messages to clients. There's a migration tool, and v1/v2 can coexist in one module.&lt;/p&gt;
  &lt;p&gt;Buf &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/191378/rss" title="github.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;fx 40: Interactive Terminal JSON Viewer and Processor&lt;/a&gt;&lt;/span&gt; — We've linked &lt;code&gt;fx&lt;/code&gt; a few times over the years, but &lt;a href="https://golangweekly.com/link/191379/rss" style=" color: #0099b4;   "&gt;v40&lt;/a&gt; is a huge release: write queries inside the viewer and watch results update as you type, plus XML, HTML, EDN and MAML input, and vim-style commands.&lt;/p&gt;
  &lt;p&gt;Anton Medvedev &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/191382/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;gopls 0.24 Prerelease&lt;/a&gt; – Now with LSP 3.18 support, better Go assembly handling, and a new analyzer for inconsistent &lt;code&gt;E&lt;/code&gt;/&lt;code&gt;*E&lt;/code&gt; error use.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/191380/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Echo 5.4&lt;/a&gt; – The web framework fixes several security issues (some fixes change behavior). &lt;a href="https://golangweekly.com/link/191381/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;4.16&lt;/a&gt; gets them too.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🤖 &lt;a href="https://golangweekly.com/link/191383/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;GitHub MCP Server 2.0&lt;/a&gt; – GitHub's official, Go-powered MCP server adds structured outputs for agents.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/191384/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Rill 0.9&lt;/a&gt; – Composable, channel-based concurrency toolkit, now with first-class context support. v1.0 is not far away.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/191385/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;gomponents 1.4&lt;/a&gt; – Build HTML views as plain Go functions. Now with faster rendering and an &lt;a href="https://golangweekly.com/link/191400/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;official agent skill&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📰 Classifieds&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/191386/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;POKE&lt;/a&gt; (Publish Once, Kickoff Everywhere) is a free agent skill that audits your Go code and helps you add events, SSE and Standard Webhooks.&lt;/p&gt;
 
&lt;p&gt;🐘 Many Go backends end up talking to Postgres, so you may also like our other newsletter: &lt;a href="https://golangweekly.com/link/191387/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Postgres Weekly&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📢  Elsewhere in the ecosystem&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://golangweekly.com/link/191388/rss" style=" color: #0099b4;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/ihyzdbxqzppjih1pazr5.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;✨ &lt;a href="https://golangweekly.com/link/191388/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;GoNIX&lt;/a&gt; is a UNIX-like OS that boots a Linux kernel and hands off to a Go &lt;code&gt;init&lt;/code&gt;, with coreutils, networking, and an SSH server, all written in Go too. After some teething problems, which I reported to its creator, the &lt;a href="https://golangweekly.com/link/191389/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;instructions to boot it&lt;/a&gt; on Apple silicon now work well &lt;em&gt;(as above)&lt;/em&gt;. A neat experiment!&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;From the same author, James Mills, also comes &lt;a href="https://golangweekly.com/link/191390/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Parley&lt;/a&gt;, a &lt;em&gt;"federated, decentralised chat that speaks plain IRC"&lt;/em&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;Neki&lt;/em&gt;, PlanetScale's new sharded Postgres offering, sits behind a Go-powered proxy, and &lt;a href="https://golangweekly.com/link/191391/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;this look at its design&lt;/a&gt; shows how it avoids decoding Postgres wire data it doesn't need to touch.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Mitchell Hashimoto has proposed &lt;a href="https://golangweekly.com/link/191392/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;OSC 7501, a terminal protocol&lt;/a&gt; that lets programs report their status to the terminal. &lt;a href="https://golangweekly.com/link/191393/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Bubble Tea 2.1&lt;/a&gt; (released this week) already supports it.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🕹️ Fancy some late '90s real-time strategy? &lt;a href="https://golangweekly.com/link/191394/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Nanolathe&lt;/a&gt; reimplements &lt;em&gt;Total Annihilation&lt;/em&gt;'s engine in Go, and you can &lt;a href="https://golangweekly.com/link/191395/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;play a demo in your browser&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://golangweekly.com/open/620/rss" width="1" height="1" /&gt;</description>
      <pubDate>Fri, 9 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://golangweekly.com/issues/620</guid>
    </item>
    <item>
      <title>Go 1.27's portable SIMD</title>
      <link>https://golangweekly.com/issues/619</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​619 — September 25, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://golangweekly.com/link/190895/rss" style=" color: #0099b4;"&gt;Read the Web Version&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;👋 We're taking a break next week, so we'll be back on Friday, October 9.&lt;br&gt;__&lt;br&gt;&lt;em&gt;Your editor, Peter Cooper&lt;/em&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;Go Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://golangweekly.com/link/190860/rss" style=" color: #0099b4;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/hzrvmcdnr9leqzisyx0v.jpg" width="640" style="    line-height: 100%;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190860/rss" title="go.dev" style=" color: #0099b4;    font-size: 1.1em; line-height: 1.4em;"&gt;Platform-Independent SIMD in Go&lt;/a&gt;&lt;/span&gt; — SIMD lets a CPU perform an operation on a vector of values at once. Go 1.27 brings experimental SIMD support to arm64 and wasm, plus a portable &lt;code&gt;simd&lt;/code&gt; package that emulates SIMD where unavailable, so you don't need to write a plain Go fallback.&lt;/p&gt;
  &lt;p&gt;David Chase and Junyang Shao (Go Team) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;RELATED:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190861/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;&lt;code&gt;hash/adler32&lt;/code&gt;'s SIMD implementation&lt;/a&gt; is a good, brief example of using SIMD to get over double the speed on larger inputs.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Ben Boyter explains &lt;a href="https://golangweekly.com/link/190862/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;how he borrowed &lt;code&gt;fzf&lt;/code&gt;'s SIMD byte-matching routine&lt;/a&gt; to help cut his code search tool's user CPU time by nearly 4x.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Sylvain Kerkour shows off &lt;a href="https://golangweekly.com/link/190863/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;7.5x faster ChaCha20 encryption&lt;/a&gt; built on Go's SIMD.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://golangweekly.com/link/190859/rss" style=" color: #0099b4;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/466f4e70.png" width="110" height="110" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190859/rss" title="www.tigerdata.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;Ingest and Analytics in One Postgres. No Pipeline&lt;/a&gt;&lt;/span&gt; — Go compiles to one binary. Your data layer can be just as lean. TimescaleDB extends the Postgres you already run so ingest and analytics live in one database, not a warehouse and a pipeline. Same SQL, one system to run. &lt;a href="https://golangweekly.com/link/190859/rss" style=" color: #0099b4;   "&gt;Get $1000 credit to start&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Tiger Data (creators of TimescaleDB) &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #885 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;📢 Proposals and Updates&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190864/rss" title="github.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;How Do You Add a New Keyword to Go? (For Sum Types)&lt;/a&gt;&lt;/span&gt; — Damien's &lt;a href="https://golangweekly.com/link/190865/rss" style=" color: #0099b4;   "&gt;design for sum types&lt;/a&gt; is being actively worked through. The latest sticking point is figuring out how to add a &lt;code&gt;union&lt;/code&gt; keyword without breaking existing code or &lt;code&gt;gofmt&lt;/code&gt;, with some &lt;a href="https://golangweekly.com/link/190866/rss" style=" color: #0099b4;   "&gt;useful input from Dart's Bob Nystrom.&lt;/a&gt;&lt;/p&gt;
  &lt;p&gt;Damien Neil et al. &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190867/rss" title="github.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;Is Go's FIPS 140 Code Bloating Your Binaries?&lt;/a&gt;&lt;/span&gt; — Using &lt;code&gt;crypto/rand&lt;/code&gt; pulls in extra crypto code even with FIPS off, so WireGuard's creator wants a build-time opt-in. Filippo Valsorda has trimmed some dependencies but argues separate builds would increase testing and maintenance work.&lt;/p&gt;
  &lt;p&gt;Jason A. Donenfeld et al. &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;AND MORE:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Tests are getting &lt;a href="https://golangweekly.com/link/190869/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;automatic goroutine labels&lt;/a&gt; so profiles and tracebacks show which test, benchmark or fuzz run was responsible.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;string(x)&lt;/code&gt; on arbitrary integers will be restricted to &lt;code&gt;byte&lt;/code&gt;, &lt;code&gt;rune&lt;/code&gt;, and untyped rune constants in Go 1.28, with the &lt;a href="https://golangweekly.com/link/190868/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;proposal being accepted yesterday&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Brad Fitzpatrick is &lt;a href="https://golangweekly.com/link/190870/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;prototyping &lt;code&gt;Mutex.LockChan()&lt;/code&gt;&lt;/a&gt; so a &lt;code&gt;select&lt;/code&gt; can wait on a lock and a channel at once. Just a demo for now.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Rhys Hiltner has &lt;a href="https://golangweekly.com/link/190871/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;a stack of CLs&lt;/a&gt; to speed up the GC's stop-the-world phase transitions.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;🛠 Code &amp;amp; Tools&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://golangweekly.com/link/190872/rss" style=" color: #0099b4;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/lwk51nrbc07sfha1dgtx.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190872/rss" title="agentexecutor.io" style=" color: #0099b4;    font-size: 1.05em;"&gt;AX: Google's Open Agentic Orchestration Runtime&lt;/a&gt;&lt;/span&gt; — Designed for large-scale throughput, AX runs AI agents akin to how Kubernetes runs pods. Declare tasks, workspaces, and models in YAML and AX sandboxes the agents and wires it all up. &lt;a href="https://golangweekly.com/link/190873/rss" style=" color: #0099b4;   "&gt;GitHub repo&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Jaana Dogan et al. &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190874/rss" title="agentfield.ai" style=" color: #0099b4;    font-size: 1.05em;"&gt;CodeAF: The Open-Source Software Factory for Open Models&lt;/a&gt;&lt;/span&gt; — Instead of juggling a terminal for every agent, get one window for every project. Many models, one session: the right one for each call.&lt;/p&gt;
  &lt;p&gt;AgentField.ai &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #885 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;span&gt;🔎&lt;/span&gt; &lt;a href="https://golangweekly.com/link/190875/rss" title="hister.org" style=" color: #0099b4;    font-size: 1.05em;"&gt;Hister: A Go-Powered Search Engine for Your Own Stuff&lt;/a&gt;&lt;/span&gt; — The &lt;a href="https://golangweekly.com/link/190876/rss" style=" color: #0099b4;   "&gt;creator of SearX&lt;/a&gt; (and &lt;a href="https://golangweekly.com/link/190877/rss" style=" color: #0099b4;   "&gt;Colly&lt;/a&gt;) is back with a self-hosted personal search engine for re-finding your files or pages you’ve visited. &lt;a href="https://golangweekly.com/link/190878/rss" style=" color: #0099b4;   "&gt;GitHub repo&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Adam Tauber &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190879/rss" title="github.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;RobotGo 1.1: Native Cross-Platform GUI Automation&lt;/a&gt;&lt;/span&gt; — Provides an API to control the mouse and keyboard, read the screen, grab screenshots, etc. on macOS, Windows, and Linux.&lt;/p&gt;
  &lt;p&gt;V Caesar et al. &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190880/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;NATS Server 2.15&lt;/a&gt; – High-performance messaging system. There's &lt;a href="https://golangweekly.com/link/190881/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;an upgrade guide&lt;/a&gt; for existing users. JetStream stream moves and scaling are now safer to cancel mid-flight, and streams default to a limit of 1,000 consumers.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190882/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Terratest 2.0&lt;/a&gt; – Write automated tests for your infrastructure code (think Terraform, Kubernetes, Docker, etc). Now split into 16 modules so you only pull in the SDKs you need. (&lt;a href="https://golangweekly.com/link/190883/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Homepage&lt;/a&gt;.)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190884/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;garble 0.18&lt;/a&gt; – A tool to obfuscate Go builds so binaries have &lt;em&gt;"as little information about the original source code as possible"&lt;/em&gt;. Now requires Go 1.27, with 10-15% faster builds.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190885/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;compress 1.20&lt;/a&gt; – Optimized (de)compression packages, now with support for LZW and Microsoft Xpress.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🤖 &lt;a href="https://golangweekly.com/link/190886/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Crush 0.96&lt;/a&gt; – Charm's agentic coding harness now has themes!&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;⭐ And finally…&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://golangweekly.com/link/190887/rss" style=" color: #0099b4;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/j7asalvv3zbqyagi86qq.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190887/rss" title="tinygo.org" style=" color: #0099b4;    font-size: 1.05em;"&gt;The First Official TinyGo Hardware 'Starter Kit'&lt;/a&gt;&lt;/span&gt; — If you want to do some hardware hacking with &lt;a href="https://golangweekly.com/link/190888/rss" style=" color: #0099b4;   "&gt;TinyGo&lt;/a&gt;, this official kit includes a RISC-V board and a variety of modules, along with &lt;a href="https://golangweekly.com/link/190889/rss" style=" color: #0099b4;   "&gt;tutorials&lt;/a&gt; for building stuff with it. If you’ve already got some boards or want to source your own, TinyGo also has a list of &lt;a href="https://golangweekly.com/link/190890/rss" style=" color: #0099b4;   "&gt;recommended&lt;/a&gt; and &lt;a href="https://golangweekly.com/link/190891/rss" style=" color: #0099b4;   "&gt;supported boards&lt;/a&gt; you can use.&lt;/p&gt;
  &lt;p&gt;TinyGo Team and Seeed Studio &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://golangweekly.com/open/619/rss" width="1" height="1" /&gt;</description>
      <pubDate>Fri, 25 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://golangweekly.com/issues/619</guid>
    </item>
    <item>
      <title>A native IDE written in Go goes open source</title>
      <link>https://golangweekly.com/issues/618</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​618 — September 18, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://golangweekly.com/link/190587/rss" style=" color: #0099b4;"&gt;Read the Web Version&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;Go Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://golangweekly.com/link/190549/rss" style=" color: #0099b4;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/pnnbhcamx6v3r9zqepui.jpg" width="640" style="    line-height: 100%;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190549/rss" title="go.dev" style=" color: #0099b4;    font-size: 1.1em; line-height: 1.4em;"&gt;Size-Specialized Memory Allocation in Go 1.27&lt;/a&gt;&lt;/span&gt; — Small allocations (under 80 bytes) are now up to 30% faster, and you can get the benefits just by rebuilding. Learn where the speedup comes from and why 80 bytes was the "sweet spot". Allocation-heavy programs could see a ~1% gain overall.&lt;/p&gt;
  &lt;p&gt;Michael Matloob (The Go Blog) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://golangweekly.com/link/190548/rss" style=" color: #0099b4;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/d4b30fb9.png" width="146" height="110" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190548/rss" title="master.dev" style=" color: #0099b4;    font-size: 1.05em;"&gt;Stay Sharp in the Age of AI&lt;/a&gt;&lt;/span&gt; — Master.dev instructors build at Anthropic, OpenAI, Netflix, Google, and Stripe. Learn from them with hundreds of courses, live workshops, and expanded AI learning paths. &lt;a href="https://golangweekly.com/link/190548/rss" style=" color: #0099b4;   "&gt;New members get $100 off a yearly membership&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Master.dev &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #885 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190550/rss" title="theconsensus.dev" style=" color: #0099b4;    font-size: 1.05em;"&gt;Data Races and the Limits of ThreadSanitizer in C and Go&lt;/a&gt;&lt;/span&gt; — A tour of how ThreadSanitizer (the engine behind race detection in Go) works, and the easily reachable limits where it stops catching real races. Two objects in unrelated &lt;code&gt;sync.Pool&lt;/code&gt;s colliding in Go's 128-slot table is enough to hide a race.&lt;/p&gt;
  &lt;p&gt;Phil Eaton &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;The &lt;a href="https://golangweekly.com/link/190551/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;proposal for cgo without a C toolchain&lt;/a&gt; from last week's issue is progressing, with &lt;a href="https://golangweekly.com/link/190552/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;a CL adding a &lt;code&gt;GOEXPERIMENT&lt;/code&gt;&lt;/a&gt; to trial it ahead of any approval.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The first bare-bones &lt;a href="https://golangweekly.com/link/190553/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;draft Go 1.28 release notes&lt;/a&gt; are available to skim, ahead of the expected February 2027 release.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🔒 The Rust team has put out &lt;a href="https://golangweekly.com/link/190554/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;an alert to maintainers of popular libraries&lt;/a&gt; saying there's an 'ongoing campaign' targeting them in order to compromise their systems. Go is not immune to this, so stay alert.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🇪🇺 &lt;a href="https://golangweekly.com/link/190555/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;GopherCon Europe 2027&lt;/a&gt; has been announced for Berlin next June 14–17.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🇮🇹 &lt;a href="https://golangweekly.com/link/190556/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;GoLab 2026&lt;/a&gt; takes place in Bologna, Italy on November 1–3.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190557/rss" title="frn.sh" style=" color: #0099b4;    font-size: 1.05em;"&gt;A 40ms Go GC Pause Caused by Swap&lt;/a&gt;&lt;/span&gt; — &lt;em&gt;“I’m writing this so you don’t slap your forehead like I almost did when I decided to run swap in production to absorb memory spikes.”&lt;/em&gt;&lt;/p&gt;
  &lt;p&gt;Fernando Simões &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190558/rss" title="www.cloudx.ai" style=" color: #0099b4;    font-size: 1.05em;"&gt;Scaling Go in CI by Replacing &lt;code&gt;actions/setup-go&lt;/code&gt;&lt;/a&gt;&lt;/span&gt; — How GitHub's official &lt;code&gt;actions/setup-go&lt;/code&gt; lets parallel jobs interfere with each other's caches, and why its cache goes stale until you touch &lt;code&gt;go.mod&lt;/code&gt;. CloudX's alternative gives each CI job its own isolated cache.&lt;/p&gt;
  &lt;p&gt;Schwab and Downs (CloudX) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190559/rss" title="agentfield.ai" style=" color: #0099b4;    font-size: 1.05em;"&gt;CodeAF: A New Open-Source Software Factory, Written in Go&lt;/a&gt;&lt;/span&gt; — You direct the work from one window for every project. It splits, runs, tests and merges, and asks only when it must.&lt;/p&gt;
  &lt;p&gt;AgentField.ai &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #885 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://golangweekly.com/link/190560/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;A Million Go Map Entries Take 38MB, Not 16MB&lt;/a&gt; – A look at where the extra bytes go in Go’s Swiss table map implementation and why &lt;code&gt;map[T]struct{}&lt;/code&gt; no longer saves memory over &lt;code&gt;map[T]bool&lt;/code&gt;. &lt;cite&gt;Nazar Boyko&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;▶️ &lt;a href="https://golangweekly.com/link/190561/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Numbers: The Long History Behind Go's Untyped Constants&lt;/a&gt; – A history-heavy talk on how 1960s word sizes gave C its integer literal mess, and why you’ll never see &lt;code&gt;0x80ULL&lt;/code&gt; in Go code. &lt;cite&gt;Dave Cheney&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;▶️ &lt;a href="https://golangweekly.com/link/190562/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Building a Web App with Go and HTMX&lt;/a&gt;  &lt;cite&gt;Haseeb Majid&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;🛠 Code &amp;amp; Tools&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://golangweekly.com/link/190563/rss" style=" color: #0099b4;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/lgpl6n6xo3pcicgxmwjr.jpg" width="640" style="        line-height: 100%;  "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190563/rss" title="rune.build" style=" color: #0099b4;    font-size: 1.05em;"&gt;Rune: A Fast, Native, Open Source IDE Built in Go&lt;/a&gt;&lt;/span&gt; — A GPU-accelerated IDE (&lt;a href="https://golangweekly.com/link/190564/rss" style=" color: #0099b4;   "&gt;shown off here&lt;/a&gt;) that’s now GPLv3 licensed. This post has interesting details on how they got their integrated terminal almost as fast as Alacritty and Ghostty without using cgo for the hot path. &lt;a href="https://golangweekly.com/link/190565/rss" style=" color: #0099b4;   "&gt;GitHub repo&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Ernest Romero Climent &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 Rune is also an interesting case study for using (a fork of) &lt;a href="https://golangweekly.com/link/190566/rss" style=" color: #0099b4; font-weight: 600;"&gt;Ebitengine&lt;/a&gt; for its GPU-powered rendering.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190567/rss" title="github.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;golang-set 3.0: A Simple, Well-Tested, Generic Set Type&lt;/a&gt;&lt;/span&gt; — While a future Go release &lt;a href="https://golangweekly.com/link/190588/rss" style=" color: #0099b4;   "&gt;&lt;em&gt;might&lt;/em&gt;&lt;/a&gt; be adding &lt;a href="https://golangweekly.com/link/190568/rss" style=" color: #0099b4;   "&gt;a generic set type&lt;/a&gt;, this is a mature option for now. &lt;a href="https://golangweekly.com/link/190569/rss" style=" color: #0099b4;   "&gt;v3.0&lt;/a&gt; improves performance, adds &lt;a href="https://golangweekly.com/link/190570/rss" style=" color: #0099b4;   "&gt;Filter&lt;/a&gt; and &lt;a href="https://golangweekly.com/link/190571/rss" style=" color: #0099b4;   "&gt;AppendFrom&lt;/a&gt; methods, and removes Mongo BSON support.&lt;/p&gt;
  &lt;p&gt;Ralph Caraveo &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190572/rss" title="github.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;wasm2go: Translate WebAssembly Binaries into Go Code&lt;/a&gt;&lt;/span&gt; — A compiler to translate WASM binaries into a standalone Go package, so you can ship, say, a C library built with the WASI SDK inside a Go app without the added weight of a WASM engine.&lt;/p&gt;
  &lt;p&gt;Masaaki Goshima &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 If 'wasm2go' sounds familiar, there's also &lt;a href="https://golangweekly.com/link/190573/rss" style=" color: #0099b4; font-weight: 600;"&gt;&lt;code&gt;ncruces/wasm2go&lt;/code&gt;&lt;/a&gt; which powers the cgo-free &lt;a href="https://golangweekly.com/link/190574/rss" style=" color: #0099b4; font-weight: 600;"&gt;go-sqlite3&lt;/a&gt;. The key difference is &lt;code&gt;ncruces/wasm2go&lt;/code&gt; emits pure Go, while &lt;code&gt;goccy&lt;/code&gt;'s also generates amd64 and arm64 assembly.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190575/rss" title="goht.dev" style=" color: #0099b4;    font-size: 1.05em;"&gt;GoHT: Haml, Slim and EGO Template Engine for Go&lt;/a&gt;&lt;/span&gt; — Write templates alongside normal Go code. Use &lt;code&gt;@haml&lt;/code&gt;, &lt;code&gt;@slim&lt;/code&gt;, or &lt;code&gt;@ego&lt;/code&gt; blocks in a &lt;code&gt;.goht&lt;/code&gt; file, then run the generator to produce HTML-rendering Go functions.&lt;/p&gt;
  &lt;p&gt;Michael Stack &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📰 Classifieds&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190576/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Software Engineer&lt;/a&gt; - Join our "kick ass" team! Our software team operates from 17 countries and we're looking for more exceptional engineers to join our team.&lt;/p&gt;
 
&lt;p&gt;🐘 Since many Go backends end up talking to Postgres, you may also like our sibling newsletter: &lt;a href="https://golangweekly.com/link/190577/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Postgres Weekly&lt;/a&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190578/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;str2duration 2.2&lt;/a&gt; – Get a &lt;code&gt;time.Duration&lt;/code&gt; from a string like &lt;code&gt;1h&lt;/code&gt; or &lt;code&gt;1w2d3s&lt;/code&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190579/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;html2text 1.5&lt;/a&gt; – Convert HTML to plain text with no dependencies.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190580/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Goldmark 2.1&lt;/a&gt; – Popular Markdown parser and rendering library.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;✉️ &lt;a href="https://golangweekly.com/link/190581/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;enmime 2.5&lt;/a&gt; – MIME mail encoding and decoding package.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190582/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;gRPC-Go 1.84.0&lt;/a&gt; – High perf gRPC framework.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190583/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;go-diff 0.9&lt;/a&gt; – &lt;code&gt;diff&lt;/code&gt; parser and printing library.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://golangweekly.com/open/618/rss" width="1" height="1" /&gt;</description>
      <pubDate>Fri, 18 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://golangweekly.com/issues/618</guid>
    </item>
    <item>
      <title>Building cgo code without a C compiler?</title>
      <link>https://golangweekly.com/issues/617</link>
      <description>

  

    
    
    
  




&lt;table border=0 cellpadding=0 cellspacing=0 align="center" border="0"&gt;
  &lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;div&gt;    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;
&lt;td align="left" style="padding-left: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;#​617 — September 11, 2026&lt;/p&gt;&lt;/td&gt;
&lt;td align="right" style="padding-right: 4px; font-size: 15px; line-height: 1.48em;"&gt;&lt;p&gt;&lt;a href="https://golangweekly.com/link/190306/rss" style=" color: #0099b4;"&gt;Read the Web Version&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
    
    &lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0 12px;"&gt;&lt;p&gt;Go Weekly&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://golangweekly.com/link/190268/rss" style=" color: #0099b4;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/sikfzyvz9e4ceuxex7f0.jpg" width="640" style="    line-height: 100%;    "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190268/rss" title="github.com" style=" color: #0099b4;    font-size: 1.1em; line-height: 1.4em;"&gt;Could Go Build cgo Packages &lt;em&gt;Without&lt;/em&gt; a C Compiler?&lt;/a&gt;&lt;/span&gt; — Cross-compiling with &lt;code&gt;import "C"&lt;/code&gt; can be painful as it needs a C toolchain. This proposal would let packages that only call pre-built C libraries describe the interface in annotated Go files, so anyone building the package wouldn't need a C compiler.&lt;/p&gt;
  &lt;p&gt;Matloob, Mui, et al. (Go Team) &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 Another approach is to skip cgo entirely, which the SIMD and Ebitengine items later in this issue do in two quite different ways…&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  &lt;a href="https://golangweekly.com/link/190267/rss" style=" color: #0099b4;   "&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/6c0d0d51.png" width="110" height="110" style="padding-top: 12px; padding-left: 12px;     line-height: 100%; "&gt;&lt;/a&gt;
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190267/rss" title="threedots.tech" style=" color: #0099b4;    font-size: 1.05em;"&gt;Become a Confident Go Backend Engineer&lt;/a&gt;&lt;/span&gt; — Build a production-grade Go backend and learn by coding. Practice the skills you need to guide your AI coding agents. Hands-on online training from the authors of Watermill. Opens in the coming weeks. &lt;a href="https://golangweekly.com/link/190267/rss" style=" color: #0099b4;   "&gt;Join the waitlist&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;Three Dots Labs &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #885 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190269/rss" title="michael.stapelberg.ch" style=" color: #0099b4;    font-size: 1.05em;"&gt;How Debian Code Search Got Fast TurboPFor in Pure Go with SIMD&lt;/a&gt;&lt;/span&gt; — One for performance fans! A detailed write-up of using Go’s experimental &lt;a href="https://golangweekly.com/link/190270/rss" style=" color: #0099b4;   "&gt;&lt;code&gt;simd/archsimd&lt;/code&gt; package&lt;/a&gt; to replace a C library with native Go that runs &lt;em&gt;faster&lt;/em&gt;. Covers PGO surprises, generics for compile-time specialization, AVX2/AVX512 kernels, and more.&lt;/p&gt;
  &lt;p&gt;Michael Stapelberg &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;&lt;strong&gt;IN BRIEF:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;🎉 JetBrains recently held a Go 1.27 'release party' featuring some of the Go team. &lt;a href="https://golangweekly.com/link/190271/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;▶️ Watch the recording here&lt;/a&gt;, including Robert Griesemer who explains why generic methods took so long to arrive.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Long-time contributor &lt;code&gt;thepudds&lt;/code&gt; (a.k.a. PJ) has &lt;a href="https://golangweekly.com/link/190272/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;joined the core Go team&lt;/a&gt;. Russ Cox is a fan, &lt;a href="https://golangweekly.com/link/190273/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;saying&lt;/a&gt; &lt;em&gt;"What a great hire for the Go team."&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Go 1.28 seems likely to &lt;a href="https://golangweekly.com/link/190307/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;reject &lt;code&gt;string(x)&lt;/code&gt; for integers&lt;/a&gt; other than &lt;code&gt;byte&lt;/code&gt; or &lt;code&gt;rune&lt;/code&gt;, in line with &lt;code&gt;go vet&lt;/code&gt;'s warnings. (Rob Pike proposed this 14 years ago!)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Jake Bailey has &lt;a href="https://golangweekly.com/link/190308/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;some CLs in review&lt;/a&gt; to make &lt;code&gt;encoding/json/v2&lt;/code&gt; marshal slices ~4% faster than v1, after Daniel Lemire &lt;a href="https://golangweekly.com/link/190276/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;found it 1.5x slower&lt;/a&gt; recently.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;span&gt;🕹️&lt;/span&gt; &lt;a href="https://golangweekly.com/link/190277/rss" title="ebitengine.org" style=" color: #0099b4;    font-size: 1.05em;"&gt;Ebitengine 2.10: Now Pure Go on Desktop Platforms&lt;/a&gt;&lt;/span&gt; — After years of effort, the popular 2D game engine no longer needs cgo on macOS, Linux or BSD (joining Windows in this regard) so cross-compilation is a lot easier. There’s also a new ability to run apps as a controllable guest process, either headlessly for testing or embedded into other apps.&lt;/p&gt;
  &lt;p&gt;Hajime Hoshi &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;&lt;p&gt;💡 The cgo-free approach is made possible by &lt;a href="https://golangweekly.com/link/190278/rss" style=" color: #0099b4; font-weight: 600;"&gt;purego&lt;/a&gt;, the Ebitengine team's library for calling C functions from Go without cgo.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190279/rss" title="agentfield.ai" style=" color: #0099b4;    font-size: 1.05em;"&gt;Open Source Hits Frontier-Level Code Review at a Tenth of the Cost&lt;/a&gt;&lt;/span&gt; — PR-AF places #2 of 42 on Martian's Code-Review-Bench. Verified findings only, self-hosted, any open model.&lt;/p&gt;
  &lt;p&gt;AgentField.ai &lt;span style="text-transform: uppercase; margin-left: 4px; font-size: 0.9em;   color: #885 !important; padding: 1px 4px; "&gt;sponsor&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;📄 &lt;a href="https://golangweekly.com/link/190280/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Four Ways to Do Super Fast Packet Processing in Go&lt;/a&gt; – &lt;code&gt;AF_PACKET&lt;/code&gt;, &lt;code&gt;AF_XDP&lt;/code&gt;, DPDK and Mellanox Direct Verbs compared, with real throughput numbers, and a library wrapping them. &lt;cite&gt;Andree Toonk&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://golangweekly.com/link/190281/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Sloc Cloc and Code: Did I Just Get Buster Scrugged?&lt;/a&gt; – A tale of profiling &lt;code&gt;scc&lt;/code&gt; after a Rust rival counted code 2.5x faster, and winning back the lead. &lt;cite&gt;Ben Boyter&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://golangweekly.com/link/190282/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Implementing Type Contracts via Mutually Referencing Type Parameters&lt;/a&gt; &lt;cite&gt;Nick Tobey (DoltHub)&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://golangweekly.com/link/190283/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;I Contributed to Go: Here's How You Can Too&lt;/a&gt;  &lt;cite&gt;Alex Pliutau&lt;/cite&gt;&lt;/p&gt;
&lt;p&gt;📄 &lt;a href="https://golangweekly.com/link/190284/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;The 14-Year Road to &lt;code&gt;encoding/json/v2&lt;/code&gt;&lt;/a&gt;  &lt;cite&gt;Yoshi Yamaguchi&lt;/cite&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0;"&gt;&lt;p&gt;🛠 Code &amp;amp; Tools&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em;"&gt;
  &lt;a href="https://golangweekly.com/link/190285/rss" style=" color: #0099b4;"&gt;&lt;img src="https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/qmxlcjnrm6onbcvhz7re.jpg" width="640" style="    line-height: 100%;      "&gt;&lt;/a&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190285/rss" title="github.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;gomodjail 2.0: An Experimental Jail for Go Modules&lt;/a&gt;&lt;/span&gt; — From the creator of &lt;a href="https://golangweekly.com/link/190286/rss" style=" color: #0099b4;   "&gt;Lima&lt;/a&gt; comes an interesting way to confine Go dependencies: mark a module with a comment in &lt;code&gt;go.mod&lt;/code&gt; and a &lt;code&gt;gomodjail analyze&lt;/code&gt; check fails if it can reach the filesystem, network, raw syscalls, etc.&lt;/p&gt;
  &lt;p&gt;Akihiro Suda &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190287/rss" title="github.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;VHS 0.12: The 'Home Video Recorder' for Your CLI&lt;/a&gt;&lt;/span&gt; — A tool and scripting language for performing actions on the terminal that get recorded into an animated GIF, MP4, WebM, or PNG frames. Great for demos or tutorials. &lt;a href="https://golangweekly.com/link/190288/rss" style=" color: #0099b4;   "&gt;v0.12.0&lt;/a&gt; lets you size the output by rows and columns (instead of just pixels).&lt;/p&gt;
  &lt;p&gt;Charm &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;span&gt;🤖&lt;/span&gt; &lt;a href="https://golangweekly.com/link/190289/rss" title="yzma.ai" style=" color: #0099b4;    font-size: 1.05em;"&gt;yzma 1.26: Local LLM Inference from Go, Now in the Browser&lt;/a&gt;&lt;/span&gt; — Run vision and language models from Go through &lt;code&gt;llama.cpp&lt;/code&gt; with no cgo required (thanks to &lt;code&gt;purego&lt;/code&gt; and &lt;code&gt;ffi&lt;/code&gt;). Notably, &lt;a href="https://golangweekly.com/link/190290/rss" style=" color: #0099b4;   "&gt;v1.26.0&lt;/a&gt; adds WebAssembly support, so a TinyGo build can &lt;a href="https://golangweekly.com/link/190291/rss" style=" color: #0099b4;   "&gt;run inference directly on a web page&lt;/a&gt;.&lt;/p&gt;
  &lt;p&gt;The Hybrid Group &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
  
  &lt;p&gt;&lt;span style="font-weight: 600; font-size: 1.2em !important; color: #000;"&gt;&lt;a href="https://golangweekly.com/link/190292/rss" title="github.com" style=" color: #0099b4;    font-size: 1.05em;"&gt;go-oracledb: An Official Pure Go Driver for &lt;em&gt;Oracle Database&lt;/em&gt;&lt;/a&gt;&lt;/span&gt; — It's beta for now, but interesting to see an official Go client from Oracle. The established third party options are &lt;a href="https://golangweekly.com/link/190293/rss" style=" color: #0099b4;   "&gt;go-ora&lt;/a&gt; (also pure Go) and &lt;a href="https://golangweekly.com/link/190294/rss" style=" color: #0099b4;   "&gt;godror&lt;/a&gt; (which uses Oracle’s client libraries via cgo).&lt;/p&gt;
  &lt;p&gt;Oracle &lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px;"&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;

&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
	&lt;p&gt;📰 Classifieds&lt;/p&gt;
  &lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;p&gt;Your Go stack is minimal. Your data layer can be too. &lt;a href="https://golangweekly.com/link/190295/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;TimescaleDB&lt;/a&gt; extends Postgres for metrics and analytics. &lt;a href="https://golangweekly.com/link/190295/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Get $1000 credit&lt;/a&gt;.&lt;/p&gt;
 
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190296/rss" style=" color: #0099b4; font-weight: 500 !important;"&gt;Software Engineer&lt;/a&gt; - Join our "kick ass" team! Our software team operates from 17 countries and we're looking for more exceptional engineers to join our team.&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style="font-size: 15px; line-height: 1.48em; padding: 0px 15px;"&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;🔊 &lt;a href="https://golangweekly.com/link/190297/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;Oto 3.5&lt;/a&gt; – Library to play audio on multiple platforms. Used by Ebitengine, it's now cgo-free on Linux and BSD using PulseAudio, with an ALSA fallback.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190298/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;gofumpt 0.12&lt;/a&gt; – Stricter formatter for Go that enforces additional rules beyond &lt;code&gt;gofmt&lt;/code&gt;. Now based on Go 1.27's &lt;code&gt;gofmt&lt;/code&gt; but works on Go 1.26 and up.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190299/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;go-tui 0.20&lt;/a&gt; – Build declarative terminal UIs with a React-inspired approach.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190300/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;workers-go 0.35&lt;/a&gt; – Run HTTP servers written in Go on Cloudflare Workers.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;🌐 &lt;a href="https://golangweekly.com/link/190301/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;TZF 2.0&lt;/a&gt; – Fast timezone finder from lat/long coordinates.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://golangweekly.com/link/190302/rss" style=" color: #0099b4; font-weight: 500 !important;   "&gt;go-brrr 1.1&lt;/a&gt; – Pure Go Brotli compression/decompression.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0&gt;&lt;tr&gt;&lt;td style=" font-size: 15px; line-height: 1.48em;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
  &lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;




&lt;img src="https://golangweekly.com/open/617/rss" width="1" height="1" /&gt;</description>
      <pubDate>Fri, 11 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://golangweekly.com/issues/617</guid>
    </item>
  </channel>
</rss>
