summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-12-02Box: Mark boxes when a class/module is originally defined in it.Satoshi Tagomori
When a class/module defined by extension libraries in a box, checking types of instances of the class needs to access its data type (rb_data_type_t). So if a class still exists (not GCed), the box must exist too (to be marked).
2025-12-02Box: Fix data type nameSatoshi Tagomori
2025-12-02Box: load_wrapping is not needed nowSatoshi Tagomori
Top level constants are defined on the Object class's constant table, and those constants can be referred as box::CONST_NAME from outside box. So load_wrapping() is not needed now.
2025-12-02ZJIT: Improve documentation and make it easy to generate the types graphBenoit Daloze
2025-12-02[ruby/rubygems] Make BUNDLE_LOCKFILE environment variable have precedence ↵Jeremy Evans
over lockfile method in Gemfile It would be simpler to do `options[:lockfile] ||= ENV["BUNDLE_LOCKFILE"]`, but that doesn't work as `options` is frozen. Fixes https://github.com/ruby/rubygems/pull/9117 https://github.com/ruby/rubygems/commit/6e3603a0e9
2025-12-02[ruby/optparse] Remove `const_set` and instead use explicit assignmentsSam Westerman
https://github.com/ruby/optparse/commit/6e2709a5fd
2025-12-02[ruby/rubygems] Improve banner message for the default command.Hiroshi SHIBATA
Co-authored-by: Benoit Daloze <eregontp@gmail.com> https://github.com/ruby/rubygems/commit/463488b439 Co-authored-by: Patrik Ragnarsson <patrik@starkast.net>
2025-12-02CI: Distclean mswinNobuyoshi Nakada
Use the given `make-command` instead of the hard-coded `make` command. TODO: Use it for `make up` as well, in the future.
2025-12-02Win32: Clean empty directoriesNobuyoshi Nakada
2025-12-02Win32: Clean timestamp directory for platformNobuyoshi Nakada
2025-12-02Win32: Remove bundled gems directoriesNobuyoshi Nakada
2025-12-02Win32: Clean minipreludeNobuyoshi Nakada
2025-12-02Win32: Remove DLL files linked by `prepare-vcpkg`Nobuyoshi Nakada
2025-12-02Win32: Support removing wildcards in middle of pathNobuyoshi Nakada
2025-12-02Win32: Clean generated sourcesNobuyoshi Nakada
2025-12-02Win32: Refine outputsNobuyoshi Nakada
- Suppress logos from sub makes. - Set the prompt for `for` command when `echo` is on.
2025-12-02Win32: Append `-p` option to `RMDIRS`Nobuyoshi Nakada
`rmdirs.bat` may require this option explicitly to remove parent directories, in the future.
2025-12-02Win32: Clean prismNobuyoshi Nakada
- intermediate source files - timestamp files - build directories
2025-12-02Win32: Remove extra suffix for sub-makeNobuyoshi Nakada
2025-12-02Win32: Fix removing symlinkNobuyoshi Nakada
Try `rd` first for symlink to a directory; `del` attemps to remove all files under the target directory, instead of the symlink itself.
2025-12-02Win32: Add `DLEXT` for clean-specNobuyoshi Nakada
2025-12-02Win32: Fix rm.bat removing non existent fileNobuyoshi Nakada
2025-12-02Win32: Fix @ in middle of commandsNobuyoshi Nakada
`@` is not a command, and cannot be placed after `||`.
2025-12-02ZJIT: Optimize GetIvar for non-T_OBJECTBenoit Daloze
* All Invariant::SingleRactorMode PatchPoint are replaced by assume_single_ractor_mode() to fix https://github.com/Shopify/ruby/issues/875 for SingleRactorMode patchpoints.
2025-12-02Clean generated transcodersNobuyoshi Nakada
2025-12-01ZJIT: Split Lea memory reads on x86_64Max Bernstein
2025-12-01ZJIT: Add HIR test for VM_OPT_NEWARRAY_SEND_PACK_BUFFERMax Bernstein
2025-12-01ZJIT: Open-code String#getbyteMax Bernstein
Don't call a C function.
2025-12-01ZJIT: Mark String#ascii_only? as leafMax Bernstein
2025-12-01ZJIT: Specialize Integer#>>Max Bernstein
Same as Integer#>>. Also add more strict type checks for both Integer#>> and Integer#<<.
2025-12-01Add BOP_GTGTMax Bernstein
This will help JITs (and maybe later the interpreter) optimize Integer#>>.
2025-12-01ZJIT: Specialize String#<< with FixnumMax Bernstein
Append a codepoint.
2025-12-01ZJIT: Add late pass to fold AnyToStringMax Bernstein
This otherwise would miss annotations of C methods.
2025-12-01ZJIT: Don't use GuardTypeNotMax Bernstein
Use actual receiver type. This gives us better method lookup.
2025-12-01ZJIT: Mark Integer#to_s as returning StringExactMax Bernstein
2025-12-01Add remembered flag to heap dumpJohn Hawthorn
This should be less common than than many of the other flags, so should not inflate the heap too much. This is desirable because reducing the number of remembered objects will improve minor GC speeds.
2025-12-01[ruby/strscan] [DOC] Fix broken link to helper methodsBerkan Ünal
(https://github.com/ruby/strscan/pull/179) ### Helper methods link is broken at master branch To reproduce 1. go to [StringScanner docs](https://docs.ruby-lang.org/en/master/StringScanner.html) 2. Click to link at line > See examples at **helper_methods** 3. Resolved url gives 404: https://docs.ruby-lang.org/en/master/strscan/helper_methods_md.html ### Fix Currently link resolves as `href="doc/strscan/helper_methods_md.html"` Correct link should be resolved as `href="helper_methods_md.html"` https://github.com/ruby/strscan/commit/adb8678aa6
2025-12-01Test CC invalidation for singleton classes of objects (#15360)Luke Gruber
I made a recent change where all the tests passed but it turns out it was still wrong. We didn't have any tests for CC invalidation on singletons of objects that aren't classes or modules.
2025-12-01ZJIT: Fix erroneous version number for Iongraph (#15357)Aiden Fox Ivey
As per https://github.com/mozilla-spidermonkey/iongraph/blob/8d5e531305320216f86a24bfc9bc136a3627e832/src/iongraph.ts#L147, correct version number for the web-based tool is 1, rather than 2.
2025-12-01ZJIT: Standardize method dispatch insns' `recv` field (#15334)Stan Lo
ZJIT: Standardize C call related insn fields - Add `recv` field to `CCall` and `CCallWithFrame` so now all method dispatch related instructions have `recv` field, separate from `args` field. This ensures consistent pointer arithmetic when generating code for these instructions. - Standardize `recv` field's display position in send related instructions.
2025-12-01Speedup RBASIC_FIELDS_COUNT (#15273)Luke Gruber
We know the argument is not a class, module or special const, so we can skip these checks.
2025-12-01ZJIT: Optimize variadic cfunc `Send` calls into `CCallVariadic` (#14898)Stan Lo
ZJIT: Optimize variadic cfunc Send calls into CCallVariadic
2025-12-01[ruby/prism] PM_NODE_INITKevin Newton
Hide the initialization of the base node inside the node initializer lists by a macro. As such, consistently enforce flags are set properly. https://github.com/ruby/prism/commit/c7b3d66d84
2025-12-01Add `rb_ec_close` function to manage execution context cleanup. (#15253)Samuel Williams
2025-12-01Nullify scheduler during `terminate_atfork_i`. (#15354)Samuel Williams
2025-12-01[ruby/prism] Fix up newlines in newline-delimited-literalsKevin Newton
When you have a %-literal that is delimited by newlines, and you are also interpolating a heredoc into that literal, then both concepts will attempt to add the same newline to the newline list. https://github.com/ruby/prism/commit/c831abb888
2025-12-01[ruby/prism] Properly remove referencesKevin Newton
https://github.com/ruby/prism/commit/17b246fd6a
2025-12-01Remove an excess semicolon in a macroNobuyoshi Nakada
2025-11-30Remove stale checkNobuyoshi Nakada
Any objects with `call` method can be accepted as trap handlers, and the check for `Proc` type is useless since ruby/ruby@29f5911cf545.
2025-11-30Fix switch fall-through in copy_ext_file_errorDaisuke Fujimura (fd0)