mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
5.8 KiB
5.8 KiB
User visible changes in mruby3.3 from mruby3.2
The language
- aliases work properly with
super calleemethod work differently with aliases in mruby- define
Kernel#respond_to_missing?method _inspectmethod (inspectwith recursive check) is removed__printstrmethod is removed; useprintinstead
Configuration
- mruby can be built using Docker now. Try
docker-compose buildfor example. - New Platform: Nintendo Wii
- Improved Platforms: Android, Dreamcast
mruby memory API
mrb_default_allocfcan be overridden by the applicationmrb_open_allocfwill be deprecated
mruby VM and bytecode
- #5870 Use OP_LOADINEG instead of OP_LOADI
Changes in mrbgems
- mruby-bin-config: new options --cxx,--cxxflags,--as,--asflags,--objc,--objcflags
- mruby-binding-eval (merged with mruby-eval) #5989
- mruby-binding: renamed from mruby-binding-core
- mruby-enumerator: remove internal attribute methods obj, args, kwd, meth, fib.
- mruby-fiber: Add a new mrb_fiber_new() with MRB_API
- mruby-fiber: Allows calling
Fiber#resumefrom C - mruby-fiber:
Fiber#to_sformat changed - mruby-io: Add "x" mode option for IO.open
- mruby-method:
Method#to_sformat changed - mruby-pack: support new directives j,J,b,B
- mruby-range-ext: new method
Range#overlap? - mruby-string-ext: Add
String#valid_encoding?method
Bugs Fixed
- #5712 No "make install"
- #5724 Rational#** is missing
- #5725 weird const_missing exceptions in mrblib code
- #5789 No memory release of backtrace information due to stack error
- #5943 TCPSocket#write is failed
- #5944 Behavior of calling method with a hash variable
- #5949 Caller appears to report wrong line when block passed and brackets omitted
- #5974 Invalid escape sequences in gem_init.c on windows
- #5975 Equals comparison fails on extreme ends of 64-bit integers
- #5985 Sign extension with OP_LOADI32 in get_int_operand()
- #5986 Fix bugs in String#bytesplice
- #5987 ~(-1 << 64) is incorrect
- #5991 'gets' method not working in mruby-3.2.0
- #5995 One seemingly unnecessary parameter is passed in the block parameters
- #6029 mruby build fails under mrbgems directory
- #6041 GC Performance may have degraded
- #6051 Null pointer dereference in mrb_addrinfo_unix_path
- #6052 Null pointer dereference while handling the Proc class
- #6065 Null pointer dereference while handling the Proc class
- #6066 Null pointer dereference involving Struct.new()
- #6067 Null pointer dereference in mrb_string_value_cstr
- #6068 Stack overflow in mrb_vm_exec
- #6087 'Remote branch HEAD not found in upstream origin' error on build
- #6089 binding.eval() handles def expressions differently from CRuby
- #6098 Fails to call superclass of wrapped method
- #6108 VM crashes with break
- #6134 String#unpack1 returns an array instead of a single string
Pull Requests (User Visible Ones)
- #5870 Use OP_LOADINEG instead of OP_LOADI
- #5966 Update default.gembox add mruby debugger mrdb
- #5979 Allow Class#allocate to be prohibited
- #5989 Integrate mruby-binding-eval into mruby-eval
- #5961 Add Docker to build and run all mruby tests. Run pre-commit and generate YARD docs with Docker
- #6008 Make "bintest" independent of directory
- #6009 Avoid adding <MRUBY_ROOT>/bintest which does not exist
- #6012 Allow tests to be disabled for specific gems; warn about disabled tests
- #6013 Fix Android toolchain
- #6032 Rake: update task clean to remove bin and build folders
- #6045 Fixes escape sequence bug and enhancements in Presym scanning
- #6076 Fixed unwinding block that could point to invalid PC
- #6081 Add "x" mode option for IO.open
- #6086 Add build config for Nintendo Wii
- #6097 Add a new mrb_fiber_new() with MRB_API
- #6106 Ease fiber limitations
- #6118 Fixed IO#read with buf
- #6120 Set EBADF if check_file_descriptor() fails