Releases: odin-lang/Odin
dev-2026-05
New Language Features
- Native Array Casting Semantics, e.g.
cast([4]f32)4x_u32(PR #6605) - Increase
matrixlimit from 16 to 64 elements, allowing for up tomatrix[8, 8]T
New Compiler Improvements
- Add -debug default behavior usage docs (PR #6511)
- Fix output of filename when outputting docs with the
-in-source-orderoption (PR #6536) - Fix
#no_bounds_checkregression (PR #6541) - Fix target feature lookup, canonicalize
target_features_set(PR #6544) - Fix (Issue #6344) - Field-first index writes on
#soa[dynamic]Tand#soa[]T(PR #6539) - Fix
aligned_allocnot defined on Android/Bionic (PR #6519) - Fix
break/continuebeing allowed in a nested unrolled range loop (PR #6521) SROAand simplification passes on-o:minimal(PR #6553)- Fix array counts for floats that are exactly representable as integers e.g.
[1.1e4]int(PR #6583) - Prevent coredump when child process gets killed by signal (PR #6586)
- Support multiple return values within compound literal elements (PR #6596)
- Fix (Issue #5422) - Make
@(rodata)on constants yield "not supported" message (PR #6601) - Fix (Issue #6594) - Report cycle when assigning variable to itself (PR #6599)
- Fix (Issue #6621) - Report cycle for
type_of(PR #6624) - Removed moribund
EssenceOS from supported targets (PR #6623) - Add
intrinsics.c_va_*(PR #6629) - Fix type info not being generated for types only used in
[]typeidliterals (PR #6630) - Fix compiler warning on Linux (PR #6638)
New Packages
- [core:crypto/noise] Add Noise implementation (PR #6573)
Package Improvements
- [core:os] Add
dirprocedure (PR #6517, PR #6528) - [base:runtime] Native simd width (PR #6545)
- [core:os] Fix
_volume_name_lento handle paths of purely path separators (PR #6547) - [core:math/linalg] Faster
dot,cross3,floor,ceil, and addtrunc(PR #6549) - [core:math/linalg] More matrix related calls:
pseudo_inverse,inverse_lu_decomposition,matrix_inverse_gauss_jordan - [core:mem/virtual] Fix arena overcommit bug (PR #6552)
- [core:sys/linux] Fix missing argument in
adjtimexsyscall (PR #6502) - [vendor:wgpu] Update to v29.0.0.0 (PR #6551)
- [core:sys/freebsd] Add
ioctlandstdioFILENOconstants (PR #6537) - [core:nbio] Handle
EOFin poll on Posix (PR #6556) - [core:container/xar] Fix a typo in example (PR #6559)
- [core:testing] Ensure
make_*style bounds traps are handled in test runnerexpect_signalon Windows (PR #6563) - [core:sys/windows] Add I/O Ring API bindings (PR #6562)
- [vendor:directx/d3d12] Fix
D3D12_BARRIER_SUBRESOURCE_RANGEstruct (PR #6557) - [core:testing] Fix stop reason being wrong for OOB on Windows (PR #6570)
- [core:fmt] Remove redundant 'defer bufio.writer_flush' from
fprintprocs (PR #6567) - [vendor:zlib] Fix signature of
inflateInit_(PR #6566) - [vendor:sdl3] Mixer: Removed
#by_ptrfrom args that are valid asnil(PR #6576) - [core:mem/virtual] Fix
map_fileusage example (PR #6577) - [core:mem/virtual] Add
address_hinttoreserve(PR #6558) - [core:os] Fix
stemon empty path (PR #6579) - [core:path/filepath] Create wrappers for allocating procedures (PR #6575)
- [core:fmt] Omit value when formatting
map[T]struct{}sets (PR #6581) - [vendor:vulkan] Add version macros (PR #6565)
- [core:sys/windows] Add Registry Association API (PR #6525)
- [core:sys/windows] Fix
LockFileExandUnlockFileEx(PR #6625) - [core:math/linalg] Fix negated quaternions in
angle_from_quaternion(PR #6607) - [core:sys/linux] Emulate
dup2better on arm64 and riscv (PR #6632)
Full Change Log
Full Changelog: dev-2026-04...dev-2026-05
dev-2026-04
New Language Features
- Fixed Capacity Dynamic Arrays, adds
[dynamic; N]T
New Compiler Improvements
- Limit maximum exponent of integer literals to avoid unnecessary work
- Add
-in-source-orderoption toodin docto show docs in source order within each file - Support clang-style
+/-prefixes in target features - Fix #6396: handle full-width
bit_fieldliteral masks - Fix #6401: generic cycle deadlock in struct layout
- Add support for other Android architectures
- Fix #5602: "Internal Compiler Error: Type_Info for 'x' could not be found" for poly procs with named parameters
- Continuous Compiler Improvements
- Add initial LLVM 22 support on non-Windows platforms
- More accurate
-march:nativefeature selection - Allow pointers to types which have subtype fields at offset 0 to be assignable in proc parameters.
offset_of(some_bit_field)now raises a proper error- Add
intrinsics.type_field_bit_offset(typeid, string)to get a compile-timebit_fieldfield offset in bits - Add
intrinsics.type_field_bit_size(typeid, string)to get a compile-timebit_fieldfield size in bits (the value after|) - Fix #6407: Global unions do not get initialized correctly
- Fix
>=comparisonbase:runtimedependencies forstringandcstringtypes - Fix
GB_PANICformat string inlb_emit_convinvalid subtype cast - Fix
[^]u16tocstring16transmute condition inlb_emit_conv - Remove
Tildebackend - Fix #6484: Two
whenblocks which evaluate totruein aforeignblock misses following decls - Fix declaration order bug #6506: False-positive
where-clause failures in recursive polymorphic subtype cases - Fix declaration order bugs #5572 and #5961: Incorrectly rejecting valid in-progress/forward union references
New Packages
core:crypto/argon2idinitial importvendor:windows/wasapivendor:sdl3/mixer
Package Improvements
- Add more JS to
examples/all - Update Unicode database to newer version
- Fix modular exponentiation in
core:math/big - Fix
assign_atdocumentation core:fmtnow formatstime.Durationwith a space between duration and unit when using% v- Correct SIMD
shrexample documention - Fix
sync.Auto_Reset_Eventsignal deadlock core:sys/darwin/Foundation: fixNSTimerbinding- Partial 1.619.x d3d12 bindings
core:mem/virtual: Fix for virtual arena overcommit bug #5821core:crypto: Add ARM AES hardware accelerationcore:crypto: Add ARM SHA256 hardware accelerationcore:fmt: Improvecore:container/small_arrayformattingvendor:stb/vorbis: Add WASM supportcore:encoding/cbor: Fix order-dependent partial unmarshalscore:encoding/json: Fix user unmarshaler example- Fix possible OOM in
core:os.get_working_directory()on Linux - Fix #6455:
core:mem/virtual.map_file_from_pathignores flags - Fix for corner case in the
core:memscratch allocator. - Minor cleanup in
base:runtimeandcore:mem - Fix #6495: Handle starting separator during name comparison in
core:os - Improved
delete_keydocumentation to mention it's safe to delete keys while iterating a map as long as no resizes take place - Fix source size check in
core:crypto/aesECB encrypt/decrypt
Full Change Log
Full Changelog: dev-2026-03...dev-2026-04
dev-2026-03
BREAKING Changes
-
core:oshas been replaced with our newly improved and rewritten v2, previously available atcore:os/os2. The oldcore:osimplementation will remain available atcore:os/olduntil sometime in Q3 of 2026.- Article on Moving Towards a New
"core:os"
- Article on Moving Towards a New
-
core:sys/infopreviously retrieved all information beforemainwas entered, using@(init), and exposed everything via globals. It now gathers more information on demand, and returns everything via accessors for a consistent API. Where practical - like cpu name + features - those values will be cached.
New Language Features
for init; x in y {}style loops
New Compiler Improvements
- Stop silently ignoring unknown directives on an inline
asmexpression - Do not allow duplicated
#partialdirectives on switch statements - Add broadcasting to strings (Fix #1837)
- Improve LLVM version picking
- Fix name canonicalization for typed ranges in
bit_set - Fix
bit_setparapoly specialization - Fix separating of diverging procedure types from block statements
- Update
Type_Info_Bit_Setto always record underlying type. Addruntime.type_info_underlying - Fix #6347
- Fix #6270
New Packages
core:crypto/ecdsa: Add ECDSA support
Package Improvements
- [BREAKING]
core:os/os2->core:osintegration - [BREAKING]
core:sys/info: Change API from globals to calls. Do as little work in@(init)as practical. - Allow test names to be specified as a command line option for tests executable
vendor:x11/xlib: Fix signature of XChangeWindowAttributesvendor:directx/d3d12: AddedIGraphicsCommandList7and fix access violation errors- Minimize some internal depencies in the
corepackages, e.g. don't importcore:memjust formem.Allocator_Error vendor:box2d: Fix and try Git LFScore:log: Add support forjs/wasmcore:container/xar: Fixes and improvementscore:container/pool: Fix parapoly type inference around address sanitization when using multiple Pool typescore:container/handle_map: Improvementdemo.odinFixcross_3dtypocore:encoding/hex: Add uppercase encodingcore:bytes: Update comment oncompare; add additional caller location propagationcore:math/big: Clean upcore:os: Fix silent failure inos.replace_path_separatorsif the separator was multi-byte- Add additional tests
core:sys/es: Fix build errorscore:unicode/utf8: Fix utf-8 validation- Vendor Wycheproof cryptographic tests under
tests/core/ - Propagate allocator errors from certain unicode functions
- Fix some tools and examples after
core:osupdate andusing-stmtfeature - Fix typo in
atomic.odindocumentation core:os: Removeprocess_closeand addprocess_terminatecore:time: Correct 12-hour clock string- Update Unicode specification
vendor:curl: Fixwhatargument forurl_set- Small optimization for dynamic arrays
vendor:miniaudio: Upgrade to 0.11.24core:container/priority_queue: Add example and testscore:text/regex: Fix\bhandling in iteratorvendor:sdl3: Update to 3.4.2- Add bindings to allow custom hardware cursors
core:nbio: Fix op reusecore:strings: Fixsubstringnot returning end of rangecore:sys/windows: Add morewin32API bindingscore:sys/windows: Fix incorrectPVOID/VOIDuse in some signaturescore:sys/windows: Tighten upMultiByteToWideCharusage inutf8_to_wstring_bufvendor:stb/vorbis: Remove unnecessarycore:c/libcimportvendor:wasm/WebGL: Add bindings, fixTex*Image*Dcore:os: Return.Permission_Deniedfor.EACCESin Posix and Linuxcore:crypto/_blake2: Fix final blocks call with partial block- Kill deprecated file tags and fix assignment of package docs
Full Change Log
Full Changelog: dev-2026-02...dev-2026-03
dev-2026-02
New Language Features
#+feature using-stmtusingas a statement and procedure parameter modifier is now an opt-in feature on a per-file basis rather than on by defaultusingon struct fields still works
struct #simple- force a struct to use simple comparison if all of the fields "nearly simply comparable"
- This is a niche solution to a niche problem
- "simply comparable" are types which can be compared with the equivalent of C's
memcmpdirectly (e.g. integers, booleans, aggregates of them) - "nearly simply comparable" include the simply comparable types and floats, since floats have different rules for
+0,-0, andNaN, and are NEARLY simply comparable if you don't care about those edge cases - This struct directive will force a struct to be "simply comparable" even if its fields would make it "nearly simply comparable"
New Compiler Improvements
- Link-Time Optimization Support
-lto:thinand-lto:thin-files
#must_taildirective andpreserve/none/preserve/most/preserve/allcalling conventions- Enables the ability to state how optimize for tail calls
-disable-unwind- Improvements to the constant conversion checks
intrinsics.count_leading_onesandintrinsics.count_trailing_ones- Show
-targetflag usage example in help - Numerous debug info fixes
- Static linking on non-Windows platforms
- Add warning for
size_of(&x)as it will always besize_of(rawptr)and probably a typo -target:freestanding_amd64_mingw- Allowing for linking to MinGW on Windows but for freestanding purposes (not general)
- Fix
string16issues on Mac and Linux - Fix
in/not_inon constantbit_sets - Allow
#+vettags always work in addition to command line flag - General fixes to
-vet - Type assertions now use the same
context.assertion_failure_procasassertandpanicwhere possible #+feature force-type-assertwhich overrides-no-type-asserton a per-file basis- Fix numerous data races in the compiler frontend
- Fix numerous threading bugs in the compiler frontend
New Packages
core:nbio- Non-Blocking IO
core:container/handle_map- Utilizing
core:container/xarfor stable backing data
- Utilizing
Package Improvements
core:thread- Add
initandfinicallback procedures to thread pools
- Add
core:crypto- Add initial support for short Weierstrass curves
- General improvements and additions
core:testing- Use Windows API for SIG handling on Windows
core:image- Fix TGA header detections
.do_not_expand_grayscalefor TGA
core:os/core:os/os2- Fix
lookup_env_buf - Fix truncate-clamp op order when determining to_read size
- Fix
core:encoding/base64- Add support URL variant
core:encoding/entity- Update handling of 2-codepoint based entities
core:encoding/xml- Correct how comment handling and entities
core:strings- Add
loc := #caller_locationto allocating procedures that would benefit for it
- Add
core:sys/windows- add a few procedure bindings
- sync barriers
- procedure-based "macros" for RawInput
core:text/regex- Pass given allocator on in
create_iterator
- Pass given allocator on in
vendor:x11/xlib- Binding fixes, correcting incorrect signatures
vendor:directx- Improve string type uses in DirectX bindings
vendor:compress/lz4- Fix linking on non-Windows platforms
vendor:curl- Fix linking on all unix-like OSes
vendor:sdl3- Add missing procedures
GetGpueDeviceProperties - Fix signature of
RenderTextureRotated
- Add missing procedures
vendor:sdl3/image- Update to 3.4.0
- Move
vendor:libctovendor:libc-shim- This is to clarify that it exists as a "shim" rather than a proper replacement
- Update Orca bindings
- General additions and improvements to
core:sys/linux - Bulk-write to a slice in xoshiro/pcg_random_generator_proc
- Fixes to darwin/Foundation bindings
Full Change Log
Full Changelog: dev-2026-01...dev-2026-02
dev-2026-01
New Language Features
New Compiler Improvements
- Undetected type declaration cycles work-around
- Fix misleading error messages for
init,finiandtestattributes - Fix automatic
objc_msgSendon static methods via selector expression not resolving aliased types - Fix
#packed #all_or_none - Fix auto
objc_msgSendincorrectly treating certain class methods as instance methods. - Fix handling of
#force_inline - Fix literal endianness
New Packages
core:container/xar, an Odin-native implementation of an Exponential Array
Package Improvements
- Fix duplicate
jpeg.loadon JS - Added more
NSApplicationandNSWindowbindings - Update
kb_text_shapeto v2.03 - Fix default temp allocator underflow bug
- SDL2: Use multi-pointer so you can pass array
- Fix function signature for memmove in
vendor:libc - Freebsd: Fixed 'write' syscall to cause 'ESPIPE' on the pipe fd
- Update
Box2dto 3.1.1 - Fix
core:debug/traceexample - Make
linux.IO_Vec.basea multipointer - Ensure libc is linked on Windows for
vendor:compress/lz4 - Change Return Type of
sdl2.GetWindowFlagsfromu32to ExistingWindowFlagsbit_set - Fix minor issues within
curlbindings core:time/timezoneadded additional search paths to match musl- More bindings for Darwin
- Add
@builtinto missing builtin procedure group procs - os/os2: fix stale errors on windows when reading from console
- os/os2: better fix for the stale errors
- Fix
runtime.print_i64using an OOB index whenmin(i64)is given. - os/os2: use ReadFile for Console reads too, at least for now
- core:sys/linux Add timerfd syscall wrappers
- Fix
nfds_talias for Linux core:io/utils: fix buffer size inwrite_*procscore:netdocs: recv of 0 bytes with no error is a graceful closecore:math/randsmall documentation fix- Address issue identifying CDATA in XML file
- encoding/base32: Fix padding validation for malformed input
- Fix standard json parsing / unmarshalling issue for pure arrays
- Add user32 scroll bar related bindings, and FrameRect
- Add missing 'caller_location' to several procedures in 'slice' package
- Update
letter.odin - WebGL binding additions
- Add JSON5/SJSON Comments When Marshalling
- Fix Unicode Output When Marshalling JSON
- Allow Unmarshalling to rune
- Custom json (un)marshalling, similar to
core:fmt's custom formatters - Fix
net.map_to_ip6offset - [vendor/sdl3] update to sdl 3.4.0
Other
Full Changelog: dev-2025-12a...dev-2026-01
dev-2025-12a
New Language Features
New Compiler Improvements
- Fix duplicate code emission in type assertions.
New Packages
Package Improvements
core:os/os2: Fix #5873- Replace cURL library for Windows with one built against msvcrt
- Update cURL bindings to 8.17
Full Changelog: dev-2025-12...dev-2025-12a
dev-2025-12
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
dev-2025-11
Licensing Changes
- Change Odin's LICENSE to zlib from BSD 3-clause
New Language Features
intrinsics.concatenate- Concatentation of constant slices, strings, and some arrays at compile time
intrinsics.objc_super&@(objc_superclass=<type>)
New Compiler Improvements
- Objective-C interface improvements
intrinsics.objc_superand automatically emitobjc_msgSendcalls where necessary for@(objc_superclass)attribute- Fix block symbols naming conflict across modules
- LLVM backend fixes
#simdvector only uses bit cast when elements are not pointers- Fix bitcasting
contextpointer to prevent compilation errors on LLVM-14 - Numerous constant union improvements
- Prefer the
Type *verLLVMTypeRefwhen looking upstruct_field_remappingdue to lack of uniqueness
- Default parameter exclusion counting improvement for procedure groups
- Improved
-target-featuresflag by allow the user to disable a target feature-target-features:-sse,-sse2,-avx
-export-linked-libs-file:<string>flag to export the linked libraries to a file- Fix a few compiler hangs on macOS.
- LLVM 21 support for non-Windows platforms
- Fix:
#loadalignment bug- set minimum alignment to 16-bytes
- Fix orca linking path
- Add
#subtype/usingto name canonicalization rules - Numerous frontend bugs fixed
New Packages
Package Improvements
- More documentation improvements across the core library
- General improvements and more documentation for
core:os/os2 - Add
inject_at_soaandappend_nothing_soa vendor:wgpuupdate to 27.0.2.0core:unicode/utf8: AddGrapheme_Iterator- New
slice.sortimplementation to allow for better code generation and general API - Deprecate the C style procedures in
strconv(e.g.iota,atoi, etc`) - WASM: Fix odin.js undefined
this.mem - Fix sRGB <-> linear RGB conversion
core:encoding/jsonfixes- Fix
nullparsing in certain cases
- Fix
core:encoding/cbor: Fix epoch tag with small valuescore:container/rbtreeaddfind_or_insert- Fix bindings generator for
vendor:vulkanfor extensions and~0style constants - Disable bounds checking where appropriate for Unicode and UTF-8 procedures
vendor:fontstash: Fix crash with.TTCfilescore:simd: Fix incorrectly named calls inbit_notvendor:sdl3: AddPointInRectFloatvendor/egl- add a few more procedures and constants
- Fix
GetPlatformDisplayandCreatePlatformWindowSurfaceto useintinstead ofi32
vendor:box2d- fixes to bindings mismatches
- Add
targetAngletoRevoluteJointstruct/procs
core:odin/parser- fixes for
end_pos - parse empty identifiers after selector as a selector expression with an empty field
- fixes for
core:hash: add CCITT CRC-16- Make packed conditional on
EPoll_Eventto match kernel core:math/linalg/hlsl: supporthalftypescore:math/ease: Add inverse ease proceduresvendor:raylib: addMAX_MATERIAL_MAPSconstantcore:sys/darwin/Foundation: add additional AppKit bindingscore:text/scannerallow for octal prefix style parsing for C-style ints
Full Changelog: dev-2025-10...dev-2025-11
dev-2025-10
New Language Features
New Compiler Improvements
- Improve type inferencing of literals when calling proc groups
- Windows i386 support
- Fix Darwin
addObservermethods and add support for newObjc_Block - Fix segfault involving
string_to_string16on Linux - Improve OSX threading performance
- Basic support for constant union literals
- Add
-build-diagnostics - Prevent returning a struct containing compound literal slice
- Relax
signature_parameter_similar_enoughon struct params and fix various foreign signatures - Preempt field checking on
signature_parameter_similar_enoughwith a type ptr equality check - Remove stray debug printf
New Packages
- [core/image]: Add baseline JPEG support
Package Improvements
- Use
.Image_Dimensions_Too_Largeincore:image tick_now: Usef64(wasf32) as a return type ofodin_env.tick_now()- Allow missing trailing comma with proc groups in
core:odinparser - Fix incorrect json encoding for control characters < 32
- Initializing
big.Intconstants is now"contextless" - Add
CancelIoExand other overlapped I/O functions. - Add missing caller location param to append in
strings.Builder - Add "contextless" to small_array
get_safeandget_ptr_safe - Zero
small_arrayresize - Unify
filepath.joinreturn between Unix/Windows - Fix out-of-band allocations in dynamic arenas by
- Fix for
temp_filename prefix being deallocated before being used - Add
runtime.conditional_mem_zeroto improveheap_allocatorperformance on non-Windows systems - Add
digit_to_inttocore:strconv - Remove inaccurate tprint comment
Full Changelog: dev-2025-09...dev-2025-10
dev-2025-09
New Language Features
- Native support for UTF-16 strings:
string16andcstring16- Mostly for interfacing with Windows code, and other foreign code
- Define Integer Division By Zero #5556
New Compiler Improvements
@(init)and@(fini)must beproc "contextless" ()- Implement
intrinsics.objc_block@harold-b in #5547- Implements the Apple block ABI.2010.3.16 natively
- Improve deference missing suggestion message
- Do not check for explicit allocators when determining proc in proc group by @janga-perlind in #5564
- Skip errors on polymorphic procs when in a proc group with other options
- Fix compiler segfault when trying to use proc at type level or trying to use
()as a type
New Packages
Package Improvements
- Fixes to
vendor:darwin/Metal - Numerous minor fixes to
base:runtime - Improvements to
base:runtimedocs - Fixes to
vendor:wasm/WebGLbindings - Cleanup in
math/randandruntime/random_generator - Add missing xlib functions for getting and setting text properties
vendor:OpenGLfix misnamed parameter by- Make D3D12_FEATURE_DATA_D3D12_OPTIONS.MinPrecisionSupport a bitset
- Fix buddy allocator assert
- Check for EOF when scanning file tags
- Fix stride in
memory_equal/compare_zerogiving false positves - Split SDL_ttf bindings to group with and without require_results
- Propogate
#caller_locationto core:container/queue procs - Support using allocator resize in
_reserve_soa - Zero existing memory when using
resize_soa - Add
add/remove_document_event_listener()tocore:sys/wasm/js - Fixed and added obj-c methods for
NSWindow - fix typo in
CLSIDFromProgIDExsignature - Fix broken
wglUseFontBitmapsbinding - Add
LPFN_GETACCEPTEXSOCKADDRSto ws2_32.odin - Specify
%mand%Mas verbs for integer formatting incore:fmt - Add
@(require_results)attribute to procs returning an allocator - Handle allocator error when appending in
read_entire_file_from_file vendor:box2dfixCreateMotorJointprocedure signature- Add build tags to
posix/spawn.odin
Full Changelog: dev-2025-08...dev-2025-09