summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-06-02Update default gems list at c32a30ec09997b3ee846a33a6873ed [ci skip]git
2023-06-02[ruby/stringio] Development of 3.0.8 started.Hiroshi SHIBATA
https://github.com/ruby/stringio/commit/1587d3698e
2023-06-02Fix the case no file under bin directoryNobuyoshi Nakada
NMake cannot handle empty expanded targets.
2023-06-02[ruby/uri] Drop support for 2.4Nobuyoshi Nakada
https://github.com/ruby/uri/commit/21baf2ba16
2023-06-02Bump octokit/request-action from 2.1.7 to 2.1.8dependabot[bot]
Bumps [octokit/request-action](https://github.com/octokit/request-action) from 2.1.7 to 2.1.8. - [Release notes](https://github.com/octokit/request-action/releases) - [Commits](https://github.com/octokit/request-action/compare/89a1754fe82ca777b044ca8e79e9881a42f15a93...352d2ae93e1805721b5fe308598555ba3bd2c8e2) --- updated-dependencies: - dependency-name: octokit/request-action dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
2023-06-02No need to define "BISON" on extconf.rbyui-knk
"BISON" is defined in "ext/ripper/depend". Notes: Merged: https://github.com/ruby/ruby/pull/7878
2023-06-01Revert "Fix cvar caching when class is cloned"Aaron Patterson
This reverts commit 77d1b082470790c17c24a2f406b4fec5d522636b.
2023-06-01[ruby/irb] Improve debug command testsStan Lo
(https://github.com/ruby/irb/pull/594) * Use require_relative for envutil.rb Requiring test helper files with `require_relative` allows running the tests with `ruby -Itest test/irb/test_debug_cmd.rb` without having to set up the load path. * Replace reline hack with TERM=dumb
2023-06-01YJIT: Introduce RubyVM::YJIT.stats_string (#7857)Takashi Kokubun
* YJIT: Introduce RubyVM::YJIT.printed_stats * Use #string instead Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> * Rename it to #stats_string Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> --------- Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
2023-06-01Fix cvar caching when class is clonedeileencodes
The class variable cache that was added in https://github.com/ruby/ruby/pull/4544 changed the behavior of class variables on cloned classes. As reported when a class is cloned AND a class variable was set, and the class variable was read from the original class, reading a class variable from the cloned class would return the value from the original class. This was happening because the IC (inline cache) is stored on the ISEQ which is shared between the original and cloned class, therefore they share the cache too. To fix this we are now storing the `cref` in the cache so that we can check if it's equal to the current `cref`. If it's different we don't want to read from the cache. If it's the same we do. Cloned classes don't share the same cref with their original class. This will need to be backported to 3.1 in addition to 3.2 since the bug exists in both versions. We also added a marking function which was missing. Fixes [Bug #19379] Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org> Notes: Merged: https://github.com/ruby/ruby/pull/7265
2023-06-01Expose `enum rb_io_event` flags without `_t` suffix. (#7887)Samuel Williams
Notes: Merged-By: ioquatix <samuel@codeotaku.com>
2023-06-01Drop `_t` suffix from struct names. (#7886)Samuel Williams
POSIX reserves `_t` suffix in types. Notes: Merged-By: ioquatix <samuel@codeotaku.com>
2023-06-01[DOC] Mention the edge case of `any?`/`all?`Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/7883
2023-06-01Simplify duplicated codePeter Zhu
The capacity of the string can be calculated using the str_capacity function. Notes: Merged: https://github.com/ruby/ruby/pull/7879
2023-06-01Don't refetch ptr and lenPeter Zhu
The call to RSTRING_GETMEM already fetched the pointer and length, so we don't need to fetch it again. Notes: Merged: https://github.com/ruby/ruby/pull/7879
2023-06-01[ruby/stringio] Avoid direct struct usage.Samuel Williams
(https://github.com/ruby/stringio/pull/54) We will eventually want to refactor this, but for now this is compatible enough.
2023-06-01rb_io_descriptor() is available since 3.1Benoit Daloze
2023-06-01Restores the changes in `io-console` without breaking backwards ↵Samuel Williams
compatibility. (#7882) This reverts commit 35da41b29bf0a1a8fd2cd7e1d7fcb036ca8c2c7c. This updates `io-console` to avoid accessing the internal details of `rb_io_t` and instead use `rb_io_descriptor` and `rb_io_path` etc. Notes: Merged-By: ioquatix <samuel@codeotaku.com>
2023-06-01Use a real Ruby mutex in rb_io_close_wait_list (#7884)KJ Tsanaktsidis
Because a thread calling IO#close now blocks in a native condvar wait, it's possible for there to be _no_ threads left to actually handle incoming signals/ubf calls/etc. This manifested as failing tests on Solaris 10 (SPARC), because: * One thread called IO#close, which sent a SIGVTALRM to the other thread to interrupt it, and then waited on the condvar to be notified that the reading thread was done. * One thread was calling IO#read, but it hadn't yet reached the actual call to select(2) when the SIGVTALRM arrived, so it never unblocked itself. This results in a deadlock. The fix is to use a real Ruby mutex for the close lock; that way, the closing thread goes into sigwait-sleep and can keep trying to interrupt the select(2) thread. See the discussion in: https://github.com/ruby/ruby/pull/7865/ Notes: Merged-By: ioquatix <samuel@codeotaku.com>
2023-06-01[ruby/syntax_suggest] Use hard-coded filename for executables.Hiroshi SHIBATA
It's hard to handle between ruby/syntax_suggest and ruby/ruby at gemspec. https://github.com/ruby/syntax_suggest/commit/0ee7496668
2023-06-01Hide the usage of `rb_io_t` where possible. (#7880)Samuel Williams
This retries the compatible parts of the previously reverted PR so we can continue to update related code without breaking backwards compatibility. Notes: Merged-By: ioquatix <samuel@codeotaku.com>
2023-06-01Revert https://github.com/ruby/io-console/pull/43Hiroshi SHIBATA
This reverts commit 1889133c04f337fec3969cb5040a544088249046 and commit 764207e47ce38d1b73774a8e65114c87bc888298. Followed up with https://github.com/ruby/ruby/commit/85dcc4866d9ff29834596e9186cc97d622ee06f8
2023-06-01Revert "Hide most of the implementation of `struct rb_io`. (#6511)"NARUSE, Yui
This reverts commit 18e55fc1e1ec20e8f3166e3059e76c885fc9f8f2. fix [Bug #19704] https://bugs.ruby-lang.org/issues/19704 This breaks compatibility for extension libraries. Such changes need a discussion.
2023-05-31More debug code to GC compaction testPeter Zhu
2023-05-31Fix flaky test in test_objspace.rbPeter Zhu
Ensure that the frozen string is promoted to the old generation by running the GC 4 times.
2023-05-31ruby/spec no longer supports 2.7 since it is EOLBenoit Daloze
2023-05-31Add debug code to GC compaction testPeter Zhu
This test is flaky on some CI systems.
2023-05-31Assertion on message length for the `-h` optionNobuyoshi Nakada
2023-05-31[rubygems/rubygems] tool_dir needs to handle ruby/ruby repo nowHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/550d90f4ba
2023-05-30YJIT: Force showing a backtrace on panic (#7869)Takashi Kokubun
Notes: Merged-By: maximecb <maximecb@ruby-lang.org>
2023-05-30Merge RubyGems/Bundler master from 4076391fce5847689bf2ec402b17133fe4e32285Hiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/7873
2023-05-30[ruby/io-nonblock] Add TruffleRuby support and add it in CIBenoit Daloze
* Do not use a C extension on TruffleRuby for these 3 methods. https://github.com/ruby/io-nonblock/commit/1b8e52abfa
2023-05-30[ruby/io-nonblock] Use the correct pattern for the fallback of ↵Benoit Daloze
rb_io_descriptor() * See https://github.com/ruby/io-console/pull/43/commits/d1d9aef45ceb14365fdf0ebee3e5ea06f27da682 https://github.com/ruby/io-nonblock/commit/dadb42422b
2023-05-30[ruby/racc] Remove ErrorSymbolValue referenceJeremy Evans
I cannot find where this is defined. I'm guessing neither this nor the else branch is ever hit. I only found out when testing VM changes, which had a bug that exposed this. https://github.com/ruby/racc/commit/8983d0c134
2023-05-30Hide most of the implementation of `struct rb_io`. (#6511)Samuel Williams
* Add rb_io_path and rb_io_open_descriptor. * Use rb_io_open_descriptor to create PTY objects * Rename FMODE_PREP -> FMODE_EXTERNAL and expose it FMODE_PREP I believe refers to the concept of a "pre-prepared" file, but FMODE_EXTERNAL is clearer about what the file descriptor represents and aligns with language in the IO::Buffer module. * Ensure that rb_io_open_descriptor closes the FD if it fails If FMODE_EXTERNAL is not set, then it's guaranteed that Ruby will be responsible for closing your file, eventually, if you pass it to rb_io_open_descriptor, even if it raises an exception. * Rename IS_EXTERNAL_FD -> RUBY_IO_EXTERNAL_P * Expose `rb_io_closed_p`. * Add `rb_io_mode` to get IO mode. --------- Co-authored-by: KJ Tsanaktsidis <ktsanaktsidis@zendesk.com> Notes: Merged-By: ioquatix <samuel@codeotaku.com>
2023-05-29[rubygems/rubygems] Bump rb-sysdependabot[bot]
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.77 to 0.9.78. - [Release notes](https://github.com/oxidize-rb/rb-sys/releases) - [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.77...v0.9.78) --- updated-dependencies: - dependency-name: rb-sys dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com>
2023-05-29[ruby/cgi] Add TruffleRuby support and add it in CIBenoit Daloze
https://github.com/ruby/cgi/commit/1240fec9c9
2023-05-29[ruby/etc] Use the correct pattern for the fallback of rb_io_descriptor()Benoit Daloze
* See https://github.com/ruby/io-console/pull/43/commits/d1d9aef45ceb14365fdf0ebee3e5ea06f27da682 https://github.com/ruby/etc/commit/5185685003
2023-05-29Refactor guards for Time.new specBenoit Daloze
2023-05-29Unify error messages of rb_num2ulong and rb_num2ullPeter Zhu
The error messages were slightly different due, which causes different behaviour on 32-bit and 64-bit systems. Notes: Merged: https://github.com/ruby/ruby/pull/7872
2023-05-29Update to ruby/spec@c3677cfBenoit Daloze
2023-05-29[ruby/openssl] Remove usage of IO internals.Samuel Williams
2023-05-29[ruby/io-console] Remove trailing whitespace.Samuel Williams
https://github.com/ruby/io-console/commit/55f1586463
2023-05-29[ruby/io-console] Remove usage of IO internals.Samuel Williams
(https://github.com/ruby/io-console/pull/43) https://github.com/ruby/io-console/commit/4b839a504f Co-authored-by: Benoit Daloze <eregontp@gmail.com>
2023-05-29mkmf: Add the extra option `--with-verbose` to enable verbose mode. (#7863)Jun Aruga
This commit is to add an extra option to enable verbose mode (V=1) in the generated `Makefile` at runtime of the Ruby to print compiler command lines by the commands below when building native extensions. It's possible to enable the verbose mode by setting the environment variable `MAKEFLAGS="V=1"`[1] implemented in GNU make. However, I wanted to make a consistent user-interface not depending on the specific make's implementation. ``` $ ruby /path/to/extconf.rb -- --with-verbose ``` You can also add the extra option via rake-compiler gem. ``` $ rake compiler -- --with-verbose ``` If the extra option is not given, the value of the `RbConfig::CONFIG["MKMF_VERBOSE"]` enabled by the configure option below is used. ``` $ ./configure --enable-mkmf-verbose ``` For the unit tests, updated the following files. * The `test/mkmf/test_configuration.rb` was created to test the cases with the `configuration` method and this implementation. * Updated the `TestMkmf#assert_separately` to set the extra arguments in `test/mkmf/base.rb`. Updated tests using the `assert_separately`. * Added tests for `MakeMakefile#with_config` in the `test/mkmf/test_config.rb`. [1] https://www.gnu.org/software/make/manual/html_node/Variables_002fRecursion.html Fixes [Bug #19695] Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Notes: Merged-By: junaruga
2023-05-28[ruby/irb] Set maximum document dialog height bytomoya ishida
preferred_dialog_height provided by Reline (https://github.com/ruby/irb/pull/591) https://github.com/ruby/irb/commit/df6907aca9
2023-05-28[ruby/io-nonblock] Remove usage of IO internals.Samuel Williams
(https://github.com/ruby/io-nonblock/pull/11) https://github.com/ruby/io-nonblock/commit/caa2b94d19
2023-05-28[ruby/io-nonblock] Revert "Remove usage of IO internals."Samuel Williams
This reverts commit https://github.com/ruby/io-nonblock/commit/9772b6dcb63c. https://github.com/ruby/io-nonblock/commit/08cabf78e1
2023-05-28[ruby/io-nonblock] Remove usage of IO internals.Samuel Williams
https://github.com/ruby/io-nonblock/commit/9772b6dcb6
2023-05-28[ruby/io-wait] Remove usage of IO internals.Samuel Williams
(https://github.com/ruby/io-wait/pull/25) https://github.com/ruby/io-wait/commit/e5854b46c7