3.3.0.preview3
Pre-release
Pre-release
What's Changed
- Bug #19868:
Process::Status
methods for compatibility withFixnum
- Fix
io_buffer_get_string
default length computation. by ioquatix · Pull Request #8427 - YJIT: Initialize Assembler vectors with capacity by k0kubun · Pull Request #8437
- Bug #19877: Non intuitive behavior of syntax only applied to literal value
- YJIT: Initialize Vec with capacity for iterators by k0kubun · Pull Request #8439
- [YARP] Fix up alias and true node by kddnewton · Pull Request #8423
- YJIT: Skip Insn::Comment and format! if disasm is disabled by k0kubun · Pull Request #8441
- Bug #19873: Thread#native_thread_id is incorrectly cached across fork on Linux
- Bug #19778: mkmf.rb pkg_config() interaction with RbConfig::CONFIG["cflags"]
- Bug #19882: :$0x should be rejected
- [DOC] Globals doc by BurdetteLamar · Pull Request #8445
- YJIT: Avoid creating a vector in get_temp_regs() by k0kubun · Pull Request #8446
- Feature #19839: Need a method to check if two ranges overlap
- Bug #19864: Ruby 3.2 Changed Behavior With One Sided Ranges
- Bug #19887: RUBYOPT doesn't work unless starting with
-
- [YARP] Miscellaneous bug fixes by jemmaissroff · Pull Request #8453
- [YARP] Restructure tests to compare YARP evaluation to CRuby evaluation by jemmaissroff · Pull Request #8467
- [DOC] Add production performance tips to yjit.md by k0kubun · Pull Request #8472
- Bug #18257: rb_mRubyVMFrozenCore is broken by GC run
- [YARP] Minor linting [ci skip] by jemmaissroff · Pull Request #8480
- Bug #19894: Memory leak in complemented method entries
- [YARP] Pop AliasNode when appropriate by jemmaissroff · Pull Request #8466
- Bug #19624: Backticks - IO object leakage
- Bug #19892: Build fails when release archive is prepared with
-keep_temp
option - [YARP] Add tests for popped instructions by jemmaissroff · Pull Request #8494
- Bug #19896: Ruby method refinement memory leak
- [YARP] Remove minor instances of rb_intern by jemmaissroff · Pull Request #8497
- Resync yarp by jemmaissroff · Pull Request #8498
- [YARP] Use the integer base flag by kddnewton · Pull Request #8476
- Bug #19901: Module clone memory leak
- [DOC] Correction for doc guide + TOC fix in File by BurdetteLamar · Pull Request #8505
- Feature #19790: Optionally write Ruby crash reports into a file rather than STDERR
- Bug #19902: strftimeの返り値のascii_only?が間違っていることがある
- [YARP] Implemented BlockArgumentNode by jemmaissroff · Pull Request #8499
- Bug #17146: Queue operations are allowed after it is frozen
- [DOC] RDoc for Open3.popen3 by BurdetteLamar · Pull Request #8521
- Bug #19890: File#realine(chomp: true) slower/more allocations than readline.chomp!
- YJIT: Remove obsoleted jit_rb_int_mul by k0kubun · Pull Request #8539
- YJIT: Report all insn exit reasons by k0kubun · Pull Request #8541
- YJIT: Use registers for passing C method arguments by k0kubun · Pull Request #8538
- .travis.yml: Upgrade the used Ubuntu s390x to 22.04 (Jammy). by junaruga · Pull Request #8401
- YJIT: Chain-guard opt_mult overflow by k0kubun · Pull Request #8554
- Bug #19906: fix kwarg memory leak
- [DOC] Another example for spawn by BurdetteLamar · Pull Request #8575
- YJIT: Fix assert_no_exits by k0kubun · Pull Request #8579
- Allow changing RUBY_PATCHLEVEL_STR if RUBY_PATCHLEVEL == -1 by k0kubun · Pull Request #8578
- YJIT: Stop spilling temps on jit_prepare_routine_call by k0kubun · Pull Request #8581
- YJIT: add heuristic to avoid compiling cold ISEQs by maximecb · Pull Request #8522
- YJIT: Call mprotect after entry stub failure by k0kubun · Pull Request #8582
- YJIT: Build on BSD platforms with GNU make by Freaky · Pull Request #8591
- YJIT: shink local types from 8 to 4 bytes by maximecb · Pull Request #8597
- testing_ruby.md: Document running test suites on s390x CPU architecture [ci skip] by junaruga · Pull Request #8589
- YJIT: Allow --yjit-trace-exits on release builds by k0kubun · Pull Request #8619
- Feature #19842: Introduce M:N threads
- Feature #19422: Make
--enabled-shared
mandatory on macOS - Test YJIT on macOS Arm64 GitHub Actions by k0kubun · Pull Request #8633
- YJIT: port call threshold logic from Rust to C for performance by maximecb · Pull Request #8628
- Bug #19924: Character literal escaped \xFF stops parsing
- Bug #19919: Variable assignments in condition are warned however class variable assignment and constant declaration are not warned
- Remove paths-ignore from required status checks by k0kubun · Pull Request #8646
- YJIT: Fix argument clobbering in some block_arg+rest_param calls by XrXr · Pull Request #8647
- YJIT: Fallback opt_getconstant_path for const_missing by k0kubun · Pull Request #8623
- [PRISM] Compile fixes by jemmaissroff · Pull Request #8644
- [PRISM] Add --dump=prism mode by jemmaissroff · Pull Request #8643
- Bug #19926: Range#size returns an incorrect result for ranges with a Rational endpoint
- YJIT: Count cold_iseq_entry by default by k0kubun · Pull Request #8654
- [PRISM] prevent underflow on popped splatarray by HParker · Pull Request #8657
- [PRISM] Fix more bugs in the compiler by jemmaissroff · Pull Request #8658
- Remove YJIT --repeat-count=2 job by k0kubun · Pull Request #8669
- [PRISM] Compile AliasGlobalVariableNode by jemmaissroff · Pull Request #8675
- YJIT: Add a cargo job for Arm64 and remove .cirrus.yml by k0kubun · Pull Request #8679
- YJIT: Add a few missing counters for send fallback by k0kubun · Pull Request #8681
- YJIT: Use RbConfig.ruby instead of EnvUtil.rubybin by k0kubun · Pull Request #8689
- Prefer RbConfig.ruby over the 3.times fallback by k0kubun · Pull Request #8691
- YJIT: Add --yjit-perf by k0kubun · Pull Request #8697
- Feature #18515: Add Range#reverse_each implementation
- YJIT: Add RubyVM::YJIT.enable by k0kubun · Pull Request #8705
- YJIT: remove unused
--yjit-greedy-versioning
command-line option by maximecb · Pull Request #8713 - Bug #19966: Prism defines global method instead of singleton method
- Bug #19921: TestYJIT#test_bug_19316 test failure
- YJIT: Skip printing stats at exit if --yjit-disable by k0kubun · Pull Request #8727
- Extract IO::Buffer.for string locking test by headius · Pull Request #8729
- Raise TypeError for bad IO::Buffer.map argument by headius · Pull Request #8728
- Bug #19967: Already installed libruby.dylib is used for test on macOS
- [PRISM] Add tests for BlockNode, BlockLocalVariableNode, BlockParamet… by jemmaissroff · Pull Request #8725
- Feature #19965: Make the name resolution interruptible
- Bug #19968: make install - RBS gem is not installed
- Bug #19632: Disable external iterator for frozen enumerator
- Bug #19973: Duplicate keyword argument names don't always warn
- Feature #19362: #dup on Proc doesn't call initialize_dup
- Feature #19244: Windows: USERPROFILE should be preferred over HOMEPATH
- [DOC] README.md: Remove Cirrus CI badge image. by junaruga · Pull Request #8785
- test/fiber/test_queue.rb: Make the stuck test fail. by junaruga · Pull Request #8791
- Revert ".travis.yml: Drop s390x temporarily." by junaruga · Pull Request #8792
- Improve the match cache optimization to support look-around and atomic groups by makenowjust · Pull Request #7931
- Feature #10602: Support multithreaded profiling
- YJIT: skip to_a in format_number by Maumagnaguagno · Pull Request #8815
- YJIT: Always define method codegen table at boot by k0kubun · Pull Request #8807
- YJIT: implement two-step call threshold by maximecb · Pull Request #8839
- Bug #19985: Confusing error message when nonexistent
Pathname
forrequire
- Feature #18822: Ruby lack a proper method to percent-encode strings for URIs (RFC 3986)
- YJIT: handle out of shape situation in gen_setinstancevariable by casperisfine · Pull Request #8857
- YJIT: Inline basic Ruby methods by k0kubun · Pull Request #8855
- YJIT: update yjit.md, add MPLR 2023 paper and bibtex by maximecb · Pull Request #8861
- [DOC] RDoc for module Process by BurdetteLamar · Pull Request #8847
- Bug #19441: Closing an Tempfile#dup behaviour
- YJIT: Disable code GC by k0kubun · Pull Request #8865
- YJIT: refactor format_number by Maumagnaguagno · Pull Request #8869
- Bug #18286: Universal arm64/x86_84 binary built on an x86_64 machine segfaults/is killed on arm64
- Add "Optimization" section to regexp.rdoc by makenowjust · Pull Request #8849
- Bug #19969: Regression of memory usage with Ruby 3.1
Note: This list is automatically generated by tool/gen-github-release.rb. Because of this, some commits may be missing.