Skip to content

[pull] master from ruby:master#902

Merged
pull[bot] merged 21 commits intoturkdevops:masterfrom
ruby:master
Apr 1, 2026
Merged

[pull] master from ruby:master#902
pull[bot] merged 21 commits intoturkdevops:masterfrom
ruby:master

Conversation

@pull
Copy link
Copy Markdown

@pull pull bot commented Apr 1, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

55728 and others added 21 commits April 1, 2026 00:51
The curl requests to stdgems.org occasionally fail with connection
errors, causing spurious CI failures. Add curl's built-in retry
flags to handle transient network issues with exponential backoff.

example:
https://github.com/ruby/ruby/actions/runs/23825769292/job/69448266927
Bumps the github-actions group with 1 update in the / directory: [taiki-e/install-action](https://github.com/taiki-e/install-action).


Updates `taiki-e/install-action` from 2.70.3 to 2.70.4
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](taiki-e/install-action@6ef672e...bfadeab)

---
updated-dependencies:
- dependency-name: taiki-e/install-action
  dependency-version: 2.70.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
This function prevents other users from opening this device for
writing so not to be sent messages using commands such as `talk` or
`wall`.
…tions

ruby/rubygems@7ebc1abafd

Co-authored-by: hsbt <12301+hsbt@users.noreply.github.com>
…p after use

ruby/rubygems@498401c010

Co-authored-by: hsbt <12301+hsbt@users.noreply.github.com>
…tform and host

The send_push_request method previously skipped all attestation handling
on JRuby, non-rubygems.org hosts, or outside GitHub Actions. This meant
that even when a user explicitly passed --attestation with a local
sigstore bundle, the attestation was silently ignored. Now we check
options[:attestations] first and always use them when provided, only
gating the auto-attestation path behind the platform/host/CI checks.

ruby/rubygems@0178a0dc56

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… verbose

When auto-attestation fails, the warning previously included
e.full_message with a full backtrace that could be noisy and expose
local paths. Now only e.message is shown by default, and the full
backtrace is included only when Gem.configuration.really_verbose is set.

ruby/rubygems@4a4d9b8911

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The method compared against a hardcoded string, so a trailing slash
(e.g. "https://rubygems.org/") would cause auto-attestation to be
silently skipped. Now we chomp the trailing slash and compare against
Gem::DEFAULT_HOST to be consistent with the rest of the codebase.

ruby/rubygems@a4fa24c8cf

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…of pinning version

Hardcoding sigstore-cli:0.2.2 meant rubygems would need a new release
whenever sigstore-cli ships a new version. Using --conservative lets
gem exec prefer an already-installed version and falls back to the
latest when sigstore-cli is not yet installed.

ruby/rubygems@6ac00f34de

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
[Bug #21818]

Currently exceptions can be sent across ractors,
but because of a limitation in the TypedData API,
the exception backtrace is duped as an empty backtrace.

The problem is that backtraces are embedded objects,
hence the classic `rb_class_alloc(klass)` API is insufficient
because we need to know the size of the Backtrace object we're
duping to instantiate the copy.

This is worked around by changing Ractors to call `#clone` on objects
rather than use `rb_obj_clone`, and to implement `Thread::Backtrace#clone`
to properly clone the variable size object.
I've been seeing this for a while now:
```
../../../../ext/prism/../../src/memchr.c: In function ‘pm_memchr’:
../../../../ext/prism/../../src/memchr.c:35:16: warning: return discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
   35 |         return memchr(memory, character, number);
      |                ^~~~~~
```

ruby/prism@a3b1f10dbc
- Avoid unnecessarily binding sender sockets, as ephemeral ports can
  very occasionally conflict on Linux.  This investigation is assisted
  by Claude Code.
- Compare timestamps using a range instead of relying on `inspect`.
- Use the `timestamp_retry_rw` helper in `test_bintime` as well.
- Use `String#unpack1` with offset to extract the timestamp data.

Co-authored-by: Koichi Sasada <ko1@atdot.net>
@pull pull bot locked and limited conversation to collaborators Apr 1, 2026
@pull pull bot added the ⤵️ pull label Apr 1, 2026
@pull pull bot merged commit 9224d90 into turkdevops:master Apr 1, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants