dev-2021-10
gingerBill
released this
01 Oct 14:19
·
8498 commits
to master
since this release
New Language Features
- Semicolons are now fully optional (non-breaking change)
#load_or(path_string, default_byte_slice)
New Packages
vendor:raylib
- Including
vendor:raylib/easings.odin
- Including
vendor:microui
- Odin native source port
vendor:stb/image
- Includes:
stb_image.h
,stb_image_resize.odin
,stb_image_write.odin
- Includes:
vendor:stb/easy_font
vendor:stb/vorbis
vendor:stb/truetype
core:hash/xxhash
core:mem/virtual
(still experimental and work in progress)
Package Improvements
- Improvements and additions to
core:encoding/json
- Minor corrections to
vendor:sdl2
- Improvements to
vendor:vulkan
to use[^]
where appropriate - Improvements to
core:math/big
- Additions to
core:reflect
reflect.equal
,reflect.not_equal
reflect.any_base
,reflect.any_core
reflect.set_union_value
- Changes to
core:io
- Optional
n_read
/n_written
parameters (useful for building utility procedures) - Move
strings.write_quoted_*
toio.write_quoted_*
- Optional
- Numerous tests for the the png, gzip, zlib, et al packages
- Add
bits.log2
- Add
i128
andu128
parsers tocore:strconv
- Correct
append_soa
for#soa[dynamic][N]T
Compiler Improvements
- Update Windows to LLVM 12.0.1
odin strip-semicolon
utility tool to remove unnecessary semicolons-strict-style
-strict-style-init-only
intrinsics.prefetch_*
procedures- Fix slice indices endianness
- General dead code culling in the compiler
- Simplify parsing for directives
- Correct
f64
<->u128
/i128
code generation - Make
map
internals more robust when usingmem.nil_allocator()
- Fix
[^]u8
tocstring
conversion - Allow
[^]T
touintptr
conversion