Bugfixes
stdlib
- (crypto) [security] Fix invalid
OpenSSL::SSL::Options::ALLoption (#17657, thanks @ysbaddaden) - (crypto) Allow exactly 72 byte bcrypt passwords (#17676, thanks @Blacksmoke16)
- (networking) [regression] Send
Content-Length: 0forPOSTandPUTwithout body (#17631, thanks @dentarg) - (networking) [regression] Send
Content-Length: 0forPATCHwithout body (#17632, thanks @dentarg) - (runtime) [regression] Fix
Fiber::ExecutionContext::Isolatedresuming its fiber without an event (#17630, thanks @dentarg) - (runtime) Refactor io_uring event loop's sleep to use timers (#17655, thanks @ysbaddaden)
- (runtime) Fix adjust IP before resolving backtraces (#17622, thanks @ysbaddaden)
- (runtime) Fix race condition in select timeout action (#17640, thanks @ysbaddaden)
- (runtime)
Crystal.init_runtimemust create main Thread and Fiber (#17688, thanks @ysbaddaden) - (serialization) Fix out-of-bounds reads in
XML::Node#name(#17648, thanks @zw963) - (system) Fix
FileUtils.rm_rfailing on a symlink loop (#17613, thanks @jochenseeber) - (text) [regression] Fix out-of-bound access in
String#scan_byte_index(#17625, thanks @HertzDevil) - (text) Fix
String::Builderbuffer grows capacity for trailing zero (#17650, thanks @straight-shoota)
compiler
- (codegen) Do not redeclare lib funs or LLVM intrinsics in the main LLVM module (#17637, #17672, thanks @HertzDevil)
- (debugger) Set debug location before inlining a call (#17602, thanks @Blacksmoke16)
- (semantic) Fix propagate raises state to target defs in call cycles (#17656, thanks @ysbaddaden)
- (semantic) Fix
IndexErrorcondition in strict 1-to-n assignment with splats (#17675, thanks @HertzDevil)
Chores
stdlib
- (networking) Disable kernel TLS by default again (#17649, thanks @straight-shoota)
Infrastructure
- Add changelog for 1.22.1 (#17683, thanks @straight-shoota)
- Update distribution-scripts (#17699, thanks @straight-shoota)