The Racket team released version 9.2 of the Racket programming language on May 29, 2026. The release includes breaking changes to the match form, which now enforces equality checks for non-linear patterns and rejects mismatched uses of ellipsis. Typed Racket's asin and acos types are fixed to correctly handle complex number outputs, potentially breaking existing code at compile time. The release also adopts Unicode 17.0 for character and string operations, and introduces a new #%foreign-inline core syntactic form for unsafe low-level access. Other changes include improvements to Scribble documentation, terminal file position counting, and cross-phase persistent modules.
racket 9.2 is out, and it's got some breaking changes. match now checks that non-linear patterns actually match, which might break your code. typed racket fixed asin/acos types for complex numbers, also potentially breaking. unicode 17.0 is in. there's a new unsafe #%foreign-inline form. scribble docs get better defaults. lots of other fixes.
Racket v9.2 represents a significant maintenance release that tightens correctness in pattern matching and type safety, at the cost of breaking changes. The adoption of Unicode 17.0 keeps Racket current with the latest character standards. The introduction of #%foreign-inline signals ongoing work on a more static foreign interface (ffi2), which could improve performance and safety for low-level code. For the Racket community, upgrading will require attention to match patterns and Typed Racket code that may now fail.
racket 9.2 is a solid update that fixes some long-standing soundness issues, but it'll break some code. the unicode 17.0 bump is nice. the new #%foreign-inline is a peek at future ffi improvements. if you use typed racket or complex match patterns, you'll want to test carefully.
Public story text does not change until an admin approves it.
Looped stories are not disposable posts: receipts, claims, reader checks, and moderator decisions can change the approved version over time.