- नया Prism parser जोड़ा गया: यह recursive descent parser है और production में इस्तेमाल के लिए तैयार है। यह Ripper की जगह लेता है
- parser generator को Bison से Lrama में बदला गया: error-tolerant होने की वजह से usability बेहतर है, maintenance आसान है, और यह एक universal parser है जिसे दूसरे tools में भी इस्तेमाल किया जा सकता है
- YJIT performance में सुधार: speed बेहतर हुई और memory का उपयोग कम हुआ
- pure Ruby JIT compiler RJIT पेश किया गया और यह MJIT की जगह लेता है: यह सिर्फ x86-64 को support करता है, लेकिन MJIT के विपरीत runtime पर C compiler की जरूरत नहीं होती। अभी यह experimental है और production में YJIT का इस्तेमाल करना चाहिए
- M:N thread scheduler जोड़ा गया: M Ruby threads को N native threads (OS threads) पर manage किया जाता है, जिससे threads के creation और management की लागत कम होती है
2 टिप्पणियां
लगता है कि
RUBY_GC_HEAP_INIT_SLOTSभीRUBY_GC_HEAP_INIT_SIZE_%d_SLOTSसे बदल दिया गया है। जिन जगहों पर GC tuning की गई थी, वहाँ बदलाव करना पड़ेगा।https://bugs.ruby-lang.org/issues/19785
हर साल 25/12 को रिलीज़ करने की परंपरा के अनुसार, इस साल भी 3.3 आ गया है।