Last release today
01 Sep 2026
Release timing varies
gaps range from 8 days to 2 months
Rarely documented
notes for 2 of 26 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
310 releases · first in 2022
Release timeline
310 releases since 2022One column per quarter.
Releases
- v0.11.01 Sept 2026
Release notes
Open source →- Require Go 1.25 or later (#469)
- Support structs on Windows amd64/arm64, Android, iOS, loong64, and ppc64le (#237, #466, #473, #475)
- Support structs as arguments and return values in callbacks (#225, #418)
- Add NetBSD (amd64, arm64) as a Tier 2 platform (#349)
- Support the ARM soft-float ABI (#490)
- Support linux/s390x without Cgo (#422)
- Support up to 32 arguments on 64-bit platforms (#425)
- Add
cstrings.NSStringToString(#438) - Fix some bugs
- v0.11.0-alpha.1130 Aug 2026pre-release
Release notes
Open source →Go 1.27's go fix rewrites constructs that newer standard library APIs
express better. Running it over every GOOS/GOARCH this module builds
for turns up three sites, all mechanical:compareStatus walks the lines of a /proc status file, so the slice
from strings.Split only exists to be ranged over; SplitSeq yields the
same lines without materializing it. The same function sorts a field
list with sort.Slice and a less function that is plain string
comparison, which is what slices.Sort does for an ordered element
type.NewCallback asks whether an argument is assignable to CDecl, a type
known at compile time, so reflect.TypeFor names it directly instead of
building a value to take the type of.The cgo-enabled cross builds could not be analyzed on the machine this
ran on, which has no cross C toolchain; darwin/amd64 and darwin/arm64
with cgo were covered and reported nothing.Co-authored-by: Claude Opus 5 [email protected]
- v0.11.0-alpha.1026 Aug 2026pre-release
Release notes
Open source →Go 1.23 added structs.HostLayout, a zero-sized marker field that tells
the compiler a struct must be laid out the way the host's C ABI expects
rather than by Go's own rules. Until now purego relied on Go's current
layout happening to match C.Declare the marker on every struct that stands in for a C one: objc_super,
MethodDescription, PropertyAttribute, blockDescriptor and blockLayout in
package objc; G, ThreadStart, the Darwin pthread types, the NetBSD stack_t
and argset in internal/fakecgo; syscallArgs, which internal/cgo hands to C
as a struct syscallArgs; the window example's NSPoint/NSSize/NSRect and
WNDCLASSEX/RECT/POINT/MSG; and the C-representative structs in the tests.
Structs that never cross into C, such as MethodDef, FieldDef and the
callback argument block filled in by Go assembly, are left alone.The marker field is zero-sized, so it takes no part in the C ABI. Teach
the argument classification to skip zero-sized fields, otherwise a struct
that declares it is misclassified: isAllSameFloat would panic descending
into the marker, isHFA/isHVA would stop recognizing homogeneous
aggregates, and objc's @encode would emit the marker as a member.Closes #259
Co-Authored-By: Claude Opus 5 [email protected]
- v0.11.0-alpha.9.0.20260824124142-a66c0b0d411924 Aug 2026pre-release
Nothing published for this version
- v0.11.0-alpha.9.0.20260820171431-f2f42023699c20 Aug 2026pre-release
Nothing published for this version
- v0.11.0-alpha.9.0.20260820124626-7d5f4c2e15e220 Aug 2026pre-release
Nothing published for this version
- v0.11.0-alpha.912 Aug 2026pre-release
Release notes
Open source →- Pull runtime variable 'goarmsoftfp' to detect if soft-float ABI is used.
- Assembly trampolines skips load/store to FP registers if soft-float is detected. This was implemented in exactly same way how it's done in Go runtime.
- Apply integer passing rules for float arguments/return values.
- Run tests for GOARM=5 (no FPU) in test workflow and add some arm-specific test cases.
Closes #490
Co-authored-by: Hirador [email protected]
- v0.11.0-alpha.8.0.20260812182835-f9d41fc60f1f12 Aug 2026pre-release
Nothing published for this version
- v0.11.0-alpha.8.0.20260731131058-077e9d53635a31 Jul 2026pre-release
Nothing published for this version
- v0.11.0-alpha.818 Jul 2026pre-release
- v0.11.0-alpha.7.0.20260718133429-d476432ce7e318 Jul 2026pre-release
Nothing published for this version
- v0.11.0-alpha.715 Jul 2026pre-release
Release notes
Open source →Pass and return structs by value when calling C functions under the
ELFv2 ABI: a homogeneous floating-point aggregate is passed and returned
in the floating-point registers whatever its size, any other aggregate
occupies successive doublewords in the general-purpose registers and the
parameter save area, and a non-homogeneous aggregate larger than two
doublewords is returned through a caller-allocated buffer. Scalar float32
arguments are passed in double-precision format, matching the FMOVD-based
convention already used for float32 struct members and float returns;
reading float32 callback arguments does the inverse conversion.Widen structReturnInMemory to take the return type rather than its size,
so ppc64le can keep a homogeneous floating-point aggregate in registers
regardless of size while every other architecture keeps its size-only
rule.Struct arguments and returns in callbacks remain unsupported, as on the
other non-amd64/arm64 architectures. Aggregates that need more than eight
floating-point argument registers, and functions taking mixed scalar
floating-point and integer arguments, are not yet handled; the latter
needs the ELFv2 general-purpose register shadowing that purego does not
model for scalar arguments.Updates #474
Co-authored-by: Claude Opus 4.8 [email protected]
- v0.11.0-alpha.6.0.20260715033526-b1a632f0cddd15 Jul 2026pre-release
Nothing published for this version
- v0.11.0-alpha.6.0.20260707033313-5f49e7c493227 Jul 2026pre-release
Nothing published for this version
- v0.11.0-alpha.62 Jul 2026pre-release
- v0.11.0-alpha.5.0.20260628032533-5da538943ca728 Jun 2026pre-release
Nothing published for this version
- v0.11.0-alpha.5.0.20260623093025-80e859bc940523 Jun 2026pre-release
Nothing published for this version
- v0.11.0-alpha.5.0.20260623031325-3c869562eaac23 Jun 2026pre-release
Nothing published for this version
- v0.11.0-alpha.5.0.20260620042951-7e974822390220 Jun 2026pre-release
Nothing published for this version
- v0.11.0-alpha.516 Jun 2026pre-release
Nothing published for this version
- v0.11.0-alpha.44 Jun 2026pre-release
Release notes
Open source →Revert the sync.Pool removal #452 and copy syscall.a1 into a local variable
before taking its address, so the reflect.Value points to an independent location
that is not affected by pool recycling.Updates #451
- v0.11.0-alpha.3.0.20260604015905-d339eb0fd4d34 Jun 2026pre-release
Nothing published for this version
- v0.11.0-alpha.3.0.20260527130708-1512f327e99527 May 2026pre-release
Nothing published for this version
- v0.11.0-alpha.324 May 2026pre-release
Nothing published for this version
- v0.11.0-alpha.2.0.20260509185937-f8849c8c937f9 May 2026pre-release
Nothing published for this version
- v0.11.0-alpha.230 Apr 2026pre-release
Nothing published for this version
- v0.11.0-alpha.1.0.20260430031838-fa49e74b007530 Apr 2026pre-release
Nothing published for this version
- v0.11.0-alpha.1.0.20260318130922-386f7c8fb54918 Mar 2026pre-release
Nothing published for this version
- v0.11.0-alpha.115 Mar 2026pre-release
Nothing published for this version
- v0.11.0-alpha.0.20260311152936-1a798da253eb11 Mar 2026pre-release
Nothing published for this version
- v0.11.0-alpha.0.20260306142555-90bb24e75b1f6 Mar 2026pre-release
Nothing published for this version
- v0.11.0-alpha.0.20260304101746-6e7b9347ed414 Mar 2026pre-release
Nothing published for this version
- v0.11.0-alpha.0.20260302043122-012b8c419e2d2 Mar 2026pre-release
Nothing published for this version
- v0.11.0-alpha23 Feb 2026pre-release
Nothing published for this version
- v0.10.218 Jul 2026
- v0.10.124 May 2026
Nothing published for this version
- v0.10.023 Feb 2026
Nothing published for this version
- v0.10.0-alpha.516 Feb 2026pre-release
Nothing published for this version
- v0.10.0-alpha.4.0.20260216092340-585a4c52746416 Feb 2026pre-release
Nothing published for this version
- v0.10.0-alpha.4.0.20260214141004-d8dcb88add9014 Feb 2026pre-release
Nothing published for this version
- v0.10.0-alpha.4.0.20260212124526-587d406ac10412 Feb 2026pre-release
Nothing published for this version
- v0.10.0-alpha.4.0.20260207193126-2fe737a44c717 Feb 2026pre-release
Nothing published for this version
- v0.10.0-alpha.430 Jan 2026pre-release
Nothing published for this version
- v0.10.0-alpha.3.0.20260130031131-49bede11a66030 Jan 2026pre-release
Nothing published for this version
- v0.10.0-alpha.3.0.20260115160133-57859678ab7215 Jan 2026pre-release
Nothing published for this version
- v0.10.0-alpha.3.0.20260102153238-200df6041cff2 Jan 2026pre-release
Nothing published for this version
- v0.10.0-alpha.3.0.20251231181614-6b665882fe5431 Dec 2025pre-release
Nothing published for this version
- v0.10.0-alpha.3.0.20251218151152-f6151bf170c618 Dec 2025pre-release
Nothing published for this version
- v0.10.0-alpha.3.0.20251202024657-a031f60607152 Dec 2025pre-release
Nothing published for this version
- v0.10.0-alpha.331 Oct 2025pre-release
Nothing published for this version
- v0.10.0-alpha.2.0.20251031180950-25e25ad2aab131 Oct 2025pre-release
Nothing published for this version
- v0.10.0-alpha.2.0.20251029144411-1bb446066e9929 Oct 2025pre-release
Nothing published for this version
- v0.10.0-alpha.2.0.20251027033332-4956991301fb27 Oct 2025pre-release
Nothing published for this version
- v0.10.0-alpha.2.0.20251016195808-4ad96f670df516 Oct 2025pre-release
Nothing published for this version
- v0.10.0-alpha.2.0.20251008125647-8e5400e7a1c38 Oct 2025pre-release
Nothing published for this version
- v0.10.0-alpha.230 Sept 2025pre-release
Nothing published for this version
- v0.10.0-alpha.1.0.20250930153339-73cecc9f412730 Sept 2025pre-release
Nothing published for this version
- v0.10.0-alpha.123 Sept 2025pre-release
Nothing published for this version
- v0.10.0-alpha20 Sept 2025pre-release
Nothing published for this version
- v0.9.131 Oct 2025
Nothing published for this version