summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Revert "[ruby/rdoc] Update test libraries from ruby/ruby 2023-04-29"Hiroshi SHIBATA2023-04-295-1241/+0
| | | | This reverts commit 966f0d91e2a86fa1347cdafbe1af47e7350aa4ca.
* [ruby/irb] Retire magic-file.rbStan Lo2023-04-283-42/+1
| | | | | | | | | | | | | (https://github.com/ruby/irb/pull/574) `MagicFile` was introduced around v0.9.6, which was like 14~15 years ago. It was needed because back then we needed to read a file's magic comment to determine the encoding of it, and read it with that encoding. Commit: 3ee79e89 But now we expect files to be encoded in UTF-8 and don't specify encoding through magic comments anymore, `MagicFile` can be retired.
* Update an Intel SDM link [ci skip]Takashi Kokubun2023-04-281-1/+1
|
* [ruby/rdoc] Update test libraries from ruby/ruby 2023-04-29Nobuyoshi Nakada2023-04-285-0/+1241
| | | | | | From https://github.com/ruby/ruby/commit/74028c210c23a13b3168886efcf837b4bf930468 https://github.com/ruby/rdoc/commit/badc518c57
* sync_tool.rake: Fold too long message [ci skip]Nobuyoshi Nakada2023-04-291-2/+2
| | | | Split into title and body, like as the pull-request.
* sync_tool.rake: Add --update and --keep options [ci skip]Nobuyoshi Nakada2023-04-291-10/+41
|
* sync_tool.rake: Adjust the location [ci skip]Nobuyoshi Nakada2023-04-281-1/+3
|
* Add sync_tool.rake [ci skip]Nobuyoshi Nakada2023-04-282-11/+29
|
* Copy also helper.rb [ci skip]Nobuyoshi Nakada2023-04-282-0/+5
|
* Improve sync_test_lib.rb [ci skip]Nobuyoshi Nakada2023-04-281-6/+15
| | | | | | - read files to copy once at first - take the destination top directory from command line arguments - fix a typo
* [ruby/resolv] Prefer `Array#concat` over `#+=` on `Array`Nobuyoshi Nakada2023-04-281-2/+2
| | | | | | Fix https://bugs.ruby-lang.org/issues/19621 https://github.com/ruby/resolv/commit/7faaa78847
* Support older gitNobuyoshi Nakada2023-04-281-1/+2
| | | | The -b flag is available since 2.28, but Ubuntu 20.04 uses 2.25.
* Bump github/codeql-action from 2.3.0 to 2.3.2dependabot[bot]2023-04-282-5/+5
| | | | | | | | | | | | | | | Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.3.0 to 2.3.2. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/b2c19fb9a2a485599ccf4ed5d65527d94bc57226...f3feb00acb00f31a6f60280e6ace9ca31d91c76a) --- updated-dependencies: - dependency-name: github/codeql-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
* Update bundled gems list at f6694b5bc89dffdc1d8b24f8c08ded [ci skip]git2023-04-281-1/+1
|
* Bundle rbs-3.1.0 (#7766)Soutaro Matsumoto2023-04-282-1/+5
|
* Introduce --enable-rjit=disasmTakashi Kokubun2023-04-272-4/+15
|
* [ruby/irb] Simplify Locale#loadStan Lo2023-04-271-39/+2
| | | | | | | | | | | | | (https://github.com/ruby/irb/pull/571) * Simplify Locale#load Instead of loading file content with `MagicFile` and then evaluting it, we can just use `Kernel.load` to load the file. * Remove unused optional argument * Remove unused Locale#require and #toplevel_load
* Merge T_OBJECT case in rb_ivar_delete functionS-H-GAMELINKS2023-04-271-5/+0
|
* [ruby/irb] Stop using MagicFile for printing help messagesStan Lo2023-04-271-1/+1
| | | | | | | | | | | | | (https://github.com/ruby/irb/pull/573) `MagicFile` was introduced around v0.9.6, which was like 14~15 years ago. It was needed because back then we needed to read a file's magic comment to determine the encoding of it, and read it with that encoding. Commit: https://github.com/ruby/irb/commit/3ee79e89adb8e21b63d796e53bcc86281685076d But now both EN and JA's help-message file are UTF-8 and have removed the encoding comment, we don't need to open them with `MagicFile` anymore.
* [Bug #19611] Remove never-reachable branch in logical expressionNobuyoshi Nakada2023-04-272-24/+47
|
* Constify `type` and `typed_flag` in `RTypedData`Nobuyoshi Nakada2023-04-271-4/+2
| | | | These must not be changed once initialized.
* Skip DW_FORM_GNU_* forms in addr2line.cKJ Tsanaktsidis2023-04-271-1/+13
| | | | | | | | | | | | | | DW_FORM_GNU_ref_alt and DW_FORM_GNU_strp_alt refer to data stored in an external ELF file specified by a .gnu_debugaltlink attribute. These attributes are generated by dwz(1), which extracts DWARF data common amongst several files and stores it in a single, new file. It leaves behind these two forms in the original file to point at the new, common data. We don't support actually reading the .gnu_debugaltlink file in addr2line.c (and maybe we don't really need to), but we do need to know how to read the actual value of these forms so we can skip over the right number of bytes and not lose track of where we are in the CU.
* RJIT: Tweak the default call thresholdTakashi Kokubun2023-04-261-1/+1
| | | | This number works better on yjit-bench (ruby-lsp).
* RJIT: Fix unspecified_bits with localsTakashi Kokubun2023-04-262-2/+16
|
* Add a CI check for ext/SetupAlan Wu2023-04-261-0/+5
|
* [Bug #19592] Fix ext/Setup supportAlan Wu2023-04-263-20/+17
| | | | | | | | | | | | | | After [1], using ext/Setup to link some, but not all extensions failed during linking. I did not know about this option, and had assumed that only `--with-static-linked-ext` builds can include statically linked extensions. Include the support code for statically linked extensions in all configurations like before [1]. Initialize the table lazily to minimize footprint on builds that have no statically linked extensions. [1]: 790cf4b6d0475614afb127b416e87cfa39044d67 "Fix autoload status of statically linked extensions"
* [ruby/irb] Use a more tolerant way to check Locale#find's returnStan Lo2023-04-261-4/+4
| | | | | | | path (https://github.com/ruby/irb/pull/572) https://github.com/ruby/irb/commit/0b648adf38
* [ruby/irb] Add tests for Locale#find and Locale#loadStan Lo2023-04-261-0/+35
| | | | | | (https://github.com/ruby/irb/pull/570) https://github.com/ruby/irb/commit/710d5b1af5
* [ruby/irb] Remove encoding_aliases.rbStan Lo2023-04-262-16/+6
| | | | | | | | (https://github.com/ruby/irb/pull/569) We don't have to load another file to define the legacy encoding aliases map because there's only one definition of it. We can define it in locale.rb directly.
* marshal.c: shallow freeze user objectsJean Boussier2023-04-262-10/+16
| | | | | | When `freeze: true` argument is passed. [Bug #19427]
* Wrap `undef_method :a` with `ensure`Gary Tou2023-04-261-2/+2
|
* `klass == (VALUE)NULL` --> `!klass`Gary Tou2023-04-261-1/+1
| | | Co-authored-by: Rafael Mendonça França <rafael@franca.dev>
* Test: `defined?(super)` in `BasicObject` returns `nil`Gary Tou2023-04-261-0/+14
| | | | Ensure it returns `nil` instead of segmentation faulting
* defined zsuper: Handle NULL superclass for `BasicObject`Gary Tou2023-04-261-0/+2
| | | | | | | | | | | | | | | | | Prior to this commit, a segmentation fault occurred in `vm_defined`'s `zsuper` implementation after NULL is returned as `BasicObject`'s superclass. This fix returns false from `vm_defined` if the superclass is NULL. For example, the following code resulted in a segfault. ```ruby class BasicObject def seg_fault defined?(super) end end seg_fault ```
* add new debug log line on `rb_ractor_terminate_all`Koichi Sasada2023-04-261-0/+2
| | | | to leave the trace.
* show a separator even if `ec` is NULL.Koichi Sasada2023-04-261-13/+12
| | | | | `RUBY_DEBUG_LOG()` doesn't show anything if `GET_EC()` returns NULL, but print a separator "\t" to make consistent TSV.
* `RUBY_DEBUG_LOG_PID` for `RUBY_DEBUG_LOG()`Koichi Sasada2023-04-261-0/+11
| | | | | `RUBY_DEBUG_LOG=stderr RUBY_DEBUG_LOG_PID=1 ruby ...` will prints debug logs with PID.
* We need to checkout before BundledGem.dummy_gemspec checking.Hiroshi SHIBATA2023-04-261-6/+10
| | | | | | | | | When newer version released rather than gems/bundled_gems defined, `spec.version == Gem::Version.new(v)` always abort like: ``` Unexpected versions between bundled_gems:3.0.4 and gemspec:3.1.0 ```
* [ruby/irb] Fix Locale's encoding lookup for Japanese encodingsStan Lo2023-04-262-3/+4
| | | | | | | | | | | | | | (https://github.com/ruby/irb/pull/568) In https://github.com/ruby/irb/commit/3ee79e89adb8e21b63d796e53bcc86281685076d, `encoding_aliases.rb` was introduced to return the correct encoding object for `ujis` and `euc` encodings. However, the return value of `@@legacy_encoding_alias_map[@encoding_name]` is always overridden by a second look up with `Encoding.find(@encoding_name)`. So the logic didn't work as expected. This commit fixes the problem.
* Revert "Temporary skipped failing assertions"Hiroshi SHIBATA2023-04-261-2/+2
| | | | This reverts commit e7cdce83e8c8797c481ccb54c260c0db1e1afa7c.
* Bump ruby/setup-ruby from 1.146.0 to 1.147.0dependabot[bot]2023-04-264-4/+4
| | | | | | | | | | | | | | Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.146.0 to 1.147.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/55283cc23133118229fd3f97f9336ee23a179fcf...6cecb48364174b0952995175c55f9bf5527e6682) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
* [ruby/pp] Remove patch added for Ruby 2.6/JRuby 9.3Stan Lo2023-04-251-9/+0
| | | | https://github.com/ruby/pp/commit/09dae96129
* [ruby/pp] Skip certain tests for JRubyStan Lo2023-04-251-1/+3
| | | | https://github.com/ruby/pp/commit/f7bde31ca9
* Update to ruby/spec@7f6ca5bBenoit Daloze2023-04-252-1/+2
|
* Workaround CRuby adding x86_64-linux-fake in $LOADED_FEATURESBenoit Daloze2023-04-251-1/+5
|
* Update to ruby/spec@7f69c86Benoit Daloze2023-04-2599-183/+2316
|
* Update to ruby/mspec@1d8cf64Benoit Daloze2023-04-256-80/+3
|
* Optimize method_missing callsJeremy Evans2023-04-252-19/+71
| | | | | | | | | | | | | | | | | | CALLER_ARG_SPLAT is not necessary for method_missing. We just need to unshift the method name into the arguments. This optimizes all method_missing calls: * mm(recv) ~9% * mm(recv, *args) ~215% for args.length == 200 * mm(recv, *args, **kw) ~55% for args.length == 200 * mm(recv, **kw) ~22% * mm(recv, kw: 1) ~100% Note that empty argument splats do get slower with this approach, by about 30-40%. Other than non-empty argument splats, other argument splats are faster, with the speedup depending on the number of arguments.
* Optimize symproc callsJeremy Evans2023-04-252-15/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to the bmethod/send optimization, this avoids using CALLER_ARG_SPLAT if not necessary. As long as the receiver argument can be shifted off, other arguments are passed through as-is. This optimizes the following types of calls: * symproc.(recv) ~5% * symproc.(recv, *args) ~65% for args.length == 200 * symproc.(recv, *args, **kw) ~45% for args.length == 200 * symproc.(recv, **kw) ~30% * symproc.(recv, kw: 1) ~100% Note that empty argument splats do get slower with this approach, by about 2-3%. This is probably because iseq argument setup is slower for empty argument splats than CALLER_SETUP_ARG is. Other than non-empty argument splats, other argument splats are faster, with the speedup depending on the number of arguments. The following types of calls are not optimized: * symproc.(*args) * symproc.(*args, **kw) This is because the you cannot shift the receiver argument off without first splatting the arg.
* Optimize send callsJeremy Evans2023-04-252-33/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to the bmethod optimization, this avoids using CALLER_ARG_SPLAT if not necessary. As long as the method argument can be shifted off, other arguments are passed through as-is. This optimizes the following types of calls: * send(meth, arg) ~5% * send(meth, *args) ~75% for args.length == 200 * send(meth, *args, **kw) ~50% for args.length == 200 * send(meth, **kw) ~25% * send(meth, kw: 1) ~115% Note that empty argument splats do get slower with this approach, by about 20%. This is probably because iseq argument setup is slower for empty argument splats than CALLER_SETUP_ARG is. Other than non-empty argument splats, other argument splats are faster, with the speedup depending on the number of arguments. The following types of calls are not optimized: * send(*args) * send(*args, **kw) This is because the you cannot shift the method argument off without first splatting the arg.