Граф коммитов

78553 Коммитов

Автор SHA1 Сообщение Дата
Takashi Kokubun 38be9a9b72
Clean up OPT_STACK_CACHING (#8132) 2023-07-27 17:27:05 -07:00
Takashi Kokubun bf4d64d8d0 Remove an unused macro
We've deleted opt_call_c_function instruction before.
2023-07-27 16:50:50 -07:00
Takashi Kokubun cf0c907bc7
YJIT: Count setivar too-complex exits (#8131) 2023-07-27 19:35:30 -04:00
Xavier Noria 437a4ccbf2 [rubygems/rubygems] Restore support for Pathname objects in the replaced require
https://github.com/rubygems/rubygems/commit/f7b4282ef7
2023-07-27 23:07:19 +00:00
Takashi Kokubun 9721972175 Resurrect rb_reg_prepare_re C API
Existing strscan releases rely on this C API. It means that the current
Ruby master doesn't work if your Gemfile.lock has strscan unless it's
locked to 3.0.7, which is not released yet.

To fix it, let's not remove the C API we've exposed to users.
2023-07-27 15:30:10 -07:00
Maxime Chevalier-Boisvert 5669a28fde
YJIT: implement missing `asm.jg` instruction in backend (#8130)
YJIT: implement missing jg instruction in backend

While trying to implement a specialize integer left shift, I ran
into a problem where we have no way to do a greater-than comparison
at the moment. Surprising we went this far without ever needing it.
2023-07-27 17:47:29 -04:00
Alan Wu 83f9d80c0b
downloader.rb: unlink broken symlink before caching to fix ENOENT
On GitHub CI, the downloader's cache is shared across different jobs.
For some systems, the cached config.guess ends up being a symlink to
/usr/share/autoconf/build-aux/config.guess and containers that don't
have that file end up consuming the cache anyways, leading to ENOENT
when trying to cache the downloaded file.

This error happened on forks:
 - https://github.com/XrXr/ruby/actions/runs/5675262636/job/15380232344
 - https://github.com/peterzhu2118/ruby/actions/runs/5684765421/job/15408188728
2023-07-27 17:09:08 -04:00
Peter Zhu f72f3ab15b Use onig_new_without_alloc for onig_new 2023-07-27 15:39:05 -04:00
Alan Wu 7633299c50 YJIT: getblockparamproxy for when block is a Proc 2023-07-27 15:03:46 -04:00
Alan Wu 34825ed20d Revert "YJIT: Fix naming for a getblockparamproxy counter"
This reverts commit e7804963f09d7df7f6cce44fbb3e37809c9a15cc.
Oops. The counter was for getblockparam, without "proxy", so
it was aptly named.
2023-07-27 15:03:46 -04:00
Peter Zhu 69b20d1196 Don't load RREGEXP_PTR twice 2023-07-27 14:41:12 -04:00
Peter Zhu 511c51e116 Refactor err string in rb_reg_prepare_re 2023-07-27 14:04:02 -04:00
Peter Zhu 7193b404a1 Add function rb_reg_onig_match
rb_reg_onig_match performs preparation, error handling, and cleanup for
matching a regex against a string. This reduces repetitive code and
removes the need for StringScanner to access internal data of regex.
2023-07-27 13:33:40 -04:00
Takashi Kokubun e5effa4bd0
YJIT: Use dynamic dispatch for megamorphic send (#8125) 2023-07-27 13:09:17 -04:00
Peter Zhu e27eab2f85 [ruby/strscan] Sync missed commit
Syncs commit ruby/strscan@76b377a5d8.
2023-07-27 09:42:42 -04:00
osyo-manga ccca097cb5 [ruby/reline] Add `kill-word` and `backward-kill-word` keymapping
support.
(https://github.com/ruby/reline/pull/570)

Fix it
https://github.com/ruby/reline/issues/558

https://github.com/ruby/reline/commit/0f8000443e

Co-authored-by: Stan Lo <stan001212@gmail.com>
2023-07-27 09:08:24 +00:00
git e78af6b82d Update default gems list at b201ac0bc0 [ci skip] 2023-07-27 08:24:09 +00:00
Stan Lo b201ac0bc0 [ruby/reline] Bump version to 0.3.7
(https://github.com/ruby/reline/pull/578)

https://github.com/ruby/reline/commit/dc5a1b7c48
2023-07-27 08:23:08 +00:00
git 46ca0e1ce4 Update bundled gems list at 2023-07-27 2023-07-27 07:00:06 +00:00
Takashi Kokubun 9bdd485972
YJIT: Count the number of dynamic send dispatches (#8122) 2023-07-26 12:59:59 -07:00
Alan Wu 37160be439 YJIT: Fix naming for a getblockparamproxy counter
The rest of the counters are prefixed with `gbpp_` and that's what
`yjit.rb` uses when printing the summary. This counter wasn't included
in the summary.
2023-07-26 13:58:15 -04:00
Haldun Bayhantopcu 499eb3990f [ruby/yarp] Fix tests
https://github.com/ruby/yarp/commit/50e745767e
2023-07-26 14:46:20 +00:00
Haldun Bayhantopcu c680ae2ce1 [ruby/yarp] Added locations to errors tests
https://github.com/ruby/yarp/commit/108d1221ef
2023-07-26 14:46:19 +00:00
Haldun Bayhantopcu 47ff17a413 [ruby/yarp] Fix error and warning locations
https://github.com/ruby/yarp/commit/b91317ab39
2023-07-26 14:46:19 +00:00
Haldun Bayhantopcu bd5cc4d6a0 [ruby/yarp] Add comments test
https://github.com/ruby/yarp/commit/6484af4165
2023-07-26 14:46:18 +00:00
Haldun Bayhantopcu 59e5bf2d1f [ruby/yarp] Fix comment locations
https://github.com/ruby/yarp/commit/7d2a1f8f1f
2023-07-26 14:46:17 +00:00
ywenc 8ca399d640
Implement `opt_aref_with` instruction (#8118)
Implement gen_opt_aref_with

Vm opt_aref_with is available

Test opt_aref_with

Stats for opt_aref_with

Co-authored-by: jhawthorn <jhawthorn@github.com>
2023-07-26 10:38:59 -04:00
Jeremy Evans 786a864900 Make {Nil,True,False}Class#singleton_method always raise NameError
{Nil,True,False}Class#singleton_methods always returns [] indicating
that there are no singleton methods defined, so #singleton_method
should be consistent with that.

Fixes [Bug #11064]
2023-07-26 07:27:15 -07:00
Jean Boussier 9b405a18be Process.warmup: precompute strings coderange
This both save time for when it will be eventually needed,
and avoid mutating heap pages after a potential fork.

Instrumenting some large Rails app, I've witnessed up to
58% of String instances having their coderange still unknown.
2023-07-26 11:41:23 +02:00
Stan Lo 283b2fdab4 [ruby/irb] Page `ls`'s output (https://github.com/ruby/irb/pull/657)
* Page ls command's output

* Use Pager.page_content in show_cmds too

https://github.com/ruby/irb/commit/82d1687302
2023-07-26 08:32:02 +00:00
Nobuyoshi Nakada 26aef1c736 Use `lex_eol_p` family 2023-07-26 11:39:29 +09:00
Hiroshi SHIBATA 6500f85927
Added Gem::BUNDLED_GEMS for warning feature of Bundler 2023-07-26 08:51:57 +09:00
Alan Wu 14691d39e9
Revert "GitHub Actions: fix ENOENT for jobs running in forks"
Revert b106cf2eef.
Sorry, it didn't actually fix the problem. See for example:
https://github.com/peterzhu2118/ruby/actions/runs/5659386206/job/15332833836

The plot thickens.
2023-07-25 18:46:00 -04:00
Stan Lo d8cee55073 [ruby/irb] Display `show_cmds`'s output in a pager when in TTY
environment
(https://github.com/ruby/irb/pull/647)

This can:

- Make it easier to scroll up and down the commands list
- Avoid pushing up users' previous output
- Allow users to do basic search with `/<word>`

https://github.com/ruby/irb/commit/f94e8a66dd
2023-07-25 18:33:23 +00:00
Takashi Kokubun e1104017e3
YJIT: Fix cfp inconsistency on tailcall (#8107)
[Bug #19781]
2023-07-25 13:20:04 -04:00
Nobuyoshi Nakada 99162dee7a [Bug #19751] Remove linemarkers in middle 2023-07-25 19:30:15 +09:00
Stan Lo 377639053d [ruby/reline] Avoid using CSI # S for scroll down
(https://github.com/ruby/reline/pull/577)

https://github.com/ruby/reline/commit/b67ee4e791
2023-07-25 09:39:58 +00:00
Hiroshi SHIBATA cf1f2e9d06 [rubygems/rubygems] bin/rubocop -A
https://github.com/rubygems/rubygems/commit/e8a4184429
2023-07-25 06:23:29 +00:00
Hiroshi SHIBATA 979d1fa5fe [rubygems/rubygems] Extract Gem::BUNDLED_GEMS from Bundler
https://github.com/rubygems/rubygems/commit/e30e86aa60
2023-07-25 06:23:28 +00:00
Hiroshi SHIBATA 8fbe7d0295 [rubygems/rubygems] Skip warnings if bundled gems is already loaded
https://github.com/rubygems/rubygems/commit/9583a7eb82
2023-07-25 06:23:28 +00:00
Hiroshi SHIBATA 422144d220 [rubygems/rubygems] Use Kernel.singleton_class
https://github.com/rubygems/rubygems/commit/f2e8e054df
2023-07-25 06:23:27 +00:00
Hiroshi SHIBATA 6bb34a7684 [rubygems/rubygems] Don't reuse require argument
https://github.com/rubygems/rubygems/commit/1712cd6149
2023-07-25 06:23:27 +00:00
Hiroshi SHIBATA 64530b545f [rubygems/rubygems] Added warnings targets for old version of Ruby
https://github.com/rubygems/rubygems/commit/d0c1d97105
2023-07-25 06:23:26 +00:00
Hiroshi SHIBATA fc5dbea4c3 [rubygems/rubygems] Added Ruby version for bundled gems to warnings
https://github.com/rubygems/rubygems/commit/d61c1362e7
2023-07-25 06:23:26 +00:00
Hiroshi SHIBATA ec600332fc [rubygems/rubygems] Simplefied condition
https://github.com/rubygems/rubygems/commit/5238fcf234
2023-07-25 06:23:25 +00:00
Hiroshi SHIBATA 2424b921b2 [rubygems/rubygems] make bundled gemst list as constant under Gem namespace
https://github.com/rubygems/rubygems/commit/438eac5447
2023-07-25 06:23:25 +00:00
Hiroshi SHIBATA cc2617ae3f [rubygems/rubygems] Added csv as stub gem to build_repo1
https://github.com/rubygems/rubygems/commit/d2f2597c31
2023-07-25 06:23:24 +00:00
Hiroshi SHIBATA df4ac25bd9 [rubygems/rubygems] Added examples for warnings feature
https://github.com/rubygems/rubygems/commit/78807add23
2023-07-25 06:23:24 +00:00
Hiroshi SHIBATA 0ae227ebe2 [rubygems/rubygems] Also check Kernel.require for infinite loop
https://github.com/rubygems/rubygems/commit/961d9ac1bd
2023-07-25 06:23:23 +00:00
Hiroshi SHIBATA a23fe8e84d [rubygems/rubygems] Avoid infinite call of require
https://github.com/rubygems/rubygems/commit/9c345bfa3e
2023-07-25 06:23:23 +00:00