lib/nghttp2-1.65.0/third-party/mruby/doc/mruby3.3.md
mruby3.3 from mruby3.2"NOTE:" are changes to be aware of.
super (2ad3f0e)callee method work differently with aliases in mruby (f2dc76e)Kernel#respond_to_missing? method (347586e)_inspect method (inspect with recursive check) is removed
(e2bbf75, 5cb0c74, 113565a,
0713f2a, 6ae6b63, fc9fffc)__printstr__ method is removed; use print instead
(acecee0, 192e6e3)String#bytesplice (5274647, a2e2e83)return in blocks to cross C boundaries (#6125)docker-compose build for example. (#5961)MRB_NO_DIRECT_THREADING with MRB_USE_VM_SWITCH_DISPATCH (#5902)mrb_default_allocf can be overridden by the application (34c5d96)mrb_open_allocf will be deprecated (cfee5c2)add new error handling API functions (8c8bbd9)
Add mrb_vm_ci_env_clear() function with MRB_API (#5945)
a new function mrb_check_frozen_value() (ccdf75c)
avoid formatting in mrb_bug() (82a48bd)
NOTE: If you are using it, you must give a simple string or replace it with a call to mrb_raise() series.
stop using mrbc_ prefix for compiler context (c5e3cbe)
The same names are provided as before, but we recommend replacing them.
Allow Class#allocate to be prohibited
(#5979, #6122, #6123)
To disable #allocate, use MRB_UNDEF_ALLOCATOR().
This is also automatically applied when the subclass is created, but to explicitly allow it, use MRB_DEFINE_ALLOCATOR().
default.gembox: Add mruby debugger mrdb (mruby-bin-debugger) (#5966)
mruby-bin-config: new options --cxx, --cxxflags, --as, --asflags, --objc, --objcflags (#6054)
mruby-binding: renamed from mruby-binding-core of mruby3.2 (11af5db)
NOTE: If using mruby-binding-core of mruby 3.2, replace it with mruby-binding.
mruby-binding: implemented Binding#initialize_copy method (#5517)
mruby-binding: Kernel#binding responds only to calls from Ruby (#5981)
mruby-compar-ext: Comparable#clamp to accept nil as arguments (836bebc)
mruby-compiler: add print name for identifier tokens (d7b2e3a)
mruby-data: allow empty Data (927a9df)
mruby-enumerator: remove internal attribute methods obj, args, kwd, meth, fib. (735fa24)
mruby-enumerator: add Enumerator#size (861f8bd)
mruby-eval: merged mruby-binding of mruby3.2 (501b22a, #5989)
NOTE: If using mruby-binding of mruby 3.2, replace it with mruby-eval.
mruby-fiber: Add a new mrb_fiber_new() with MRB_API (#6097)
mruby-fiber: Allows calling Fiber#resume from C (#6106)
mruby-fiber: Fiber#to_s format changed (#6105)
mruby-io: add File#atime and File#ctime (321cfe9)
mruby-io: Add "x" mode option for IO.open (#6081)
mruby-io: File.new should not take blocks (53de964)
mruby-numeric-ext: int.pow(n,m) to take bigint as exponential (d482eab)
mruby-pack: support new directives j, J, b, B, #
(2a1e3a5, e7021f1, e17f325)
mruby-range-ext: new method Range#overlap? (384d0e2)
mruby-string-ext: Add String#valid_encoding? method (eabe2d9)
mruby-struct: allow empty Struct when a name is not given (c212ede)
mruby-time: should allow year before 1900 (e5de08b)
mruby-time: support bigint to time_t if necessary (7096d27)
mruby-time: need to handle negative time_t (b064d7e)
Extended rake install task (#5928)
NOTE: Due to this impact, executable files in the mruby/bin/ directory by default are now symbolic links (batch files on Windows).
If previously relied on those executables, should be replaced with direct references to the entity created under the build directory (e.g. mruby/build/host/bin/).
Encode and decode escape characters for presym (#6011)
Rakefile: remove default build target directories in deep_clean (#6032, 1e38569)
mrb_f_raise() is now an internal function
(#5923, #6070)mrb_make_exception() is now an internal function with different parameters
(431f83e, 78137f3)File#path method no longer uses the #to_path method for implicit conversion
(d86c4a7)ensure section is not executed if the function exits via a return in a procOP_RETURN_BLK called directly under C functionmrb_fiber_resume() and Fiber#transferMRB_NO_DIRECT_THREADING with MRB_USE_VM_SWITCH_DISPATCHmrb_f_raise() from MRB_APIrake installREnv objectsKernel#binding responds only to calls from Rubybin/mruby-configFiber#to_s methodClass#allocate in a different wayMRB_FL_UNDEF_ALLOCATE in subclassesOP_RETURN_BLK to cross C boundariesOP_RETURN_BLK called directly under C functiondreamcast_shelf build config: complete overhaulmrb_fiber_resume() and Fiber#transfer