summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-12-18Allow use of DelegateClass in ractorLuke Gruber
Use `eval` instead of `define_method` when defining delegate methods for `DelegateClass`.
2025-12-18[ruby/delegate] Reapply "Merge pull request #46 from byroot/use-forward-send"Hiroshi SHIBATA
This reverts commit https://github.com/ruby/delegate/commit/fc2bd0498af0. https://github.com/ruby/delegate/commit/7d5c1e0842 Co-authored-by: Jean Boussier <byroot@ruby-lang.org>
2025-12-18[ruby/delegate] v0.5.0Hiroshi SHIBATA
https://github.com/ruby/delegate/commit/fa35b20eca
2025-12-18[ruby/delegate] Allow use of DelegateClass in ractorsLuke Gruber
Tempfile uses DelegateClass and Tempfile should be able to be used by different ractors. https://github.com/ruby/delegate/commit/cad194260b
2025-12-18RBOOL is unnecessary in C boolean contextNobuyoshi Nakada
Fix a `-Wint-in-bool-context` warning. ``` proc.c:688:33: warning: '?:' using integer constants in boolean context [-Wint-in-bool-context] 688 | if (RBOOL(get_local_variable_ptr(&env, idItImplicit, FALSE))) { ```
2025-12-18Bump github.com/microsoft/vcpkg from master to 2025.12.12dependabot[bot]
Bumps [github.com/microsoft/vcpkg](https://github.com/microsoft/vcpkg) from master to 2025.12.12. This release includes the previously tagged commit. - [Release notes](https://github.com/microsoft/vcpkg/releases) - [Commits](https://github.com/microsoft/vcpkg/compare/74e6536215718009aae747d86d84b78376bf9e09...84bab45d415d22042bd0b9081aea57f362da3f35) --- updated-dependencies: - dependency-name: github.com/microsoft/vcpkg dependency-version: 2025.12.12 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
2025-12-17[DOC] Use Arrays in examples for Array#findÉtienne Barrié
2025-12-18[DOC] Fix documents of `rb_intern_str` and so onNobuyoshi Nakada
* `rb_intern_str`: the argument must be `T_STRING`, no conversion. * `rb_intern_str`, `rb_check_id`, `rb_to_id`, `rb_check_symbol`: raise `EncodingError` unless the "name" argument is a valid string in its encoding.
2025-12-18[DOC] Re-fill the paragraphNobuyoshi Nakada
2025-12-18[DOC] Fix double-word typos in commentsv4.0.0-preview3Augustin Gottlieb
Found via `grep` for repeated words. * set.c: Fix "or or" * include/ruby/internal/symbol.h: Fix "is is" * include/ruby/internal/ctype.h: Fix "in in"
2025-12-17JITs: Pass down GNU make jobserver resources when appropriateAlan Wu
To fix warnings from rustc on e.g. Make 4.3, which is in Ubuntu 24.04: > warning: failed to connect to jobserver from environment variable
2025-12-17Adjust Set documentation (#15547)Victor Shepelev
2025-12-17Fix heap dump with ractor barrierLuke Gruber
When a ractor was being initialized and it would join the heap dump barrier when allocating its queue or its ports, the heap dump code calls `rb_obj_memsize` on the ractor and this function assumed `ports` was never NULL. We need to check for the NULL case in case the ractor is still being initialized. Hopefully other T_DATA objects don't suffer from the same issue, otherwise we could revert the ractor barrier during heap dump or not use `rb_obj_memsize` on T_DATA during the heap dump.
2025-12-17[DOC] Small changes to docs for ObjectSpace#each_object (#15564)Luke Gruber
Change example to use user-defined class instead of `Numeric`.
2025-12-17test_sync_default_gems.rb: Omit if git is v2.43 or olderTakashi Kokubun
2025-12-17test_commit_email.rb: Ensure #teardown doesn't failTakashi Kokubun
if test is omitted. Follow up c4e090def134f9b109991b74c027648564963763
2025-12-17Update bundled gems list as of 2025-12-17git
2025-12-18Update bundled bigdecimal and rbs (#15611)tomoya ishida
* Bundle rbs-3.10.0.pre.1 * Update rbs gem entry with commit hash Updated rbs entry to include commit hash. * Fix rbs entry in bundled_gems * Update rbs gem to version 3.10.0.pre.2 Updated rbs gem version from 3.10.0.pre.1 to 3.10.0.pre.2. * Update bundled bigdecimal to v4.0.1 --------- Co-authored-by: Soutaro Matsumoto <matsumoto@soutaro.com>
2025-12-17ObjectSpace.{dump,dump_all,dump_shapes} needs vm barrier. (#15569)Luke Gruber
This allows these methods to be called from ractors. Add new exported function `rb_vm_lock_with_barrier()` that requires users to include "vm_sync.h"
2025-12-17Improve NEWS.md for Socket (#15610)Misaki Shioi
2025-12-17[ruby/error_highlight] Show no message when failing to get caller/callee ↵Yusuke Endoh
snippets Even with Ruby 4.0, snippets is not always available, such as in irb by default. It would be better to just say nothing than to show a confusing message. https://github.com/ruby/error_highlight/commit/ef80ce73a1
2025-12-17Revert the default size of Enumerator::Producer to infinityAkinori Musha
[Bug #21780]
2025-12-17Update NEWS.md for Socket (#15608)Misaki Shioi
2025-12-17CI: Assume all C source files are UTF-8 nowNobuyoshi Nakada
2025-12-17win32: Set the source code charset to UTF-8Nobuyoshi Nakada
2025-12-17Rename to `struct rbimpl_size_overflow_tag`Nobuyoshi Nakada
This struct is used for addition not only for multiplication, so remove the word `mul`, and make the member names more descriptive.
2025-12-17Revert the override of Enumerator#to_set that performed size checksAkinori Musha
[Bug #21780]
2025-12-17Add host information to timeout error messages in `TCPSocket.new` and ↵Misaki Shioi
`Socket.tcp` (#15582) This change adds host information to the error messages shown when a timeout occurs while passing timeout options to `TCPSocket.new` or `Socket.tcp`, for improved usability. (When the `fast_fallback option` is enabled, there may be multiple possible destinations, so the host name is shown instead of an IP address.) As part of this change, the error messages in `Addrinfo.getaddrinfo` and `Addrinfo#connect_internal`, both of which are used by `Socket.tcp`, have also been improved in the same way.
2025-12-17Update NEWS.md for improvements of error backtraceYusuke Endoh
2025-12-17Update default gems list at 26447b3597ab95af7cc220c641a1bd [ci skip]git
2025-12-17[ruby/net-http] v0.9.1Hiroshi SHIBATA
https://github.com/ruby/net-http/commit/8cee86e939
2025-12-17[ruby/net-http] Freeze more constants for Ractor compatibilityKazuki Yamaguchi
Freeze Net::HTTP::SSL_ATTRIBUTES and IDEMPOTENT_METHODS_. Both constants have been marked as :nodoc:. Together with https://github.com/ruby/openssl/issues/521, this enables HTTPS clients in non-main Ractors on Ruby 4.0. https://github.com/ruby/net-http/commit/f24b3b358b
2025-12-17[ruby/net-http] v0.9.0Hiroshi SHIBATA
https://github.com/ruby/net-http/commit/3ccf0c8e6a
2025-12-17Bundle strscan-3.1.6Hiroshi SHIBATA
2025-12-17Bundle stringio-3.2.0Hiroshi SHIBATA
2025-12-17[ruby/timeout] v0.6.0Hiroshi SHIBATA
https://github.com/ruby/timeout/commit/ab79dfff47
2025-12-17[ruby/time] v0.4.2Hiroshi SHIBATA
https://github.com/ruby/time/commit/387292f5d2
2025-12-17[ruby/psych] v5.3.1Hiroshi SHIBATA
https://github.com/ruby/psych/commit/8345af9ffb
2025-12-17`Socket.tcp` and `TCPSocket.new` raises `IO::TiemoutError` with user ↵Misaki Shioi
specified timeout (#15602) * `Socket.tcp` and `TCPSocket.new` raises `IO::TiemoutError` with user specified timeout In https://github.com/ruby/ruby/pull/11880, `rsock_connect()` was changed to raise `IO::TimeoutError` when a user-specified timeout occurs. However, when `TCPSocket.new` attempts to connect to multiple destinations, it does not use `rsock_connect()`, and instead raises `Errno::ETIMEDOUT` on timeout. As a result, the exception class raised on timeout could differ depending on whether there were multiple destinations or not. To align this behavior with the implementation of `rsock_connect()`, this change makes `TCPSocket.new` raise `IO::TimeoutError` when a user-specified timeout occurs. Similarly, `Socket.tcp` is updated to raise `IO::TimeoutError` when a timeout occurs within the method. (Note that the existing behavior of `Addrinfo#connect_internal`, which Socket.tcp depends on internally and which raises `Errno::ETIMEDOUT` on timeout, is not changed.) * [ruby/net-http] Raise `Net::OpenTimeout` when `TCPSocket.open` raises `IO::TimeoutError`. With the changes in https://github.com/ruby/ruby/pull/15602, `TCPSocket.open` now raises `IO::TimeoutError` when a user-specified timeout occurs. This change updates #connect to handle this case accordingly. https://github.com/ruby/net-http/commit/f64109e1cf
2025-12-17Update default gems list at 0e2962f917db1b20a6d34b6105b376 [ci skip]git
2025-12-17[ruby/io-wait] bump up to 0.4.0Nobuyoshi Nakada
https://github.com/ruby/io-wait/commit/ae676c9d6d
2025-12-17refactor: utilize a predefined macroYusuke Endoh
2025-12-17IO::Buffer: Warn as experimental at allocationNobuyoshi Nakada
Previously, warned only in `new` and `map`, but not `for` and `string`.
2025-12-17[Bug #21787] IO::Buffer: Check addition overflowsNobuyoshi Nakada
https://hackerone.com/reports/3437743
2025-12-17IO::Buffer: Guard arguments from GCNobuyoshi Nakada
At least, `string` in `io_buffer_set_string` can be different from `argv[0]` after `rb_str_to_str` call. The other cases may not be necessary.
2025-12-17IO::Buffer: Fill the test for `IO::Buffer#clear`Nobuyoshi Nakada
2025-12-17Update default gems list at 3b66efda523fc33070aee6097898db [ci skip]git
2025-12-17Bundle RubyGems 4.0.2 and Bundler 4.0.2Hiroshi SHIBATA
2025-12-17Disabled gem sync for Ruby 4.0 releaseHiroshi SHIBATA
2025-12-17Fix: Recalculate the timeout duration considering `open_timeout` (#15596)Misaki Shioi
This change updates the behavior so that, when there is only a single destination and `open_timeout` is specified, the remaining `open_timeout` duration is used as the connection timeout.