Skip to content

chore: release v0.0.4 - #3

Open
MagicalTux wants to merge 1 commit into
masterfrom
release-plz-2026-10-04T08-05-10Z
Open

MagicalTux wants to merge 1 commit into
masterfrom
release-plz-2026-10-04T08-05-10Z

Conversation

@MagicalTux

@MagicalTux MagicalTux commented Oct 4, 2026 •

Copy link
Copy Markdown
Member

🤖 New release

  • rustygo: 0.0.3 -> 0.0.4 (⚠ API breaking changes)

⚠ rustygo breaking changes

--- failure constructible_struct_adds_field: struct exhaustively constructible through public API adds field ---

Description:
A pub struct that could be exhaustively constructed with a literal using only public API has a new pub field, breaking existing exhaustive literals.
        ref: https://doc.rust-lang.org/reference/expressions/struct-expr.html
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.51.0/src/lints/constructible_struct_adds_field.ron

Failed in:
  field TypeDesc.make_slice in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:99
  field TypeDesc.ptr in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:111
  field TypeDesc.arrays in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:122
  field TypeDesc.chan_dir in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:131
  field TypeDesc.chan_ops in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:139
  field TypeDesc.make_func in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:155
  field TypeDesc.make_slice in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:99
  field TypeDesc.ptr in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:111
  field TypeDesc.arrays in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:122
  field TypeDesc.chan_dir in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:131
  field TypeDesc.chan_ops in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:139
  field TypeDesc.make_func in /tmp/.tmp8j2CBy/rustygo/src/iface.rs:155

--- failure inherent_method_missing: pub method removed or renamed ---

Description:
A publicly-visible method or associated fn is no longer available under its prior name. It may have been renamed or removed entirely.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.51.0/src/lints/inherent_method_missing.ron

Failed in:
  Chan::can_recv, previously in file /tmp/.tmpaLR4Bl/rustygo/src/chan.rs:279
  Chan::can_send, previously in file /tmp/.tmpaLR4Bl/rustygo/src/chan.rs:288
  Chan::can_recv, previously in file /tmp/.tmpaLR4Bl/rustygo/src/chan.rs:279
  Chan::can_send, previously in file /tmp/.tmpaLR4Bl/rustygo/src/chan.rs:288
Changelog

0.0.4 - 2026-10-07

Other

  • CI has been red since October 4th, and this is why
  • The M:N scheduler, landing at one worker
  • What more than one worker gets wrong is memory, not a context
  • The parallel program runs at the GOMAXPROCS it is given
  • The roadmap says what more than one worker still gets wrong
  • reflect's TryRecv had the race select had
  • One worker by default, and what is known about why
  • A collector that loses a race was still holding its roots on its thread
  • Two workers by default, until three stop corrupting a context
  • Which goroutine is leaving is the scheduler's to say, not the caller's
  • Stopping the world, and GOMAXPROCS at the number of CPUs
  • Goroutines on worker threads, and a park that cannot lose a wakeup
  • Runtime state that belongs to a thread, and state that belongs to the program
  • 74 programs, and the whole set passes under torture as well as plainly
  • reflect.ArrayOf, answered from the arrays a program already has
  • A struct holding a func value does not have gc's layout
  • The standard descriptors, closed by their own finalizers
  • 127 of Go's own tests, with recover.go whole
  • recover sees through the frames that stand in for a deferred call
  • The missing descriptor that is not missing
  • A timer that must fire while a goroutine spins, not only while it parks
  • HTTP/2, and what the BoGo suite says
  • What crypto's own tests say, and the two things crypto/tls still trips on
  • HTTP/2 over TLS, and large bodies with it
  • The clock syscall reads directly, and the bridge into libc it never crosses
  • reflect.MakeFunc, which is Value.Call run backwards
  • A named map or channel that contains itself, through the same name
  • A pointer the collector cannot see, because it became an integer
  • The metrics and the GC statistics the collector can actually answer
  • Why an allocation test fails, now that it has been measured
  • gRPC, protobuf, Prometheus and pgx compile, so the table should say so
  • The three tables, measured on this tree instead of three trees ago
  • What the threaded scheduler found before it found its own bug
  • A map lookup keyed on bytes does not need the string either
  • One copy where string and []byte conversions made two
  • The HTTPS program makes its own certificate
  • The runtime hooks that each stopped one package building
  • A named func type that returns itself
  • one document for the packages a sweep had time for and the rest
  • noasm, which is what libraries outside the standard library call purego
  • which failures to count apart is the report's judgement, not the sweep's
  • What the front page claims, brought back to what is true
  • One conversion, nine comparisons, and none of them made a string
  • Where the allocations rustygo makes and gc does not actually are
  • How a program outside the standard library reaches the kernel
  • Comparing bytes as a string without making the string
  • The types reflect can be asked to make, and the one it can make
  • Channels through reflection, and what a type says about ranging
  • What the compiler can express, measured for the whole library at once
  • measure what cannot be built, and in what order to fix it
  • Sleep gives up the processor however short it is
  • A read deadline is a moment, and it was being read as a duration
  • A differential program for the file layer
  • $GODEBUG reaches the standard library, and SIGSYS can be ignored
  • A tick says when it was due, a reset does not queue a timer twice, and a
  • A goroutine that only makes system calls lets the others run
  • A loop that does not wait for rustc
  • The same system call on every thread, where there is one
  • Signals reach Go, and a broken standard output ends the program
  • What os, time and net/url could not even type-check
  • The FIPS module's XOR, under Rust's rules about alignment
  • A big array is filled in place, not built on the stack first
  • HTTPS, end to end, in one process
  • A run cap that a TLS handshake fits inside under GC torture
  • encoding/json passes its own test suite
  • A named type that contains itself
  • Do not commit the worktrees agents work in
  • Build one package at a time
  • Goexit through a frame that defers, and a test binary's own directory


This PR was generated with release-plz.

@MagicalTux
MagicalTux force-pushed the release-plz-2026-10-04T08-05-10Z branch 28 times, most recently from b53d9e7 to 60dadf0 Compare October 6, 2026 14:11
@MagicalTux
MagicalTux force-pushed the release-plz-2026-10-04T08-05-10Z branch from 60dadf0 to 47347a7 Compare October 7, 2026 19:50
@MagicalTux
MagicalTux force-pushed the release-plz-2026-10-04T08-05-10Z branch from 60dadf0 to 47347a7 Compare October 7, 2026 19:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant