summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-10-12YJIT: port call threshold logic from Rust to C for performance (#8628)Maxime Chevalier-Boisvert
* Port call threshold logic from Rust to C for performance * Prefix global/field names with yjit_ * Fix linker error * Fix preprocessor condition for rb_yjit_threshold_hit * Fix third linker issue * Exclude yjit_calls_at_interv from RJIT bindgen --------- Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
2023-10-12Test YJIT on macOS Arm64 GitHub Actions (#8633)Takashi Kokubun
* cp macos.yml yjit-macos.yml * Test YJIT on macOS Arm64 GitHub Actions * Add a non-YJIT macOS Arm64 job as well
2023-10-12[ruby/irb] Fix test runner exit bugtomoya ishida
(https://github.com/ruby/irb/pull/728) * Remove useless test setup and teardown that sets MAIN_CONTEXT to nil * Avoid adding command methods to main object in test https://github.com/ruby/irb/commit/f204829a08
2023-10-12[ruby/irb] Decouple RubyLex from prompt and line_notomoya ishida
(https://github.com/ruby/irb/pull/701) * Remove instance variable prompt and line_no from RubyLex * Fix prompt test * Rename prompt generating method and make it private https://github.com/ruby/irb/commit/1ceb97fe2e
2023-10-12[Feature #19422] Enable shared by default on macOSNobuyoshi Nakada
2023-10-12Fix `dir_config` cache for -include and -lib optionsNobuyoshi Nakada
Set to "--with-" options, not "--without-" keys.
2023-10-12Include default values in `dir_config` cache keysNobuyoshi Nakada
The extconf.rb in mysql2 gem repeats `dir_config('mysql')`, without and with the default path. The third call returns the former results even with the default path. Since it does not check the results of the third call, that `nil` is passed to `find_library` as a path, and fails with `NoMethodError`.
2023-10-12Fix unused-function warning for 'ruby_ppoll' [ci skip]Nobuyoshi Nakada
2023-10-12Add benchmarks for Range#reverse_eachKouhei Yanagita
2023-10-12Add Range#reverse_each implementation for performanceKouhei Yanagita
2023-10-12Switch mid dump to dump_append_string_valueJohn Hawthorn
I don't think it's possible to create a CI with a mid which would need escaping to be in a JSON string, but I think we might as well not rely on that assumption.
2023-10-12Fix ObjectSpace.dump with super() callinfoJohn Hawthorn
super() uses 0 as mid for its callinfo, so we need to check for that to avoid a segfault when using dump_all.
2023-10-12Fix leaked symbols on FreeBSD [ci skip]Nobuyoshi Nakada
2023-10-12[ruby/securerandom] Extract `assert_uuid_v7`Nobuyoshi Nakada
https://github.com/ruby/securerandom/commit/029677584d
2023-10-12M:N thread scheduler for RactorsKoichi Sasada
This patch introduce M:N thread scheduler for Ractor system. In general, M:N thread scheduler employs N native threads (OS threads) to manage M user-level threads (Ruby threads in this case). On the Ruby interpreter, 1 native thread is provided for 1 Ractor and all Ruby threads are managed by the native thread. From Ruby 1.9, the interpreter uses 1:1 thread scheduler which means 1 Ruby thread has 1 native thread. M:N scheduler change this strategy. Because of compatibility issue (and stableness issue of the implementation) main Ractor doesn't use M:N scheduler on default. On the other words, threads on the main Ractor will be managed with 1:1 thread scheduler. There are additional settings by environment variables: `RUBY_MN_THREADS=1` enables M:N thread scheduler on the main ractor. Note that non-main ractors use the M:N scheduler without this configuration. With this configuration, single ractor applications run threads on M:1 thread scheduler (green threads, user-level threads). `RUBY_MAX_CPU=n` specifies maximum number of native threads for M:N scheduler (default: 8). This patch will be reverted soon if non-easy issues are found. [Bug #19842]
2023-10-12Bump ruby/setup-ruby from 1.155.0 to 1.156.0dependabot[bot]
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.155.0 to 1.156.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Commits](https://github.com/ruby/setup-ruby/compare/d37167af451eb51448db3354e1057b75c4b268f7...5cfe23c062c0aac352e765b1b7cc12ea5255ccc4) --- 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>
2023-10-11Fix calling exit if irb_context is nilTakashi Kokubun
Trying to avoid a flaky failure like: https://github.com/ruby/ruby/actions/runs/6486918029/job/17616113816
2023-10-11Specify everything in matrix.includeTakashi Kokubun
ubuntu.yml had that style because it needed a default value for configure. For macos.yml, since `os` and `configure` always vary, there's no need to declare them that way.
2023-10-11Add test_task in the matrix for better labelsTakashi Kokubun
They appear on GitHub and this looks nicer.
2023-10-11Fix the way to specify extra jobsTakashi Kokubun
2023-10-11Remove redundancy in macOS jobsTakashi Kokubun
I don't think we need to test the same OS twice or the same configuration twice. This is similar to .github/workflows/ubuntu.yml. I also tweaked the label of Slack notifications.
2023-10-11Fix Typoαlpha 0x00
2023-10-11[rubygems/rubygems] Avoid excess Arrays when partitioning ↵Martin Emde
Gem::Version.canonical_segments https://github.com/rubygems/rubygems/commit/338c48f935
2023-10-11[lib/rubygems/path_support.rb] Rephrase commentEllen Marie Dash
Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
2023-10-11[rubygems/rubygems] Move "Defaulting to user installation ..." message, so ↵Ellen Marie Dash
`--install-dir` and `--user-install` can suppress it. https://github.com/rubygems/rubygems/commit/6677fc6853
2023-10-11[rubygems/rubygems] Update incorrect comments.Ellen Marie Dash
https://github.com/rubygems/rubygems/commit/6b21f593f3
2023-10-11[rubygems/rubygems] Simplify logic for Gem::PathSupport#home, and make ↵Ellen Marie Dash
GEM_HOME always overide it. https://github.com/rubygems/rubygems/commit/64273fd7e3
2023-10-11[rubygems/rubygems] Call check_that_user_bin_dir_is_in_path ANY time ↵Ellen Marie Dash
Gem.paths.home == Gem.user_dir. (As opposed to only if `--user-install` is passed.) https://github.com/rubygems/rubygems/commit/0b42d0e869
2023-10-11[rubygems/rubygems] Split out Gem::PathSupport#default_home_dir to fix ↵Ellen Marie Dash
"bundle doctor" specs. https://github.com/rubygems/rubygems/commit/d7f3f901f1
2023-10-11[rubygems/rubygems] Allow test_gem_install_update_options to raise ↵Ellen Marie Dash
Errno::ACCES, in addition to Gem::FilePermissionError. https://github.com/rubygems/rubygems/commit/784fe2a814
2023-10-11[rubygems/rubygems] Update tests to match new implementation of falling back ↵Ellen Marie Dash
to user-writable directories. https://github.com/rubygems/rubygems/commit/a06e657ac6
2023-10-11[rubygems/rubygems] [test_gem_install_update_options.rb] Fix linter warnings.Ellen Marie Dash
https://github.com/rubygems/rubygems/commit/cdcb8394f6
2023-10-11[rubygems/rubygems] Try a different approach for fallback to --user-install.Ellen Marie Dash
https://github.com/rubygems/rubygems/commit/13e0704c40
2023-10-11[rubygems/rubygems] If GEM_HOME exists + isn't writable, use --user-install.Ellen Marie Dash
https://github.com/rubygems/rubygems/commit/6d20585645
2023-10-11[ruby/prism] Allow Scope nodes to be created for a For loopMatt Valentine-House
https://github.com/ruby/prism/commit/ded8711807
2023-10-12`RUBY_DEBUG_LOG` supports `%p` for pidKoichi Sasada
2023-10-11[ruby/prism] Add Node::typeKevin Newton
https://github.com/ruby/prism/commit/ca4943e3f9
2023-10-11[ruby/irb] Rename current completor to RegexpCompletor andtomoya ishida
refactored for future extension (https://github.com/ruby/irb/pull/707) * Move completion implementation to completion/regexp_completor for future extension * Remove constant CompletionProc and PerfectMatchedProc and add a class method * Move document display logic to InputCompletor. Each completor only need to implement `completion_caididates` and `doc_namespace` * Move display_document logic to RelineInputMethod * Use RegexpCompletor directly. Not through class method of InputCompletor. * RegexpCompletor extends BaseCompletor, move back definition to completion.rb * Move display_document test to input_method test * Stop re-initialize completor on each completion phase * Store completor to ReadlineInputMethod's iver https://github.com/ruby/irb/commit/1e98521483
2023-10-11[rubygems/rubygems] Don't delete the release version from pre-release string ↵Martin Emde
more than once https://github.com/rubygems/rubygems/commit/6485adda54
2023-10-11[ruby/irb] Avoid locking the debug UI to a single threadStan Lo
(https://github.com/ruby/irb/pull/725) Since `debug` stores and updates the target thread via its Session's `@tc` variable, we don't need to and shouldn't lock the UI to the thread that activates the integration. https://github.com/ruby/irb/commit/202efdbf0c
2023-10-11Adjust indent [ci skip]Nobuyoshi Nakada
2023-10-11Extract NODE_FL_NEWLINE access to macroyui-knk
2023-10-11[flori/json] skip TruffleRubyHiroshi SHIBATA
https://github.com/flori/json/commit/bab704eb49
2023-10-11[flori/json] define_method is also private at Ruby 2.3 and 2.4Hiroshi SHIBATA
https://github.com/flori/json/commit/3804f38bf4
2023-10-11[flori/json] remove_method of Module is private at Ruby 2.3 and 2.4Hiroshi SHIBATA
https://github.com/flori/json/commit/6cbadf6b6e
2023-10-11shape.h: Make attr_index_t uint8_tJean Boussier
Given `SHAPE_MAX_NUM_IVS 80`, we transition to TOO_COMPLEX way before we could overflow a 8bit counter. This reduce the size of `rb_shape_t` from 32B to 24B. If we decide to raise `SHAPE_MAX_NUM_IVS` we can always increase that type again.
2023-10-11Update default gems list at 8f6a96e6ada05b2716ee6f441fd246 [ci skip]git
2023-10-11[ruby/psych] Bump up v5.1.1Hiroshi SHIBATA
https://github.com/ruby/psych/commit/f306512d60
2023-10-11Skip test_bug_13526 with High SierraHiroshi SHIBATA
2023-10-11Fix error when gems/src is read-onlyKazuhiro NISHIYAMA
When I shared srcdir as read-only in lima-vm, `make install` causes following error: ``` Update rbs to 33813a60752624d58dfe5ae770b39bfaf29fbaf1 error: cannot open .git/FETCH_HEAD: Read-only file system ``` I cannot find any ignore option for `git checkout --detach` when already checked out. So I add `if`.