Breaking changes
- BREAKING: Use
chacha8randas the default RNG.
The old default generator is available under core:math/rand in rand_pcg.odin in case you require a seed to return the same sequence as before.
New Language Features
- Introduce
#all_or_nonefor structs, which requires that struct literals have all or none of the fields set
New Compiler Improvements
- Use SIP hash as name canonicalization hash
- Moved checking of
-vet-unused-proceduresand-vet-packagesflags to after all flags are parsed - Fixes for 32 bit with regards to typeid
- Fix #5894
- Remove
#no_copy - Don't check proc signature similarity for imported Objective-C methods
- Ubuntu arm ci and posix fixes
- Fix allocation of anonymous globals
- Fix #5967: Incorrect stack overflow warning for by ref switches over unions
- Skip collision panic when package names aren't unique
New Packages
- Add
vendor:curl
Package Improvements
- Improve docs for stable sort procedures
- Fix:
linalg.quaternion_from_forward_and_up - Clone unquoted strings in
encoding/json - Add missing
SetLayeredWindowAttributes - Add io uring API
- Add
FreeLibraryAndExitThreadin kernel32. AddEnumProcessModulesin psapi - Fix typo in
NS.String_initWithCString - Remove the Darwin-specific paths from
thread_unix - Fix
thread_act_tsize - Fix: make
choice_bit_setrespectbit_setdomain math/rand: Add range-based number generation procedures- Fix
is_pointer_internallynot handling Named Types - Faster
big.itoa - Add Xoshiro256 RNG
- Add
LockFileEx/UnlockFileExand related flags - Fix
vendor:stb/imageresizealpha_channelparameter type toc.int - Move some OS
General_Errorvalues toio.Error - Fix out of bounds access when parsing end_pos
- Add
WSASendToandWSARecvFrom - Update
d3d12bindings forD3D12_FEATURE_D3D12_TIGHT_ALIGNMENT - Add
NSWindowcoordinate space conversion bindings - Don't build log allocator file on freestanding targets
- Adjust docs links for satellite SDL libraries
- Increase
base64decoding table size to 256, preventing out of bounds reads vendor/xlib: a few more IM-related procedures and constants- add
math.signandmath.sign_bitoverloads for int types - Implement more Linux syscalls
- Add
SIO_UDP_CONNRESETwinsock constant os2.File_Stream
Other
- Fix up macOS CI
Full Changelog: dev-2025-11...dev-2025-12